1. 31 Aug, 2023 16 commits
    • Ingo Molnar's avatar
      powerpc: Fix pud_mkwrite() definition after pte_mkwrite() API changes · f441ff73
      Ingo Molnar authored
      Fix up missed semantic mis-merge between commits
      
        161e393c ("mm: Make pte_mkwrite() take a VMA")
        27af67f3 ("powerpc/book3s64/mm: enable transparent pud hugepage")
      
      where the newly introduced powerpc use of 'pte_mkwrite()' needs to use
      the 'novma()' versions as per commit 2f0584f3 ("mm: Rename arch
      pte_mkwrite()'s to pte_mkwrite_novma()").
      
      Fixes: df57721f ("Merge tag 'x86_shstk_for_6.6-rc1' of [...]")
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f441ff73
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 87dfd85c
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - Refactor VFP code and convert to C code (Ard Biesheuvel)
      
       - Fix hardware breakpoint single-stepping using bpf_overflow_handler
      
       - Make SMP stop calls asynchronous allowing panic from irq context to
         work
      
       - Fix for kernel-doc warnings for locomo
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        Revert part of ae1f8d79 ("ARM: 9304/1: add prototype for function called only from asm")
        ARM: 9318/1: locomo: move kernel-doc to prevent warnings
        ARM: 9317/1: kexec: Make smp stop calls asynchronous
        ARM: 9316/1: hw_breakpoint: fix single-stepping when using bpf_overflow_handler
        ARM: entry: Make asm coproc dispatch code NWFPE only
        ARM: iwmmxt: Use undef hook to enable coprocessor for task
        ARM: entry: Disregard Thumb undef exception in coproc dispatch
        ARM: vfp: Use undef hook for handling VFP exceptions
        ARM: kernel: Get rid of thread_info::used_cp[] array
        ARM: vfp: Reimplement VFP exception entry in C code
        ARM: vfp: Remove workaround for Feroceon CPUs
        ARM: vfp: Record VFP bounces as perf emulation faults
      87dfd85c
    • Linus Torvalds's avatar
      Merge tag 'powerpc-6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 4ad0a4c2
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
      
       - Add HOTPLUG_SMT support (/sys/devices/system/cpu/smt) and honour the
         configured SMT state when hotplugging CPUs into the system
      
       - Combine final TLB flush and lazy TLB mm shootdown IPIs when using the
         Radix MMU to avoid a broadcast TLBIE flush on exit
      
       - Drop the exclusion between ptrace/perf watchpoints, and drop the now
         unused associated arch hooks
      
       - Add support for the "nohlt" command line option to disable CPU idle
      
       - Add support for -fpatchable-function-entry for ftrace, with GCC >=
         13.1
      
       - Rework memory block size determination, and support 256MB size on
         systems with GPUs that have hotpluggable memory
      
       - Various other small features and fixes
      
      Thanks to Andrew Donnellan, Aneesh Kumar K.V, Arnd Bergmann, Athira
      Rajeev, Benjamin Gray, Christophe Leroy, Frederic Barrat, Gautam
      Menghani, Geoff Levand, Hari Bathini, Immad Mir, Jialin Zhang, Joel
      Stanley, Jordan Niethe, Justin Stitt, Kajol Jain, Kees Cook, Krzysztof
      Kozlowski, Laurent Dufour, Liang He, Linus Walleij, Mahesh Salgaonkar,
      Masahiro Yamada, Michal Suchanek, Nageswara R Sastry, Nathan Chancellor,
      Nathan Lynch, Naveen N Rao, Nicholas Piggin, Nick Desaulniers, Omar
      Sandoval, Randy Dunlap, Reza Arbab, Rob Herring, Russell Currey, Sourabh
      Jain, Thomas Gleixner, Trevor Woerner, Uwe Kleine-König, Vaibhav Jain,
      Xiongfeng Wang, Yuan Tan, Zhang Rui, and Zheng Zengkai.
      
      * tag 'powerpc-6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (135 commits)
        macintosh/ams: linux/platform_device.h is needed
        powerpc/xmon: Reapply "Relax frame size for clang"
        powerpc/mm/book3s64: Use 256M as the upper limit with coherent device memory attached
        powerpc/mm/book3s64: Fix build error with SPARSEMEM disabled
        powerpc/iommu: Fix notifiers being shared by PCI and VIO buses
        powerpc/mpc5xxx: Add missing fwnode_handle_put()
        powerpc/config: Disable SLAB_DEBUG_ON in skiroot
        powerpc/pseries: Remove unused hcall tracing instruction
        powerpc/pseries: Fix hcall tracepoints with JUMP_LABEL=n
        powerpc: dts: add missing space before {
        powerpc/eeh: Use pci_dev_id() to simplify the code
        powerpc/64s: Move CPU -mtune options into Kconfig
        powerpc/powermac: Fix unused function warning
        powerpc/pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT
        powerpc: Don't include lppaca.h in paca.h
        powerpc/pseries: Move hcall_vphn() prototype into vphn.h
        powerpc/pseries: Move VPHN constants into vphn.h
        cxl: Drop unused detach_spa()
        powerpc: Drop zalloc_maybe_bootmem()
        powerpc/powernv: Use struct opal_prd_msg in more places
        ...
      4ad0a4c2
    • Linus Torvalds's avatar
      Merge tag 'x86_shstk_for_6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · df57721f
      Linus Torvalds authored
      Pull x86 shadow stack support from Dave Hansen:
       "This is the long awaited x86 shadow stack support, part of Intel's
        Control-flow Enforcement Technology (CET).
      
        CET consists of two related security features: shadow stacks and
        indirect branch tracking. This series implements just the shadow stack
        part of this feature, and just for userspace.
      
        The main use case for shadow stack is providing protection against
        return oriented programming attacks. It works by maintaining a
        secondary (shadow) stack using a special memory type that has
        protections against modification. When executing a CALL instruction,
        the processor pushes the return address to both the normal stack and
        to the special permission shadow stack. Upon RET, the processor pops
        the shadow stack copy and compares it to the normal stack copy.
      
        For more information, refer to the links below for the earlier
        versions of this patch set"
      
      Link: https://lore.kernel.org/lkml/20220130211838.8382-1-rick.p.edgecombe@intel.com/
      Link: https://lore.kernel.org/lkml/20230613001108.3040476-1-rick.p.edgecombe@intel.com/
      
      * tag 'x86_shstk_for_6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (47 commits)
        x86/shstk: Change order of __user in type
        x86/ibt: Convert IBT selftest to asm
        x86/shstk: Don't retry vm_munmap() on -EINTR
        x86/kbuild: Fix Documentation/ reference
        x86/shstk: Move arch detail comment out of core mm
        x86/shstk: Add ARCH_SHSTK_STATUS
        x86/shstk: Add ARCH_SHSTK_UNLOCK
        x86: Add PTRACE interface for shadow stack
        selftests/x86: Add shadow stack test
        x86/cpufeatures: Enable CET CR4 bit for shadow stack
        x86/shstk: Wire in shadow stack interface
        x86: Expose thread features in /proc/$PID/status
        x86/shstk: Support WRSS for userspace
        x86/shstk: Introduce map_shadow_stack syscall
        x86/shstk: Check that signal frame is shadow stack mem
        x86/shstk: Check that SSP is aligned on sigreturn
        x86/shstk: Handle signals for shadow stack
        x86/shstk: Introduce routines modifying shstk
        x86/shstk: Handle thread shadow stack
        x86/shstk: Add user-mode shadow stack support
        ...
      df57721f
    • Randy Dunlap's avatar
      macintosh/ams: linux/platform_device.h is needed · 85a61641
      Randy Dunlap authored
      ams.h uses struct platform_device, so the header should be used
      to prevent build errors:
      
      drivers/macintosh/ams/ams-input.c: In function 'ams_input_enable':
      drivers/macintosh/ams/ams-input.c:68:45: error: invalid use of undefined type 'struct platform_device'
         68 |         input->dev.parent = &ams_info.of_dev->dev;
      drivers/macintosh/ams/ams-input.c: In function 'ams_input_init':
      drivers/macintosh/ams/ams-input.c:146:51: error: invalid use of undefined type 'struct platform_device'
        146 |         return device_create_file(&ams_info.of_dev->dev, &dev_attr_joystick);
      drivers/macintosh/ams/ams-input.c: In function 'ams_input_exit':
      drivers/macintosh/ams/ams-input.c:151:44: error: invalid use of undefined type 'struct platform_device'
        151 |         device_remove_file(&ams_info.of_dev->dev, &dev_attr_joystick);
      drivers/macintosh/ams/ams-input.c: In function 'ams_input_init':
      drivers/macintosh/ams/ams-input.c:147:1: error: control reaches end of non-void function [-Werror=return-type]
        147 | }
      
      Fixes: 233d687d ("macintosh: Explicitly include correct DT includes")
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      Link: https://msgid.link/20230829225837.15520-1-rdunlap@infradead.org
      85a61641
    • Linus Torvalds's avatar
      Merge tag '6.6-rc-smb3-client-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6 · b97d64c7
      Linus Torvalds authored
      Pull smb client updates from Steve French:
      
       - fixes for excessive stack usage
      
       - multichannel reconnect improvements
      
       - DFS fix and cleanup patches
      
       - move UCS-2 conversion code to fs/nls and update cifs and jfs to use
         them
      
       - cleanup patch for compounding, one to fix confusing function name
      
       - inode number collision fix
      
       - reparse point fixes (including avoiding an extra unneeded query on
         symlinks) and a minor cleanup
      
       - directory lease (caching) improvement
      
      * tag '6.6-rc-smb3-client-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6: (24 commits)
        fs/jfs: Use common ucs2 upper case table
        fs/smb/client: Use common code in client
        fs/smb: Swing unicode common code from smb->NLS
        fs/smb: Remove unicode 'lower' tables
        SMB3: rename macro CIFS_SERVER_IS_CHAN to avoid confusion
        [SMB3] send channel sequence number in SMB3 requests after reconnects
        cifs: update desired access while requesting for directory lease
        smb: client: reduce stack usage in smb2_query_reparse_point()
        smb: client: reduce stack usage in smb2_query_info_compound()
        smb: client: reduce stack usage in smb2_set_ea()
        smb: client: reduce stack usage in smb_send_rqst()
        smb: client: reduce stack usage in cifs_demultiplex_thread()
        smb: client: reduce stack usage in cifs_try_adding_channels()
        smb: cilent: set reparse mount points as automounts
        smb: client: query reparse points in older dialects
        smb: client: do not query reparse points twice on symlinks
        smb: client: parse reparse point flag in create response
        smb: client: get rid of dfs code dep in namespace.c
        smb: client: get rid of dfs naming in automount code
        smb: client: rename cifs_dfs_ref.c to namespace.c
        ...
      b97d64c7
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 47d154eb
      Linus Torvalds authored
      Pull nvdimm updates from Dave Jiang:
       "This is mostly small cleanups, fixes, and with a change to prevent
        zero-sized namespace exposed to user for nvdimm.
      
        Summary:
      
         - kstrtobool() conversion for nvdimm
      
         - Add REQ_OP_WRITE for virtio_pmem
      
         - Header files update for of_pmem
      
         - Restrict zero-sized namespace from being exposed to user
      
         - Avoid unnecessary endian conversion
      
         - Fix mem leak in nvdimm pmu
      
         - Fix dereference after free in nvdimm pmu"
      
      * tag 'libnvdimm-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        nvdimm: Fix dereference after free in register_nvdimm_pmu()
        nvdimm: Fix memleak of pmu attr_groups in unregister_nvdimm_pmu()
        nvdimm/pfn_dev: Avoid unnecessary endian conversion
        nvdimm/pfn_dev: Prevent the creation of zero-sized namespaces
        nvdimm: Explicitly include correct DT includes
        virtio_pmem: add the missing REQ_OP_WRITE for flush bio
        nvdimm: Use kstrtobool() instead of strtobool()
      47d154eb
    • Linus Torvalds's avatar
      Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd · 4debf771
      Linus Torvalds authored
      Pull iommufd updates from Jason Gunthorpe:
       "On top of the vfio updates is built some new iommufd functionality:
      
         - IOMMU_HWPT_ALLOC allows userspace to directly create the low level
           IO Page table objects and affiliate them with IOAS objects that
           hold the translation mapping. This is the basic functionality for
           the normal IOMMU_DOMAIN_PAGING domains.
      
         - VFIO_DEVICE_ATTACH_IOMMUFD_PT can be used to replace the current
           translation. This is wired up to through all the layers down to the
           driver so the driver has the ability to implement a hitless
           replacement. This is necessary to fully support guest behaviors
           when emulating HW (eg guest atomic change of translation)
      
         - IOMMU_GET_HW_INFO returns information about the IOMMU driver HW
           that owns a VFIO device. This includes support for the Intel iommu,
           and patches have been posted for all the other server IOMMU.
      
        Along the way are a number of internal items:
      
         - New iommufd kernel APIs: iommufd_ctx_has_group(),
              iommufd_device_to_ictx(), iommufd_device_to_id(),
              iommufd_access_detach(), iommufd_ctx_from_fd(),
              iommufd_device_replace()
      
         - iommufd now internally tracks iommu_groups as it needs some
           per-group data
      
         - Reorganize how the internal hwpt allocation flows to have more
           robust locking
      
         - Improve the access interfaces to support detach and replace of an
           IOAS from an access
      
         - New selftests and a rework of how the selftests creates a mock
           iommu driver to be more like a real iommu driver"
      
      Link: https://lore.kernel.org/lkml/ZO%2FTe6LU1ENf58ZW@nvidia.com/
      
      * tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd: (34 commits)
        iommufd/selftest: Don't leak the platform device memory when unloading the module
        iommu/vt-d: Implement hw_info for iommu capability query
        iommufd/selftest: Add coverage for IOMMU_GET_HW_INFO ioctl
        iommufd: Add IOMMU_GET_HW_INFO
        iommu: Add new iommu op to get iommu hardware information
        iommu: Move dev_iommu_ops() to private header
        iommufd: Remove iommufd_ref_to_users()
        iommufd/selftest: Make the mock iommu driver into a real driver
        vfio: Support IO page table replacement
        iommufd/selftest: Add IOMMU_TEST_OP_ACCESS_REPLACE_IOAS coverage
        iommufd: Add iommufd_access_replace() API
        iommufd: Use iommufd_access_change_ioas in iommufd_access_destroy_object
        iommufd: Add iommufd_access_change_ioas(_id) helpers
        iommufd: Allow passing in iopt_access_list_id to iopt_remove_access()
        vfio: Do not allow !ops->dma_unmap in vfio_pin/unpin_pages()
        iommufd/selftest: Add a selftest for IOMMU_HWPT_ALLOC
        iommufd/selftest: Return the real idev id from selftest mock_domain
        iommufd: Add IOMMU_HWPT_ALLOC
        iommufd/selftest: Test iommufd_device_replace()
        iommufd: Make destroy_rwsem use a lock class per object type
        ...
      4debf771
    • Linus Torvalds's avatar
      Merge tag 'vfio-v6.6-rc1' of https://github.com/awilliam/linux-vfio · ec0e2dc8
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - VFIO direct character device (cdev) interface support. This extracts
         the vfio device fd from the container and group model, and is
         intended to be the native uAPI for use with IOMMUFD (Yi Liu)
      
       - Enhancements to the PCI hot reset interface in support of cdev usage
         (Yi Liu)
      
       - Fix a potential race between registering and unregistering vfio files
         in the kvm-vfio interface and extend use of a lock to avoid extra
         drop and acquires (Dmitry Torokhov)
      
       - A new vfio-pci variant driver for the AMD/Pensando Distributed
         Services Card (PDS) Ethernet device, supporting live migration (Brett
         Creeley)
      
       - Cleanups to remove redundant owner setup in cdx and fsl bus drivers,
         and simplify driver init/exit in fsl code (Li Zetao)
      
       - Fix uninitialized hole in data structure and pad capability
         structures for alignment (Stefan Hajnoczi)
      
      * tag 'vfio-v6.6-rc1' of https://github.com/awilliam/linux-vfio: (53 commits)
        vfio/pds: Send type for SUSPEND_STATUS command
        vfio/pds: fix return value in pds_vfio_get_lm_file()
        pds_core: Fix function header descriptions
        vfio: align capability structures
        vfio/type1: fix cap_migration information leak
        vfio/fsl-mc: Use module_fsl_mc_driver macro to simplify the code
        vfio/cdx: Remove redundant initialization owner in vfio_cdx_driver
        vfio/pds: Add Kconfig and documentation
        vfio/pds: Add support for firmware recovery
        vfio/pds: Add support for dirty page tracking
        vfio/pds: Add VFIO live migration support
        vfio/pds: register with the pds_core PF
        pds_core: Require callers of register/unregister to pass PF drvdata
        vfio/pds: Initial support for pds VFIO driver
        vfio: Commonize combine_ranges for use in other VFIO drivers
        kvm/vfio: avoid bouncing the mutex when adding and deleting groups
        kvm/vfio: ensure kvg instance stays around in kvm_vfio_group_add()
        docs: vfio: Add vfio device cdev description
        vfio: Compile vfio_group infrastructure optionally
        vfio: Move the IOMMU_CAP_CACHE_COHERENCY check in __vfio_register_dev()
        ...
      ec0e2dc8
    • Linus Torvalds's avatar
      Merge tag 'pci-v6.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci · b6f6167e
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
       "Enumeration:
         - Add locking to read/modify/write PCIe Capability Register accessors
           for Link Control and Root Control
         - Use pci_dev_id() when possible instead of manually composing ID
           from dev->bus->number and dev->devfn
      
        Resource management:
         - Move prototypes for __weak sysfs resource files to linux/pci.h to
           fix 'no previous prototype' warnings
         - Make more I/O port accesses depend on HAS_IOPORT
         - Use devm_platform_get_and_ioremap_resource() instead of open-coding
           platform_get_resource() followed by devm_ioremap_resource()
      
        Power management:
         - Ensure devices are powered up while accessing VPD
         - If device is powered-up, keep it that way while polling for PME
         - Only read PCI_PM_CTRL register when available, to avoid reading the
           wrong register and corrupting dev->current_state
      
        Virtualization:
         - Avoid Secondary Bus Reset on NVIDIA T4 GPUs
      
        Error handling:
         - Remove unused pci_disable_pcie_error_reporting()
         - Unexport pci_enable_pcie_error_reporting(), used only by aer.c
         - Unexport pcie_port_bus_type, used only by PCI core
      
        VGA:
         - Simplify and clean up typos in VGA arbiter
      
        Apple PCIe controller driver:
         - Initialize pcie->nvecs (number of available MSIs) before use
      
        Broadcom iProc PCIe controller driver:
         - Use of_property_read_bool() instead of low-level accessors for
           boolean properties
      
        Broadcom STB PCIe controller driver:
         - Assert PERST# when probing BCM2711 because some bootloaders don't
           do it
      
        Freescale i.MX6 PCIe controller driver:
         - Add .host_deinit() callback so we can clean up things like
           regulators on probe failure or driver unload
      
        Freescale Layerscape PCIe controller driver:
         - Add support for link-down notification so the endpoint driver can
           process LINK_DOWN events
         - Add suspend/resume support, including manual
           PME_Turn_off/PME_TO_Ack handshake
         - Save Link Capabilities during probe so they can be restored when
           handling a link-up event, since the controller loses the Link Width
           and Link Speed values during reset
      
        Intel VMD host bridge driver:
         - Fix disable of bridge windows during domain reset; previously we
           cleared the base/limit registers, which actually left the windows
           enabled
      
        Marvell MVEBU PCIe controller driver:
         - Remove unused busn member
      
        Microchip PolarFlare PCIe controller driver:
         - Fix interrupt bit definitions so the SEC and DED interrupt handlers
           work correctly
         - Make driver buildable as a module
         - Read FPGA MSI configuration parameters from hardware instead of
           hard-coding them
      
        Microsoft Hyper-V host bridge driver:
         - To avoid a NULL pointer dereference, skip MSI restore after
           hibernate if MSI/MSI-X hasn't been enabled
      
        NVIDIA Tegra194 PCIe controller driver:
         - Revert 'PCI: tegra194: Enable support for 256 Byte payload' because
           Linux doesn't know how to reduce MPS from to 256 to 128 bytes for
           endpoints below a switch (because other devices below the switch
           might already be operating), which leads to 'Malformed TLP' errors
      
        Qualcomm PCIe controller driver:
         - Add DT and driver support for interconnect bandwidth voting for
           'pcie-mem' and 'cpu-pcie' interconnects
         - Fix broken SDX65 'compatible' DT property
         - Configure controller so MHI bus master clock will be switched off
           while in ASPM L1.x states
         - Use alignment restriction from EPF core in EPF MHI driver
         - Add Endpoint eDMA support
         - Add MHI eDMA support
         - Add Snapdragon SM8450 support to the EPF MHI driversupport
         - Add MHI eDMA support
         - Add Snapdragon SM8450 support to the EPF MHI driversupport
         - Add MHI eDMA support
         - Add Snapdragon SM8450 support to the EPF MHI driversupport
         - Add MHI eDMA support
         - Add Snapdragon SM8450 support to the EPF MHI driver
         - Use iATU for EPF MHI transfers smaller than 4K to avoid eDMA setup
           latency
         - Add sa8775p DT binding and driver support
      
        Rockchip PCIe controller driver:
         - Use 64-bit mask on MSI 64-bit PCI address to avoid zeroing out the
           upper 32 bits
      
        SiFive FU740 PCIe controller driver:
         - Set the supported number of MSI vectors so we can use all available
           MSI interrupts
      
        Synopsys DesignWare PCIe controller driver:
         - Add generic dwc suspend/resume APIs (dw_pcie_suspend_noirq() and
           dw_pcie_resume_noirq()) to be called by controller driver
           suspend/resume ops, and a controller callback to send PME_Turn_Off
      
        MicroSemi Switchtec management driver:
         - Add support for PCIe Gen5 devices
      
        Miscellaneous:
         - Reorder and compress to reduce size of struct pci_dev
         - Fix race in DOE destroy_work_on_stack()
         - Add stubs to avoid casts between incompatible function types
         - Explicitly include correct DT includes to untangle headers"
      
      * tag 'pci-v6.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci: (96 commits)
        PCI: qcom-ep: Add ICC bandwidth voting support
        dt-bindings: PCI: qcom: ep: Add interconnects path
        PCI: qcom-ep: Treat unknown IRQ events as an error
        dt-bindings: PCI: qcom: Fix SDX65 compatible
        PCI: endpoint: Add kernel-doc for pci_epc_mem_init() API
        PCI: epf-mhi: Use iATU for small transfers
        PCI: epf-mhi: Add support for SM8450
        PCI: epf-mhi: Add eDMA support
        PCI: qcom-ep: Add eDMA support
        PCI: epf-mhi: Make use of the alignment restriction from EPF core
        PCI/PM: Only read PCI_PM_CTRL register when available
        PCI: qcom: Add support for sa8775p SoC
        dt-bindings: PCI: qcom: Add sa8775p compatible
        PCI: qcom-ep: Pass alignment restriction to the EPF core
        PCI: Simplify pcie_capability_clear_and_set_word() control flow
        PCI: Tidy config space save/restore messages
        PCI: Fix code formatting inconsistencies
        PCI: Fix typos in docs and comments
        PCI: Fix pci_bus_resetable(), pci_slot_resetable() name typos
        PCI: Simplify pci_dev_driver()
        ...
      b6f6167e
    • Linus Torvalds's avatar
      Merge tag 'docs-6.6' of git://git.lwn.net/linux · cd99b9eb
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "Documentation work keeps chugging along; this includes:
      
         - Work from Carlos Bilbao to integrate rustdoc output into the
           generated HTML documentation. This took some work to figure out how
           to do it without slowing the docs build and without creating people
           who don't have Rust installed, but Carlos got there
      
         - Move the loongarch and mips architecture documentation under
           Documentation/arch/
      
         - Some more maintainer documentation from Jakub
      
        ... plus the usual assortment of updates, translations, and fixes"
      
      * tag 'docs-6.6' of git://git.lwn.net/linux: (56 commits)
        Docu: genericirq.rst: fix irq-example
        input: docs: pxrc: remove reference to phoenix-sim
        Documentation: serial-console: Fix literal block marker
        docs/mm: remove references to hmm_mirror ops and clean typos
        docs/zh_CN: correct regi_chg(),regi_add() to region_chg(),region_add()
        Documentation: Fix typos
        Documentation/ABI: Fix typos
        scripts: kernel-doc: fix macro handling in enums
        scripts: kernel-doc: parse DEFINE_DMA_UNMAP_[ADDR|LEN]
        Documentation: riscv: Update boot image header since EFI stub is supported
        Documentation: riscv: Add early boot document
        Documentation: arm: Add bootargs to the table of added DT parameters
        docs: kernel-parameters: Refer to the correct bitmap function
        doc: update params of memhp_default_state=
        docs: Add book to process/kernel-docs.rst
        docs: sparse: fix invalid link addresses
        docs: vfs: clean up after the iterate() removal
        docs: Add a section on surveys to the researcher guidelines
        docs: move mips under arch
        docs: move loongarch under arch
        ...
      cd99b9eb
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · f8fd5c24
      Linus Torvalds authored
      Pull clk subsystem updates from Stephen Boyd:
       "This pull request is full of clk driver changes. In fact, there aren't
        any changes to the clk framework this time around. That's probably
        because everyone was on vacation (yours truly included). We did lose a
        couple clk drivers this time around because nobody was using those
        devices. That skews the diffstat a bit, but either way, nothing looks
        out of the ordinary here. The usual suspects are chugging along adding
        support for more SoCs and fixing bugs.
      
        If I had to choose, I'd say the theme for the past few months has been
        "polish". There's quite a few patches that migrate to
        devm_platform_ioremap_resource() in here. And there's more than a
        handful of patches that move the NR_CLKS define from the DT binding
        header to the driver. There's even patches that migrate drivers to use
        clk_parent_data and clk_hw to describe clk tree topology. It seems
        that the spring (summer?) cleaning bug got some folks, or the
        semiconductor shortage finally hit the software side.
      
        New Drivers:
         - StarFive JH7110 SoC clock drivers
         - Qualcomm IPQ5018 Global Clock Controller driver
         - Versa3 clk generator to support 48KHz playback/record with audio
           codec on RZ/G2L SMARC EVK
      
        Removed Drivers:
         - Remove non-OF mmp clk drivers
         - Remove OXNAS clk driver
      
        Updates:
         - Add __counted_by to struct clk_hw_onecell_data and struct
           spmi_pmic_div_clk_cc
         - Move defines for numbers of clks (NR_CLKS) from DT headers to
           drivers
         - Introduce kstrdup_and_replace() and use it
         - Add PLL rates for Rockchip rk3568
         - Add the display clock tree for Rockchip rv1126
         - Add Audio Clock Generator (ADG) clocks on Renesas R-Car Gen3 and
           RZ/G2 SoCs
         - Convert sun9i-mmc clock to use
           devm_platform_get_and_ioremap_resource()
         - Fix function name in a comment in ccu_mmc_timing.c
         - Parameter name correction for ccu_nkm_round_rate()
         - Implement CLK_SET_RATE_PARENT for Allwinner NKM clocks, i.e.
           consider alternative parent rates when determining clock rates
         - Set CLK_SET_RATE_PARENT for Allwinner A64 pll-mipi
         - Support finding closest (as opposed to closest but not higher)
           clock rate for NM, NKM, mux and div type clocks, as use it for
           Allwinner A64 pll-video0
         - Prefer current parent rate if able to generate ideal clock rate for
           Allwinner NKM clocks
         - Clean up Qualcomm SMD RPM driver, with interconnect bus clocks
           moved out to the interconnect drivers
         - Fix various PM runtime bugs across many Qualcomm clk drivers
         - Migrate Qualcomm MDM9615 is to parent_hw and parent_data
         - Add network related resets on Qualcomm IPQ4019
         - Add a couple missing USB related clocks to Qualcomm IPQ9574
         - Add missing gpll0_sleep_clk_src to Qualcomm MSM8917 global clock
           controller
         - In the Qualcomm QDU1000 global clock controller, GDSCs, clkrefs,
           and GPLL1 are added, while PCIe pipe clock, SDCC rcg ops are
           corrected
         - Add missing GDSCs to and correct GDSCs for the SC8280XP global
           clock controller driver
         - Support retention for the Qualcomm SC8280XP display clock
           controller GDSCs.
         - Qualcommm's SDCC apps_clk_src is marked with CLK_OPS_PARENT_ENABLE
           to fix issues with missing parent clocks across sc7180, sm7150,
           sm6350 and sm8250, while sm8450 is corrected to use floor ops
         - Correct Qualcomm SM6350 GPU clock controller's clock supplies
         - Drop unwanted clocks from the Qualcomm IPQ5332 GCC driver
         - Add missing OXILICX GDSC to Qualcomm MSM8226 GCC
         - Change the delay in the Qualcomm reset controller to fsleep() for
           correctness
         - Extend the Qualcomm SM83550 Video clock controller to support
           SC8280XP
         - Add graphics clock support on Renesas RZ/G2M, RZ/G2N, RZ/G2E, and
           R-Car H3, M3-W, and M3-N SoCs
         - Add Clocked Serial Interface (CSI) clocks on Renesas RZ/V2M
         - Add PWM (MTU3) clock and reset on Renesas RZ/G2UL and RZ/Five
         - Add the PDM IPC clock for i.MX93
         - Add 519.75MHz frequency support for i.MX9 PLL
         - Simplify the .determine_rate() implementation for i.MX GPR mux
         - Make the i.MX8QXP LPCG clock use devm_platform_ioremap_resource()
         - Add the audio mux clock to i.MX8
         - Fix the SPLL2 MULT range for PLLv4
         - Update the SPLL2 type in i.MX8ULP
         - Fix the SAI4 clock on i.MX8MP
         - Add silicon revision print for i.MX25 on clocks init
         - Drop the return value from __mx25_clocks_init()
         - Fix the clock pauses on no-op set_rate for i.MX8M composite clock
         - Drop restrictions for i.MX PLL14xx and fix its max prediv value
         - Drop the 393216000 and 361267200 from i.MX PLL14xx rate table to
           allow glitch free switching"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (207 commits)
        clk: qcom: Fix SM_GPUCC_8450 dependencies
        clk: lmk04832: Support using PLL1_LD as SPI readback pin
        clk: lmk04832: Don't disable vco clock on probe fail
        clk: lmk04832: Set missing parent_names for output clocks
        clk: mvebu: Convert to devm_platform_ioremap_resource()
        clk: nuvoton: Convert to devm_platform_ioremap_resource()
        clk: socfpga: agilex: Convert to devm_platform_ioremap_resource()
        clk: ti: Use devm_platform_get_and_ioremap_resource()
        clk: mediatek: Convert to devm_platform_ioremap_resource()
        clk: hsdk-pll: Convert to devm_platform_ioremap_resource()
        clk: gemini: Convert to devm_platform_ioremap_resource()
        clk: fsl-sai: Convert to devm_platform_ioremap_resource()
        clk: bm1880: Convert to devm_platform_ioremap_resource()
        clk: axm5516: Convert to devm_platform_ioremap_resource()
        clk: actions: Convert to devm_platform_ioremap_resource()
        clk: cdce925: Remove redundant of_match_ptr()
        clk: pxa910: Move number of clocks to driver source
        clk: pxa1928: Move number of clocks to driver source
        clk: pxa168: Move number of clocks to driver source
        clk: mmp2: Move number of clocks to driver source
        ...
      f8fd5c24
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 4a3b1007
      Linus Torvalds authored
      Pull pin control updates from Linus Walleij:
       "We have some patches to DTS[I] files in arm and arm64 as well, that
        were merged here as DT headers were being changed.
      
        The most interesting stuff is the Intel Tangier chip support and
        AMLogic C3 in my opinion.
      
        No core changes this time.
      
        Drivers:
      
         - Intel Tangier SoC pin control support
      
         - AMLogic C3 SoC pin control support
      
         - Texas Instruments AM654 SoC pin control support
      
         - Qualcomm SM8350 and SM6115 LPASS (Low Power Audio Sub-System) pin
           control support
      
         - Qualcomm PMX75 and PM7550BA (Power Management) pin control support
      
         - Qualcomm PMC8180 and PMC8180C (Power Management) pin control
           support
      
         - DROP the Oxnas driver as there is not enough of community interest
           to keep carrying this ARM(11) port
      
        Enhancements:
      
         - Bias control in the MT7986 pin control driver
      
         - Misc device tree binding enhancements such as the Broadcom 11351
           being converted to YAML
      
         - New macro: DEFINE_NOIRQ_DEV_PM_OPS() put to use
      
         - Clean up some SPDX headers
      
         - Handle non-unique devicetree subnode names in two Renesas drivers"
      
      * tag 'pinctrl-v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (80 commits)
        pinctrl: mlxbf3: Remove gpio_disable_free()
        pinctrl: use capital "OR" for multiple licenses in SPDX
        dt-bindings: pinctrl: renesas,rza2: Use 'additionalProperties' for child nodes
        pinctrl: cherryview: fix address_space_handler() argument
        pinctrl: intel: consolidate ACPI dependency
        pinctrl: tegra: Switch to use DEFINE_NOIRQ_DEV_PM_OPS() helper
        pinctrl: renesas: Switch to use DEFINE_NOIRQ_DEV_PM_OPS() helper
        pinctrl: mvebu: Switch to use DEFINE_NOIRQ_DEV_PM_OPS() helper
        pinctrl: at91: Switch to use DEFINE_NOIRQ_DEV_PM_OPS() helper
        pinctrl: cherryview: Switch to use DEFINE_NOIRQ_DEV_PM_OPS() helper
        pm: Introduce DEFINE_NOIRQ_DEV_PM_OPS() helper
        pinctrl: mediatek: assign functions to configure pin bias on MT7986
        pinctrl: mediatek: fix pull_type data for MT7981
        dt-bindings: pinctrl: aspeed: Allow only defined pin mux node properties
        dt-bindings: pinctrl: Drop 'phandle' properties
        pinctrl: lynxpoint: Make use of pm_ptr()
        pinctrl: baytrail: Make use of pm_ptr()
        pinctrl: intel: Switch to use exported namespace
        pinctrl: lynxpoint: reuse common functions from pinctrl-intel
        pinctrl: cherryview: reuse common functions from pinctrl-intel
        ...
      4a3b1007
    • Linus Torvalds's avatar
      Merge tag 'edac_updates_for_v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras · bb511d4b
      Linus Torvalds authored
      Pull intel EDAC fixes from Tony Luck:
      
       - Old igen6 driver could lose pending events during initialization
      
       - Sapphire Rapids workstations have fewer memory controllers than their
         bigger siblings. This confused the driver.
      
      * tag 'edac_updates_for_v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
        EDAC/igen6: Fix the issue of no error events
        EDAC/i10nm: Skip the absent memory controllers
      bb511d4b
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.6-1' of https://github.com/cminyard/linux-ipmi · a55b0a02
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "Minor fixes for IPMI
      
        Lots of small unconnected things, memory leaks on error, a possible
        (though unlikely) deadlock, changes for updates to other things that
        have changed. Nothing earth-shattering, but things that need update"
      
      * tag 'for-linus-6.6-1' of https://github.com/cminyard/linux-ipmi:
        ipmi_si: fix -Wvoid-pointer-to-enum-cast warning
        ipmi: fix potential deadlock on &kcs_bmc->lock
        ipmi_si: fix a memleak in try_smi_init()
        ipmi: Change request_module to request_module_nowait
        ipmi: make ipmi_class a static const structure
        ipmi:ssif: Fix a memory leak when scanning for an adapter
        ipmi:ssif: Add check for kstrdup
        dt-bindings: ipmi: aspeed,ast2400-kcs-bmc: drop unneeded quotes
        ipmi: Switch i2c drivers back to use .probe()
        ipmi_watchdog: Fix read syscall not responding to signals during sleep
      a55b0a02
    • Linus Torvalds's avatar
      Merge tag 'devicetree-header-cleanups-for-6.6' of... · ef2a0b7c
      Linus Torvalds authored
      Merge tag 'devicetree-header-cleanups-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
      
      Pull devicetree include cleanups from Rob Herring:
       "These are the remaining few clean-ups of DT related includes which
        didn't get applied to subsystem trees"
      
      * tag 'devicetree-header-cleanups-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        ipmi: Explicitly include correct DT includes
        tpm: Explicitly include correct DT includes
        lib/genalloc: Explicitly include correct DT includes
        parport: Explicitly include correct DT includes
        sbus: Explicitly include correct DT includes
        mux: Explicitly include correct DT includes
        macintosh: Explicitly include correct DT includes
        hte: Explicitly include correct DT includes
        EDAC: Explicitly include correct DT includes
        clocksource: Explicitly include correct DT includes
        sparc: Explicitly include correct DT includes
        riscv: Explicitly include correct DT includes
      ef2a0b7c
  2. 30 Aug, 2023 24 commits
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 8f447694
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
       "DT core:
      
         - Add support for generating DT nodes for PCI devices. This is the
           groundwork for applying overlays to PCI devices containing
           non-discoverable downstream devices.
      
         - DT unittest additions to check reverted changesets, to test for
           refcount issues, and to test unresolved symbols. Also, various
           clean-ups of the unittest along the way.
      
         - Refactor node and property manipulation functions to better share
           code with old API and changeset API
      
         - Refactor changeset print functions to a common implementation
      
         - Move some platform_device specific functions into of_platform.c
      
        Bindings:
      
         - Treewide fixing of typos
      
         - Treewide clean-up of SPDX tags to use 'OR' consistently
      
         - Last chunk of dropping unnecessary quotes. With that, the check for
           unnecessary quotes is enabled in yamllint.
      
         - Convert ftgmac100, zynqmp-genpd, pps-gpio, syna,rmi4, and qcom,ssbi
           bindings to DT schema format
      
         - Add Allwinner V3s xHCI USB, Saef SF-TC154B display, QCom SM8450
           Inline Crypto Engine, QCom SM6115 UFS, QCom SDM670 PDC interrupt
           controller, Arm 2022 Cortex cores, and QCom IPQ9574 Crypto bindings
      
         - Fixes for Rockchip DWC PCI binding
      
         - Ensure all properties are evaluated on USB connector schema
      
         - Fix dt-check-compatible script to find of_device_id instances with
           compiler annotations"
      
      * tag 'devicetree-for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (64 commits)
        dt-bindings: usb: Add V3s compatible string for OHCI
        dt-bindings: usb: Add V3s compatible string for EHCI
        dt-bindings: display: panel: mipi-dbi-spi: add Saef SF-TC154B
        dt-bindings: vendor-prefixes: document Saef Technology
        dt-bindings: thermal: lmh: update maintainer address
        of: unittest: Fix of_unittest_pci_node() kconfig dependencies
        dt-bindings: crypto: ice: Document sm8450 inline crypto engine
        dt-bindings: ufs: qcom: Add ICE to sm8450 example
        dt-bindings: ufs: qcom: Add sm6115 binding
        dt-bindings: ufs: qcom: Add reg-names property for ICE
        dt-bindings: yamllint: Enable quoted string check
        dt-bindings: Drop remaining unneeded quotes
        of: unittest-data: Fix whitespace - angular brackets
        of: unittest-data: Fix whitespace - indentation
        of: unittest-data: Fix whitespace - blank lines
        of: unittest-data: Convert remaining overlay DTS files to sugar syntax
        of: overlay: unittest: Add test for unresolved symbol
        of: unittest: Add separators to of_unittest_overlay_high_level()
        of: unittest: Cleanup partially-applied overlays
        of: unittest: Merge of_unittest_apply{,_revert}_overlay_check()
        ...
      8f447694
    • Linus Torvalds's avatar
      Merge tag 'soc-dt-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 0e72db77
      Linus Torvalds authored
      Pull ARM devicetree updates from Arnd Bergmann:
       "These are the devicetree updates for Arm and RISC-V based SoCs, mainly
        from Qualcomm, NXP/Freescale, Aspeed, TI, Rockchips, Samsung, ST and
        Starfive.
      
        Only a few new SoC got added:
      
         - TI AM62P5, a variant of the existing Sitara AM62x family
      
         - Intel Agilex5, an FPGFA platform that includes an Cortex-A76/A55
           SoC.
      
         - Qualcomm ipq5018 is used in wireless access points
      
         - Qualcomm SM4450 (Snapdragon 4 Gen 2) is a new low-end mobile phone
           platform.
      
        In total, 29 machines get added, which is low because of the summer
        break. These cover SoCs from Aspeed, Broadcom, NXP, Samsung, ST,
        Allwinner, Amlogic, Intel, Qualcomm, Rockchip, TI and T-Head. Most of
        these are development and reference boards.
      
        Despite not adding a lot of new machines, there are over 700 patches
        in total, most of which are cleanups and minor fixes"
      
      * tag 'soc-dt-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (735 commits)
        arm64: dts: use capital "OR" for multiple licenses in SPDX
        ARM: dts: use capital "OR" for multiple licenses in SPDX
        arm64: dts: qcom: sdm845-db845c: Mark cont splash memory region as reserved
        ARM: dts: qcom: apq8064: add support to gsbi4 uart
        riscv: dts: change TH1520 files to dual license
        riscv: dts: thead: add BeagleV Ahead board device tree
        dt-bindings: riscv: Add BeagleV Ahead board compatibles
        ARM: dts: stm32: add SCMI PMIC regulators on stm32mp135f-dk board
        ARM: dts: stm32: STM32MP13x SoC exposes SCMI regulators
        dt-bindings: rcc: stm32: add STM32MP13 SCMI regulators IDs
        ARM: dts: stm32: support display on stm32f746-disco board
        ARM: dts: stm32: rename mmc_vcard to vcc-3v3 on stm32f746-disco
        ARM: dts: stm32: add pin map for LTDC on stm32f7
        ARM: dts: stm32: add ltdc support on stm32f746 MCU
        arm64: dts: qcom: sm6350: Hook up PDC as wakeup-parent of TLMM
        arm64: dts: qcom: sdm670: Hook up PDC as wakeup-parent of TLMM
        arm64: dts: qcom: sa8775p: Hook up PDC as wakeup-parent of TLMM
        arm64: dts: qcom: sc8280xp: Hook up PDC as wakeup-parent of TLMM
        arm64: dts: qcom: sdm670: Add PDC
        riscv: dts: starfive: fix jh7110 qspi sort order
        ...
      0e72db77
    • Linus Torvalds's avatar
      Merge tag 'soc-arm-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · a1c19328
      Linus Torvalds authored
      Pull ARM SoC cleanups from Arnd Bergmann:
       "These are all minor cleanups for platform specific code in arch/arm/
        and some of the associated drivers. The majority of these are work
        done by Rob Herring to improve the way devicetreee header files are
        handled"
      
      * tag 'soc-arm-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (49 commits)
        ARM: davinci: Drop unused includes
        ARM: s5pv210: Explicitly include correct DT includes
        ARM: dove: Drop unused includes
        ARM: mvebu: Explicitly include correct DT includes
        Documentation/process: maintainer-soc: document dtbs_check requirement for Samsung
        MAINTAINER: samsung: document dtbs_check requirement for Samsung
        Documentation/process: maintainer-soc: add clean platforms profile
        MAINTAINERS: soc: reference maintainer profile
        ARM: nspire: Remove unused header file mmio.h
        ARM: nspire: Use syscon-reboot to handle restart
        soc: fsl: Explicitly include correct DT includes
        soc: xilinx: Explicitly include correct DT includes
        soc: sunxi: Explicitly include correct DT includes
        soc: rockchip: Explicitly include correct DT includes
        soc: mediatek: Explicitly include correct DT includes
        soc: aspeed: Explicitly include correct DT includes
        firmware: Explicitly include correct DT includes
        bus: Explicitly include correct DT includes
        ARM: spear: Explicitly include correct DT includes
        ARM: mvebu: Explicitly include correct DT includes
        ...
      a1c19328
    • Linus Torvalds's avatar
      Merge tag 'soc-defconfig-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 47ca5060
      Linus Torvalds authored
      Pull ARM defconfig updates from Arnd Bergmann:
       "Various additions to the defconfig files to enable more drivers for
        already supported platforms, usually as loadable modules"
      
      * tag 'soc-defconfig-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (24 commits)
        ARM: multi_v7_defconfig: Add SCMI regulator support
        ARM: multi_v7_defconfig: Enable OMAP audio/display support
        ARM: multi_v7_defconfig: Enable TI Remoteproc and related configs
        ARM: multi_v7_defconfig: Enable TLV320AIC3x
        arm64: defconfig: Enable Redpine 91X wlan driver
        arm64: defconfig: Enable ITE_IT66121 HDMI transmitter
        arm64: defconfig: Enable IPQ5018 SoC base configs
        arm64: defconfig: Enable CONFIG_DRM_IMX_LCDIF
        arm64: defconfig: Enable TI PRUSS
        arm64: defconfig: Enable various configs for TI K3 platforms
        arm64: defconfig: enable driver for bluetooth nxp uart
        arm64: defconfig: Enable i.MX93 devices
        arm64: defconfig: Enable drivers for the Odroid-M1 board
        arm64: defconfig: Enable GPIO_SYSCON
        arm64: defconfig: select IMX_REMOTEPROC and RPMSG_VIRTIO
        arm64: defconfig: enable SL28VPD NVMEM layout
        arm64: defconfig: enable the SerDes PHY for Qualcomm DWMAC
        arm64: defconfig: Enable Rockchip OTP memory driver
        arm64: defconfig: Enable PHY_ROCKCHIP_NANENG_COMBO_PHY
        arm64: defconfig: Enable PMIC RAA215300 and RTC ISL 1208 configs
        ...
      47ca5060
    • Linus Torvalds's avatar
      Merge tag 'soc-drivers-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 1544df9a
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "The main change this time was the introduction of the drivers/genpd
        subsystem that gets split out from drivers/soc to keep common
        functionality together.
      
        The SCMI driver subsystem gets an update to version 3.2 of the
        specification. There are also updates to memory, reset and other
        firmware drivers.
      
        On the soc driver side, the updates are mostly cleanups across a
        number of Arm platforms. On driver for loongarch adds power management
        for DT based systems, another driver is for HiSilicon's Arm server
        chips with their HCCS system health interface.
      
        The remaining updates for the most part add support for additional
        hardware in existing drivers or contain minor cleanups. Most of these
        are for the Qualcomm Snapdragon platform"
      
      * tag 'soc-drivers-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (136 commits)
        bus: fsl-mc: Use common ranges functions
        soc: kunpeng_hccs: fix some sparse warnings about incorrect type
        soc: loongson2_pm: add power management support
        soc: dt-bindings: add loongson-2 pm
        soc: rockchip: grf: Fix SDMMC not working on RK3588 with bus-width > 1
        genpd: rockchip: Add PD_VO entry for rv1126
        bus: ti-sysc: Fix cast to enum warning
        soc: kunpeng_hccs: add MAILBOX dependency
        MAINTAINERS: remove OXNAS entry
        dt-bindings: interrupt-controller: arm,versatile-fpga-irq: mark oxnas compatible as deprecated
        irqchip: irq-versatile-fpga: remove obsolete oxnas compatible
        soc: qcom: aoss: Tidy up qmp_send() callers
        soc: qcom: aoss: Format string in qmp_send()
        soc: qcom: aoss: Move length requirements from caller
        soc: kunpeng_hccs: fix size_t format string
        soc: ti: k3-socinfo.c: Add JTAG ID for AM62PX
        dt-bindings: firmware: qcom: scm: Updating VMID list
        firmware: imx: scu-irq: support identifying SCU wakeup source from sysfs
        firmware: imx: scu-irq: enlarge the IMX_SC_IRQ_NUM_GROUP
        firmware: imx: scu-irq: add imx_scu_irq_get_status
        ...
      1544df9a
    • Linus Torvalds's avatar
      Merge tag 'genpd-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm · c66403f6
      Linus Torvalds authored
      Pull ARM SoC generic power domain driver updates from Ulf Hansson:
       "This adds a new subsystem for generic power domain providers in
        drivers/genpd and starts moving some of the corresponding code in
        there.
      
        We have currently ~60 users of the genpd provider interface, which are
        sprinkled across various subsystems. To release some burden from the
        soc maintainers (Arnd Bergmann, etc) in particular, but also to gain a
        better overall view of what goes on in the area, I will help out with
        maintenance"
      
      [ I find the "genpd" name singularly uninformative, so we'll probably
        end up moving this driver subsystem somewhere else, but that's still
        being discussed  - Linus ]
      
      * tag 'genpd-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm: (30 commits)
        genpd: ti: Use for_each_node_with_property() simplify code logic
        genpd: Explicitly include correct DT includes
        genpd: imx: scu-pd: initialize is_off according to HW state
        genpd: imx: scu-pd: Suppress bind attrs
        genpd: imx: scu-pd: do not power off console if no_console_suspend
        genpd: imx: scu-pd: add more PDs
        genpd: imx: scu-pd: enlarge PD range
        genpd: imx: relocate scu-pd under genpd
        MAINTAINERS: adjust file entry in STARFIVE JH71XX PMU CONTROLLER DRIVER
        genpd: Makefile: build imx
        genpd: move owl-sps-helper.c from drivers/soc
        soc: starfive: remove stale Makefile entry
        ARM: ux500: Move power-domain driver to the genpd dir
        ARM: ux500: Convert power-domain code into a regular platform driver
        soc: xilinx: Move power-domain driver to the genpd dir
        soc: ti: Mover power-domain drivers to the genpd dir
        soc: tegra: Move powergate-bpmp driver to the genpd dir
        soc: sunxi: Move power-domain driver to the genpd dir
        soc: starfive: Move the power-domain driver to the genpd dir
        soc: samsung: Move power-domain driver to the genpd dir
        ...
      c66403f6
    • Stephen Boyd's avatar
      Merge branch 'clk-qcom' into clk-next · 41680df0
      Stephen Boyd authored
      * clk-qcom: (87 commits)
        clk: qcom: Fix SM_GPUCC_8450 dependencies
        clk: qcom: smd-rpm: Set XO rate and CLK_IS_CRITICAL on PCNoC
        clk: qcom: smd-rpm: Add a way to define bus clocks with rate and flags
        clk: qcom: gcc-ipq5018: change some variable static
        clk: qcom: gcc-ipq4019: add missing networking resets
        dt-bindings: clock: qcom: ipq4019: add missing networking resets
        clk: qcom: gcc-msm8917: Enable GPLL0_SLEEP_CLK_SRC
        dt-bindings: clock: gcc-msm8917: Add definition for GPLL0_SLEEP_CLK_SRC
        clk: qcom: gcc-qdu1000: Update the RCGs ops
        clk: qcom: gcc-qdu1000: Update the SDCC clock RCG ops
        clk: qcom: gcc-qdu1000: Add support for GDSCs
        clk: qcom: gcc-qdu1000: Add gcc_ddrss_ecpri_gsi_clk support
        clk: qcom: gcc-qdu1000: Register gcc_gpll1_out_even clock
        clk: qcom: gcc-qdu1000: Fix clkref clocks handling
        clk: qcom: gcc-qdu1000: Fix gcc_pcie_0_pipe_clk_src clock handling
        dt-bindings: clock: Update GCC clocks for QDU1000 and QRU1000 SoCs
        clk: qcom: gcc-sm8450: Use floor ops for SDCC RCGs
        clk: qcom: ipq5332: drop the gcc_apss_axi_clk_src clock
        clk: qcom: ipq5332: drop the mem noc clocks
        clk: qcom: gcc-msm8998: Don't check halt bit on some branch clks
        ...
      41680df0
    • Stephen Boyd's avatar
      Merge branches 'clk-imx', 'clk-samsung', 'clk-annotate', 'clk-marvell' and 'clk-lmk' into clk-next · 3462100c
      Stephen Boyd authored
       - Add __counted_by to struct clk_hw_onecell_data and struct spmi_pmic_div_clk_cc
       - Remove non-OF mmp clk drivers
       - Move number of clks from DT headers to drivers
      
      * clk-imx:
        clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz
        clk: imx: pll14xx: align pdiv with reference manual
        clk: imx: composite-8m: fix clock pauses when set_rate would be a no-op
        clk: imx25: make __mx25_clocks_init return void
        clk: imx25: print silicon revision during init
        dt-bindings: clocks: imx8mp: make sai4 a dummy clock
        clk: imx8mp: fix sai4 clock
        clk: imx: imx8ulp: update SPLL2 type
        clk: imx: pllv4: Fix SPLL2 MULT range
        clk: imx: imx8: add audio clock mux driver
        dt-bindings: clock: fsl,imx8-acm: Add audio clock mux support
        clk: imx: clk-imx8qxp-lpcg: Convert to devm_platform_ioremap_resource()
        clk: imx: clk-gpr-mux: Simplify .determine_rate()
        clk: imx: Add 519.75MHz frequency support for imx9 pll
        clk: imx93: Add PDM IPG clk
        dt-bindings: clock: imx93: Add PDM IPG clk
      
      * clk-samsung:
        dt-bindings: clock: samsung: remove define with number of clocks
        clk: samsung: exynoautov9: do not define number of clocks in bindings
        clk: samsung: exynos850: do not define number of clocks in bindings
        clk: samsung: exynos7885: do not define number of clocks in bindings
        clk: samsung: exynos5433: do not define number of clocks in bindings
        clk: samsung: exynos5420: do not define number of clocks in bindings
        clk: samsung: exynos5410: do not define number of clocks in bindings
        clk: samsung: exynos5260: do not define number of clocks in bindings
        clk: samsung: exynos5250: do not define number of clocks in bindings
        clk: samsung: exynos4: do not define number of clocks in bindings
        clk: samsung: exynos3250: do not define number of clocks in bindings
      
      * clk-annotate:
        clk: qcom: clk-spmi-pmic-div: Annotate struct spmi_pmic_div_clk_cc with __counted_by
        clk: Annotate struct clk_hw_onecell_data with __counted_by
      
      * clk-marvell:
        clk: pxa910: Move number of clocks to driver source
        clk: pxa1928: Move number of clocks to driver source
        clk: pxa168: Move number of clocks to driver source
        clk: mmp2: Move number of clocks to driver source
        clk: mmp: Remove old non-OF clock drivers
      
      * clk-lmk:
        clk: lmk04832: Support using PLL1_LD as SPI readback pin
        clk: lmk04832: Don't disable vco clock on probe fail
        clk: lmk04832: Set missing parent_names for output clocks
      3462100c
    • Stephen Boyd's avatar
      Merge branches 'clk-versa', 'clk-strdup', 'clk-amlogic', 'clk-allwinner' and... · 032bcf78
      Stephen Boyd authored
      Merge branches 'clk-versa', 'clk-strdup', 'clk-amlogic', 'clk-allwinner' and 'clk-rockchip' into clk-next
      
       - Add Versa3 clk generator to support 48KHz playback/record with audio
         codec on RZ/G2L SMARC EVK
       - Introduce kstrdup_and_replace() and use it
      
      * clk-versa:
        clk: vc7: Use i2c_get_match_data() instead of device_get_match_data()
        clk: vc5: Use i2c_get_match_data() instead of device_get_match_data()
        clk: versaclock3: Switch to use i2c_driver's probe callback
        clk: Add support for versa3 clock driver
        dt-bindings: clock: Add Renesas versa3 clock generator bindings
      
      * clk-strdup:
        clk: ti: Replace kstrdup() + strreplace() with kstrdup_and_replace()
        clk: tegra: Replace kstrdup() + strreplace() with kstrdup_and_replace()
        driver core: Replace kstrdup() + strreplace() with kstrdup_and_replace()
        lib/string_helpers: Add kstrdup_and_replace() helper
      
      * clk-amlogic: (22 commits)
        dt-bindings: soc: amlogic: document System Control registers
        dt-bindings: clock: amlogic: convert amlogic,gxbb-aoclkc.txt to dt-schema
        dt-bindings: clock: amlogic: convert amlogic,gxbb-clkc.txt to dt-schema
        clk: meson: axg-audio: move bindings include to main driver
        clk: meson: meson8b: move bindings include to main driver
        clk: meson: a1: move bindings include to main driver
        clk: meson: eeclk: move bindings include to main driver
        clk: meson: aoclk: move bindings include to main driver
        dt-bindings: clk: axg-audio-clkc: expose all clock ids
        dt-bindings: clk: amlogic,a1-pll-clkc: expose all clock ids
        dt-bindings: clk: amlogic,a1-peripherals-clkc: expose all clock ids
        dt-bindings: clk: meson8b-clkc: expose all clock ids
        dt-bindings: clk: g12a-aoclkc: expose all clock ids
        dt-bindings: clk: g12a-clks: expose all clock ids
        dt-bindings: clk: axg-clkc: expose all clock ids
        dt-bindings: clk: gxbb-clkc: expose all clock ids
        clk: meson: migrate axg-audio out of hw_onecell_data to drop NR_CLKS
        clk: meson: migrate meson8b out of hw_onecell_data to drop NR_CLKS
        clk: meson: migrate a1 clock drivers out of hw_onecell_data to drop NR_CLKS
        clk: meson: migrate meson-aoclk out of hw_onecell_data to drop NR_CLKS
        ...
      
      * clk-allwinner:
        clk: sunxi-ng: nkm: Prefer current parent rate
        clk: sunxi-ng: a64: select closest rate for pll-video0
        clk: sunxi-ng: div: Support finding closest rate
        clk: sunxi-ng: mux: Support finding closest rate
        clk: sunxi-ng: nkm: Support finding closest rate
        clk: sunxi-ng: nm: Support finding closest rate
        clk: sunxi-ng: Add helper function to find closest rate
        clk: sunxi-ng: Add feature to find closest rate
        clk: sunxi-ng: a64: allow pll-mipi to set parent's rate
        clk: sunxi-ng: nkm: consider alternative parent rates when determining rate
        clk: sunxi-ng: nkm: Use correct parameter name for parent HW
        clk: sunxi-ng: Modify mismatched function name
        clk: sunxi: sun9i-mmc: Use devm_platform_get_and_ioremap_resource()
      
      * clk-rockchip:
        clk: rockchip: rv1126: Add PD_VO clock tree
        clk: rockchip: rk3568: Fix PLL rate setting for 78.75MHz
        clk: rockchip: rk3568: Add PLL rate for 101MHz
      032bcf78
    • Stephen Boyd's avatar
      Merge branches 'clk-bindings', 'clk-starfive', 'clk-rm', 'clk-renesas' and... · d10ebc7c
      Stephen Boyd authored
      Merge branches 'clk-bindings', 'clk-starfive', 'clk-rm', 'clk-renesas' and 'clk-cleanup' into clk-next
      
       - Remove OXNAS clk driver
      
      * clk-bindings:
        dt-bindings: clock: versal: Convert the xlnx,zynqmp-clk.txt to yaml
        dt-bindings: clock: xlnx,versal-clk: drop select:false
        dt-bindings: clock: versal: Add versal-net compatible string
        dt-bindings: clock: ast2600: Add I3C and MAC reset definitions
        dt-bindings: arm: hisilicon,cpuctrl: Merge "hisilicon,hix5hd2-clock" into parent binding
      
      * clk-starfive:
        reset: starfive: jh7110: Add StarFive STG/ISP/VOUT resets support
        clk: starfive: Simplify .determine_rate()
        clk: starfive: Add StarFive JH7110 Video-Output clock driver
        clk: starfive: Add StarFive JH7110 Image-Signal-Process clock driver
        clk: starfive: Add StarFive JH7110 System-Top-Group clock driver
        clk: starfive: jh7110-sys: Add PLL clocks source from DTS
        clk: starfive: Add StarFive JH7110 PLL clock driver
        dt-bindings: clock: Add StarFive JH7110 Video-Output clock and reset generator
        dt-bindings: clock: Add StarFive JH7110 Image-Signal-Process clock and reset generator
        dt-bindings: clock: Add StarFive JH7110 System-Top-Group clock and reset generator
        dt-bindings: clock: jh7110-syscrg: Add PLL clock inputs
        dt-bindings: soc: starfive: Add StarFive syscon module
        dt-bindings: clock: Add StarFive JH7110 PLL clock generator
      
      * clk-rm:
        dt-bindings: clk: oxnas: remove obsolete bindings
        clk: oxnas: remove obsolete clock driver
      
      * clk-renesas:
        clk: renesas: rcar-gen3: Add ADG clocks
        clk: renesas: r8a77965: Add 3DGE and ZG support
        clk: renesas: r8a7796: Add 3DGE and ZG support
        clk: renesas: r8a7795: Add 3DGE and ZG support
        clk: renesas: emev2: Remove obsolete clkdev registration
        clk: renesas: r9a07g043: Add MTU3a clock and reset entry
        clk: renesas: rzg2l: Simplify .determine_rate()
        clk: renesas: r9a09g011: Add CSI related clocks
        clk: renesas: r8a774b1: Add 3DGE and ZG support
        clk: renesas: r8a774e1: Add 3DGE and ZG support
        clk: renesas: r8a774a1: Add 3DGE and ZG support
        clk: renesas: rcar-gen3: Add support for ZG clock
      
      * clk-cleanup:
        clk: mvebu: Convert to devm_platform_ioremap_resource()
        clk: nuvoton: Convert to devm_platform_ioremap_resource()
        clk: socfpga: agilex: Convert to devm_platform_ioremap_resource()
        clk: ti: Use devm_platform_get_and_ioremap_resource()
        clk: mediatek: Convert to devm_platform_ioremap_resource()
        clk: hsdk-pll: Convert to devm_platform_ioremap_resource()
        clk: gemini: Convert to devm_platform_ioremap_resource()
        clk: fsl-sai: Convert to devm_platform_ioremap_resource()
        clk: bm1880: Convert to devm_platform_ioremap_resource()
        clk: axm5516: Convert to devm_platform_ioremap_resource()
        clk: actions: Convert to devm_platform_ioremap_resource()
        clk: cdce925: Remove redundant of_match_ptr()
        drivers: clk: keystone: Fix parameter judgment in _of_pll_clk_init()
        clk: Explicitly include correct DT includes
      d10ebc7c
    • Linus Torvalds's avatar
      Merge tag 'sound-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 4fb0dacb
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "We've received a fairly wide range of changes at this time, including
        for ALSA and ASoC core, but all of them are rather small changes.
      
        Here are some highlights:
      
        ALSA / ASoC Core:
         - Fixes of inconsistent locking around control API helpers
         - A few new control API functions and cleanups
         - Workarounds for potential UAFs by delayed kobj releases
         - Unified PCM copy ops with iov_iter
         - Continued efforts for ASoC API cleanups
      
        ASoC:
         - An adaptor to allow use of IIO DACs and ADCs in ASoC which pulls in
           some IIO changes
         - Create a library function for intlog10() and use it in the NAU8825
           driver
         - Convert drivers to use the more modern maple tree register cache
         - Lots of work on the SOF framework, AMD and Intel drivers, including
           a lot of cleanup and new device support
         - Standardization of the presentation of jacks from drivers
         - Provision of some generic sound card DT properties
         - Support for AMD Van Gogh, AMD machines with MAX98388 and NAU8821,
           AWInic AW88261, Cirrus Logic CS35L36 and CS42L43, various Intel
           platforms including AVS machines with ES8336 and RT5663, Mediatek
           MT7986, NXP i.MX93, RealTek RT1017 and StarFive JH7110
      
        Others:
         - New test coverage including ASoC and topology tests in KUnit; this
           also involves enabling UML builds of ALSA since that's the default
           KUnit test environment which pulls in the addition of some stubs to
           the driver
         - More enhancement of pcmtest driver
         - A few fixes / enhancements of MIDI 2.0 UMP core
         - Using PCI definitions in allover HD-audio code
         - Support for Cirrus CS35L56 and TI TAS2781 HD-audio sub-codecs
         - CS35L41 HD-audio sub-codec improvements
         - Continued emu10k1 improvements"
      
      * tag 'sound-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (693 commits)
        ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl
        ASoC: dwc: i2s: Fix unused functions
        ALSA: usb-audio: Don't try to submit URBs after disconnection
        ALSA: emu10k1: add separate documentation for E-MU cards
        ALSA: emu10k1: more documentation updates
        ALSA: emu10k1: de-duplicate audigy-mixer.rst vs. sb-live-mixer.rst
        ALSA: ump: Fix -Wformat-truncation warnings
        ALSA: hda: Add missing dependency on CONFIG_EFI for Cirrus/TI sub-codecs
        ALSA: doc: Fix missing backquote in midi-2.0.rst
        ALSA: hda/realtek: Add quirk for mute LEDs on HP ENVY x360 15-eu0xxx
        ALSA: hda/tas2781: Switch back to use struct i2c_driver's .probe()
        ASoC: soc-core.c: Do not error if a DAI link component is not found
        ASoC: codecs: Fix error code in aw88261_i2c_probe()
        ASoC: audio-graph-card.c: move audio_graph_parse_of()
        ASoC: cs42l43: Use new-style PM runtime macros
        ALSA: documentation: Add description for USB MIDI 2.0 gadget driver
        ALSA: ump: Don't create unused substreams for static blocks
        ALSA: ump: Fill group names for legacy rawmidi substreams
        ALSA: usb-audio: Attach legacy rawmidi after probing all UMP EPs
        ALSA: ac97: Fix possible error value of *rac97
        ...
      4fb0dacb
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2023-08-30' of git://anongit.freedesktop.org/drm/drm · 461f35f0
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "The drm core grew a new generic gpu virtual address manager, and new
        execution locking helpers. These are used by nouveau now to provide
        uAPI support for the userspace Vulkan driver. AMD had a bunch of new
        IP core support, loads of refactoring around fbdev, but mostly just
        the usual amount of stuff across the board.
      
        core:
         - fix gfp flags in drmm_kmalloc
      
        gpuva:
         - add new generic GPU VA manager (for nouveau initially)
      
        syncobj:
         - add new DRM_IOCTL_SYNCOBJ_EVENTFD ioctl
      
        dma-buf:
         - acquire resv lock for mmap() in exporters
         - support dma-buf self import automatically
         - docs fixes
      
        backlight:
         - fix fbdev interactions
      
        atomic:
         - improve logging
      
        prime:
         - remove struct gem_prim_mmap plus driver updates
      
        gem:
         - drm_exec: add locking over multiple GEM objects
         - fix lockdep checking
      
        fbdev:
         - make fbdev userspace interfaces optional
         - use linux device instead of fbdev device
         - use deferred i/o helper macros in various drivers
         - Make FB core selectable without drivers
         - Remove obsolete flags FBINFO_DEFAULT and FBINFO_FLAG_DEFAULT
         - Add helper macros and Kconfig tokens for DMA-allocated framebuffer
      
        ttm:
         - support init_on_free
         - swapout fixes
      
        panel:
         - panel-edp: Support AUO B116XAB01.4
         - Support Visionox R66451 plus DT bindings
         - ld9040:
            - Backlight support
            - magic improved
            - Kconfig fix
         - Convert to of_device_get_match_data()
         - Fix Kconfig dependencies
         - simple:
            - Set bpc value to fix warning
            - Set connector type for AUO T215HVN01
            - Support Innolux G156HCE-L01 plus DT bindings
         - ili9881: Support TDO TL050HDV35 LCD panel plus DT bindings
         - startek: Support KD070FHFID015 MIPI-DSI panel plus DT bindings
         - sitronix-st7789v:
            - Support Inanbo T28CP45TN89 plus DT bindings
            - Support EDT ET028013DMA plus DT bindings
            - Various cleanups
         - edp: Add timings for N140HCA-EAC
         - Allow panels and touchscreens to power sequence together
         - Fix Innolux G156HCE-L01 LVDS clock
      
        bridge:
         - debugfs for chains support
         - dw-hdmi:
            - Improve support for YUV420 bus format
            - CEC suspend/resume
            - update EDID on HDMI detect
         - dw-mipi-dsi: Fix enable/disable of DSI controller
         - lt9611uxc: Use MODULE_FIRMWARE()
         - ps8640: Remove broken EDID code
         - samsung-dsim: Fix command transfer
         - tc358764:
            - Handle HS/VS polarity
            - Use BIT() macro
            - Various cleanups
         - adv7511: Fix low refresh rate
         - anx7625:
            - Switch to macros instead of hardcoded values
            - locking fixes
         - tc358767: fix hardware delays
         - sitronix-st7789v:
            - Support panel orientation
            - Support rotation property
            - Add support for Jasonic JT240MHQS-HWT-EK-E3 plus DT bindings
      
        amdgpu:
         - SDMA 6.1.0 support
         - HDP 6.1 support
         - SMUIO 14.0 support
         - PSP 14.0 support
         - IH 6.1 support
         - Lots of checkpatch cleanups
         - GFX 9.4.3 updates
         - Add USB PD and IFWI flashing documentation
         - GPUVM updates
         - RAS fixes
         - DRR fixes
         - FAMS fixes
         - Virtual display fixes
         - Soft IH fixes
         - SMU13 fixes
         - Rework PSP firmware loading for other IPs
         - Kernel doc fixes
         - DCN 3.0.1 fixes
         - LTTPR fixes
         - DP MST fixes
         - DCN 3.1.6 fixes
         - SMU 13.x fixes
         - PSP 13.x fixes
         - SubVP fixes
         - GC 9.4.3 fixes
         - Display bandwidth calculation fixes
         - VCN4 secure submission fixes
         - Allow building DC on RISC-V
         - Add visible FB info to bo_print_info
         - HBR3 fixes
         - GFX9 MCBP fix
         - GMC10 vmhub index fix
         - GMC11 vmhub index fix
         - Create a new doorbell manager
         - SR-IOV fixes
         - initial freesync panel replay support
         - revert zpos properly until igt regression is fixeed
         - use TTM to manage doorbell BAR
         - Expose both current and average power via hwmon if supported
      
        amdkfd:
         - Cleanup CRIU dma-buf handling
         - Use KIQ to unmap HIQ
         - GFX 9.4.3 debugger updates
         - GFX 9.4.2 debugger fixes
         - Enable cooperative groups fof gfx11
         - SVM fixes
         - Convert older APUs to use dGPU path like newer APUs
         - Drop IOMMUv2 path as it is no longer used
         - TBA fix for aldebaran
      
        i915:
         - ICL+ DSI modeset sequence
         - HDCP improvements
         - MTL display fixes and cleanups
         - HSW/BDW PSR1 restored
         - Init DDI ports in VBT order
         - General display refactors
         - Start using plane scale factor for relative data rate
         - Use shmem for dpt objects
         - Expose RPS thresholds in sysfs
         - Apply GuC SLPC min frequency softlimit correctly
         - Extend Wa_14015795083 to TGL, RKL, DG1 and ADL
         - Fix a VMA UAF for multi-gt platform
         - Do not use stolen on MTL due to HW bug
         - Check HuC and GuC version compatibility on MTL
         - avoid infinite GPU waits due to premature release of request memory
         - Fixes and updates for GSC memory allocation
         - Display SDVO fixes
         - Take stolen handling out of FBC code
         - Make i915_coherent_map_type GT-centric
         - Simplify shmem_create_from_object map_type
      
        msm:
         - SM6125 MDSS support
         - DPU: SM6125 DPU support
         - DSI: runtime PM support, burst mode support
         - DSI PHY: SM6125 support in 14nm DSI PHY driver
         - GPU: prepare for a7xx
         - fix a690 firmware
         - disable relocs on a6xx and newer
      
        radeon:
         - Lots of checkpatch cleanups
      
        ast:
         - improve device-model detection
         - Represent BMV as virtual connector
         - Report DP connection status
      
        nouveau:
         - add new exec/bind interface to support Vulkan
         - document some getparam ioctls
         - improve VRAM detection
         - various fixes/cleanups
         - workraound DPCD issues
      
        ivpu:
         - MMU updates
         - debugfs support
         - Support vpu4
      
        virtio:
         - add sync object support
      
        atmel-hlcdc:
         - Support inverted pixclock polarity
      
        etnaviv:
         - runtime PM cleanups
         - hang handling fixes
      
        exynos:
         - use fbdev DMA helpers
         - fix possible NULL ptr dereference
      
        komeda:
         - always attach encoder
      
        omapdrm:
         - use fbdev DMA helpers
      ingenic:
         - kconfig regmap fixes
      
        loongson:
         - support display controller
      
        mediatek:
         - Small mtk-dpi cleanups
         - DisplayPort: support eDP and aux-bus
         - Fix coverity issues
         - Fix potential memory leak if vmap() fail
      
        mgag200:
         - minor fixes
      
        mxsfb:
         - support disabling overlay planes
      
        panfrost:
         - fix sync in IRQ handling
      
        ssd130x:
         - Support per-controller default resolution plus DT bindings
         - Reduce memory-allocation overhead
         - Improve intermediate buffer size computation
         - Fix allocation of temporary buffers
         - Fix pitch computation
         - Fix shadow plane allocation
      
        tegra:
         - use fbdev DMA helpers
         - Convert to devm_platform_ioremap_resource()
         - support bridge/connector
         - enable PM
      
        tidss:
         - Support TI AM625 plus DT bindings
         - Implement new connector model plus driver updates
      
        vkms:
         - improve write back support
         - docs fixes
         - support gamma LUT
      
        zynqmp-dpsub:
         - misc fixes"
      
      * tag 'drm-next-2023-08-30' of git://anongit.freedesktop.org/drm/drm: (1327 commits)
        drm/gpuva_mgr: remove unused prev pointer in __drm_gpuva_sm_map()
        drm/tests/drm_kunit_helpers: Place correct function name in the comment header
        drm/nouveau: uapi: don't pass NO_PREFETCH flag implicitly
        drm/nouveau: uvmm: fix unset region pointer on remap
        drm/nouveau: sched: avoid job races between entities
        drm/i915: Fix HPD polling, reenabling the output poll work as needed
        drm: Add an HPD poll helper to reschedule the poll work
        drm/i915: Fix TLB-Invalidation seqno store
        drm/ttm/tests: Fix type conversion in ttm_pool_test
        drm/msm/a6xx: Bail out early if setting GPU OOB fails
        drm/msm/a6xx: Move LLC accessors to the common header
        drm/msm/a6xx: Introduce a6xx_llc_read
        drm/ttm/tests: Require MMU when testing
        drm/panel: simple: Fix Innolux G156HCE-L01 LVDS clock
        Revert "Revert "drm/amdgpu/display: change pipe policy for DCN 2.0""
        drm/amdgpu: Add memory vendor information
        drm/amd: flush any delayed gfxoff on suspend entry
        drm/amdgpu: skip fence GFX interrupts disable/enable for S0ix
        drm/amdgpu: Remove gfxoff check in GFX v9.4.3
        drm/amd/pm: Update pci link speed for smu v13.0.6
        ...
      461f35f0
    • Linus Torvalds's avatar
      Merge tag 'xfs-6.6-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 53ea7f62
      Linus Torvalds authored
      Pull xfs updates from Chandan Babu:
      
       - Chandan Babu will be taking over as the XFS release manager. He has
         reviewed all the patches that are in this branch, though I'm signing
         the branch one last time since I'm still technically maintainer. :P
      
       - Create a maintainer entry profile for XFS in which we lay out the
         various roles that I have played for many years.  Aside from release
         manager, the remaining roles are as yet unfilled.
      
       - Start merging online repair -- we now have in-memory pageable memory
         for staging btrees, a bunch of pending fixes, and we've started the
         process of refactoring the scrub support code to support more of
         repair.  In particular, reaping of old blocks from damaged structures.
      
       - Scrub the realtime summary file.
      
       - Fix a bug where scrub's quota iteration only ever returned the root
         dquot.  Oooops.
      
       - Fix some typos.
      
      [ Pull request from Chandan Babu, but signed tag and description from
        Darrick Wong, thus the first person singular above is Darrick, not
        Chandan ]
      
      * tag 'xfs-6.6-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (37 commits)
        fs/xfs: Fix typos in comments
        xfs: fix dqiterate thinko
        xfs: don't check reflink iflag state when checking cow fork
        xfs: simplify returns in xchk_bmap
        xfs: rewrite xchk_inode_is_allocated to work properly
        xfs: hide xfs_inode_is_allocated in scrub common code
        xfs: fix agf_fllast when repairing an empty AGFL
        xfs: allow userspace to rebuild metadata structures
        xfs: clear pagf_agflreset when repairing the AGFL
        xfs: allow the user to cancel repairs before we start writing
        xfs: don't complain about unfixed metadata when repairs were injected
        xfs: implement online scrubbing of rtsummary info
        xfs: always rescan allegedly healthy per-ag metadata after repair
        xfs: move the realtime summary file scrubber to a separate source file
        xfs: wrap ilock/iunlock operations on sc->ip
        xfs: get our own reference to inodes that we want to scrub
        xfs: track usage statistics of online fsck
        xfs: improve xfarray quicksort pivot
        xfs: create scaffolding for creating debugfs entries
        xfs: cache pages used for xfarray quicksort convergence
        ...
      53ea7f62
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 38663034
      Linus Torvalds authored
      Pull fsnotify update from Jan Kara:
       "Just a small fsnotify cleanup this time"
      
      * tag 'fsnotify_for_v6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fanotify: Remove unused extern declaration fsnotify_get_conn_fsid()
      38663034
    • Linus Torvalds's avatar
      Merge tag 'for_v6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 1500e7e0
      Linus Torvalds authored
      Pull ext2, quota, and udf updates from Jan Kara:
      
       - fixes for possible use-after-free issues with quota when racing with
         chown
      
       - fixes for ext2 crashing when xattr allocation races with another
         block allocation to the same file from page writeback code
      
       - fix for block number overflow in ext2
      
       - marking of reiserfs as obsolete in MAINTAINERS
      
       - assorted minor cleanups
      
      * tag 'for_v6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        ext2: Fix kernel-doc warnings
        ext2: improve consistency of ext2_fsblk_t datatype usage
        ext2: dump current reservation window info
        ext2: fix race between setxattr and write back
        ext2: introduce new flags argument for ext2_new_blocks()
        ext2: remove ext2_new_block()
        ext2: fix datatype of block number in ext2_xattr_set2()
        udf: Drop pointless aops assignment
        quota: use lockdep_assert_held_write in dquot_load_quota_sb
        MAINTAINERS: change reiserfs status to obsolete
        udf: Fix -Wstringop-overflow warnings
        quota: simplify drop_dquot_ref()
        quota: fix dqput() to follow the guarantees dquot_srcu should provide
        quota: add new helper dquot_active()
        quota: rename dquot_active() to inode_quota_active()
        quota: factor out dquot_write_dquot()
        ext2: remove redundant assignment to variable desc and variable best_desc
      1500e7e0
    • Linus Torvalds's avatar
      Merge tag 'ovl-update-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/overlayfs/vfs · 63580f66
      Linus Torvalds authored
      Pull overlayfs updates from Amir Goldstein:
      
       - add verification feature needed by composefs (Alexander Larsson)
      
       - improve integration of overlayfs and fanotify (Amir Goldstein)
      
       - fortify some overlayfs code (Andrea Righi)
      
      * tag 'ovl-update-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/overlayfs/vfs:
        ovl: validate superblock in OVL_FS()
        ovl: make consistent use of OVL_FS()
        ovl: Kconfig: introduce CONFIG_OVERLAY_FS_DEBUG
        ovl: auto generate uuid for new overlay filesystems
        ovl: store persistent uuid/fsid with uuid=on
        ovl: add support for unique fsid per instance
        ovl: support encoding non-decodable file handles
        ovl: Handle verity during copy-up
        ovl: Validate verity xattr when resolving lowerdata
        ovl: Add versioned header for overlay.metacopy xattr
        ovl: Add framework for verity support
      63580f66
    • Linus Torvalds's avatar
      Merge tag 'x86_apic_for_6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1687d8ac
      Linus Torvalds authored
      Pull x86 apic updates from Dave Hansen:
       "This includes a very thorough rework of the 'struct apic' handlers.
        Quite a variety of them popped up over the years, especially in the
        32-bit days when odd apics were much more in vogue.
      
        The end result speaks for itself, which is a removal of a ton of code
        and static calls to replace indirect calls.
      
        If there's any breakage here, it's likely to be around the 32-bit
        museum pieces that get light to no testing these days.
      
        Summary:
      
         - Rework apic callbacks, getting rid of unnecessary ones and
           coalescing lots of silly duplicates.
      
         - Use static_calls() instead of indirect calls for apic->foo()
      
         - Tons of cleanups an crap removal along the way"
      
      * tag 'x86_apic_for_6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (64 commits)
        x86/apic: Turn on static calls
        x86/apic: Provide static call infrastructure for APIC callbacks
        x86/apic: Wrap IPI calls into helper functions
        x86/apic: Mark all hotpath APIC callback wrappers __always_inline
        x86/xen/apic: Mark apic __ro_after_init
        x86/apic: Convert other overrides to apic_update_callback()
        x86/apic: Replace acpi_wake_cpu_handler_update() and apic_set_eoi_cb()
        x86/apic: Provide apic_update_callback()
        x86/xen/apic: Use standard apic driver mechanism for Xen PV
        x86/apic: Provide common init infrastructure
        x86/apic: Wrap apic->native_eoi() into a helper
        x86/apic: Nuke ack_APIC_irq()
        x86/apic: Remove pointless arguments from [native_]eoi_write()
        x86/apic/noop: Tidy up the code
        x86/apic: Remove pointless NULL initializations
        x86/apic: Sanitize APIC ID range validation
        x86/apic: Prepare x2APIC for using apic::max_apic_id
        x86/apic: Simplify X2APIC ID validation
        x86/apic: Add max_apic_id member
        x86/apic: Wrap APIC ID validation into an inline
        ...
      1687d8ac
    • Rick Edgecombe's avatar
      x86/shstk: Change order of __user in type · 1fe428d3
      Rick Edgecombe authored
      0day reports a sparse warning:
      arch/x86/kernel/shstk.c:295:55: sparse: sparse: cast removes address space
      '__user' of expression
      
      The __user is in the wrong spot. Move it to right spot and make sparse
      happy.
      
      Closes: https://lore.kernel.org/oe-kbuild-all/202308222312.Jt4Tog5T-lkp@intel.com/Reported-by: default avatarkernel test robot <lkp@intel.com>
      Signed-off-by: default avatarRick Edgecombe <rick.p.edgecombe@intel.com>
      Signed-off-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
      Link: https://lore.kernel.org/all/20230825014554.1769194-1-rick.p.edgecombe%40intel.com
      1fe428d3
    • Linus Torvalds's avatar
      Merge tag 'x86-core-2023-08-30-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 87fa732d
      Linus Torvalds authored
      Pull x86 core updates from Thomas Gleixner:
      
       - Prevent kprobes on compiler generated CFI checking code.
      
         The compiler generates an instruction sequence for indirect call
         checks. If this sequence is modified with a kprobe, then the check
         fails. So the instructions must be protected against probing.
      
       - A few minor cleanups for the SMP code
      
      * tag 'x86-core-2023-08-30-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kprobes: Prohibit probing on compiler generated CFI checking code
        x86/smpboot: Change smp_store_boot_cpu_info() to static
        x86/smp: Remove a non-existent function declaration
        x86/smpboot: Remove a stray comment about CPU hotplug
      87fa732d
    • Linus Torvalds's avatar
      Merge tag 'x86_mm_for_6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 98559227
      Linus Torvalds authored
      Pull x86 mm updates from Dave Hansen:
       "A pair of small x86/mm updates. The INVPCID one is purely a cleanup.
        The PAT one fixes a real issue, albeit a relatively obscure one
        (graphics device passthrough under Xen). The fix also makes the code
        much more readable.
      
        Summary:
      
         - Remove unnecessary "INVPCID single" feature tracking
      
         - Include PAT in page protection modify mask"
      
      * tag 'x86_mm_for_6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm: Remove "INVPCID single" feature tracking
        x86/mm: Fix PAT bit missing from page protection modify mask
      98559227
    • Mateusz Guzik's avatar
      x86: bring back rep movsq for user access on CPUs without ERMS · ca96b162
      Mateusz Guzik authored
      Intel CPUs ship with ERMS for over a decade, but this is not true for
      AMD.  In particular one reasonably recent uarch (EPYC 7R13) does not
      have it (or at least the bit is inactive when running on the Amazon EC2
      cloud -- I found rather conflicting information about AMD CPUs vs the
      extension).
      
      Hand-rolled mov loops executing in this case are quite pessimal compared
      to rep movsq for bigger sizes.  While the upper limit depends on uarch,
      everyone is well south of 1KB AFAICS and sizes bigger than that are
      common.
      
      While technically ancient CPUs may be suffering from rep usage, gcc has
      been emitting it for years all over kernel code, so I don't think this
      is a legitimate concern.
      
      Sample result from read1_processes from will-it-scale (4KB reads/s):
      
        before:   1507021
        after:    1721828 (+14%)
      
      Note that the cutoff point for rep usage is set to 64 bytes, which is
      way too conservative but I'm sticking to what was done in 47ee3f1d
      ("x86: re-introduce support for ERMS copies for user space accesses").
      That is to say *some* copies will now go slower, which is fixable but
      beyond the scope of this patch.
      Signed-off-by: default avatarMateusz Guzik <mjguzik@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ca96b162
    • Linus Torvalds's avatar
      Merge tag 'Smack-for-6.6' of https://github.com/cschaufler/smack-next · 87245966
      Linus Torvalds authored
      Pull smack updates from Casey Schaufler:
       "Two minor fixes: is a simple spelling fix. The other is a bounds check
        for a very likely underflow"
      
      * tag 'Smack-for-6.6' of https://github.com/cschaufler/smack-next:
        smackfs: Prevent underflow in smk_set_cipso()
        security: smack: smackfs: fix typo (lables->labels)
      87245966
    • Linus Torvalds's avatar
      Merge tag 'integrity-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · 1a35914f
      Linus Torvalds authored
      Pull integrity subsystem updates from Mimi Zohar:
      
       - With commit 099f26f2 ("integrity: machine keyring CA
         configuration") certificates may be loaded onto the IMA keyring,
         directly or indirectly signed by keys on either the "builtin" or the
         "machine" keyrings.
      
         With the ability for the system/machine owner to sign the IMA policy
         itself without needing to recompile the kernel, update the IMA
         architecture specific policy rules to require the IMA policy itself
         be signed.
      
         [ As commit 099f26f2 was upstreamed in linux-6.4, updating the
           IMA architecture specific policy now to require signed IMA policies
           may break userspace expectations. ]
      
       - IMA only checked the file data hash was not on the system blacklist
         keyring for files with an appended signature (e.g. kernel modules,
         Power kernel image).
      
         Check all file data hashes regardless of how it was signed
      
       - Code cleanup, and a kernel-doc update
      
      * tag 'integrity-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        kexec_lock: Replace kexec_mutex() by kexec_lock() in two comments
        ima: require signed IMA policy when UEFI secure boot is enabled
        integrity: Always reference the blacklist keyring with appraisal
        ima: Remove deprecated IMA_TRUSTED_KEYRING Kconfig
      1a35914f
    • Linus Torvalds's avatar
      Merge tag 'lsm-pr-20230829' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm · 1086eeac
      Linus Torvalds authored
      Pull LSM updates from Paul Moore:
      
       - Add proper multi-LSM support for xattrs in the
         security_inode_init_security() hook
      
         Historically the LSM layer has only allowed a single LSM to add an
         xattr to an inode, with IMA/EVM measuring that and adding its own as
         well. As we work towards promoting IMA/EVM to a "proper LSM" instead
         of the special case that it is now, we need to better support the
         case of multiple LSMs each adding xattrs to an inode and after
         several attempts we now appear to have something that is working
         well. It is worth noting that in the process of making this change we
         uncovered a problem with Smack's SMACK64TRANSMUTE xattr which is also
         fixed in this pull request.
      
       - Additional LSM hook constification
      
         Two patches to constify parameters to security_capget() and
         security_binder_transfer_file(). While I generally don't make a
         special note of who submitted these patches, these were the work of
         an Outreachy intern, Khadija Kamran, and that makes me happy;
         hopefully it does the same for all of you reading this.
      
       - LSM hook comment header fixes
      
         One patch to add a missing hook comment header, one to fix a minor
         typo.
      
       - Remove an old, unused credential function declaration
      
         It wasn't clear to me who should pick this up, but it was trivial,
         obviously correct, and arguably the LSM layer has a vested interest
         in credentials so I merged it. Sadly I'm now noticing that despite my
         subject line cleanup I didn't cleanup the "unsued" misspelling, sigh
      
      * tag 'lsm-pr-20230829' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm:
        lsm: constify the 'file' parameter in security_binder_transfer_file()
        lsm: constify the 'target' parameter in security_capget()
        lsm: add comment block for security_sk_classify_flow LSM hook
        security: Fix ret values doc for security_inode_init_security()
        cred: remove unsued extern declaration change_create_files_as()
        evm: Support multiple LSMs providing an xattr
        evm: Align evm_inode_init_security() definition with LSM infrastructure
        smack: Set the SMACK64TRANSMUTE xattr in smack_inode_init_security()
        security: Allow all LSMs to provide xattrs for inode_init_security hook
        lsm: fix typo in security_file_lock() comment header
      1086eeac