# git rev-parse -q --verify d0a231f01e5b25bacd23e6edc7c979a18a517b2b^{commit} d0a231f01e5b25bacd23e6edc7c979a18a517b2b already have revision, skipping fetch # git checkout -q -f -B kisskb d0a231f01e5b25bacd23e6edc7c979a18a517b2b # git clean -qxdf # < git log -1 # commit d0a231f01e5b25bacd23e6edc7c979a18a517b2b # Merge: 88db8458086b 87c71931633b # Author: Linus Torvalds # Date: Sun Jan 16 08:08:11 2022 +0200 # # Merge tag 'pci-v5.17-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci # # Pull pci updates from Bjorn Helgaas: # "Enumeration: # - Use pci_find_vsec_capability() instead of open-coding it (Andy # Shevchenko) # - Convert pci_dev_present() stub from macro to static inline to avoid # 'unused variable' errors (Hans de Goede) # - Convert sysfs slot attributes from default_attrs to default_groups # (Greg Kroah-Hartman) # - Use DWORD accesses for LTR, L1 SS to avoid BayHub OZ711LV2 erratum # (Rajat Jain) # - Remove unnecessary initialization of static variables (Longji Guo) # # Resource management: # - Always write Intel I210 ROM BAR on update to work around device # defect (Bjorn Helgaas) # # PCIe native device hotplug: # - Fix pciehp lockdep errors on Thunderbolt undock (Hans de Goede) # - Fix infinite loop in pciehp IRQ handler on power fault (Lukas # Wunner) # # Power management: # - Convert amd64-agp, sis-agp, via-agp from legacy PCI power # management to generic power management (Vaibhav Gupta) # # IOMMU: # - Add function 1 DMA alias quirk for Marvell 88SE9125 SATA controller # so it can work with an IOMMU (Yifeng Li) # # Error handling: # - Add PCI_ERROR_RESPONSE and related definitions for signaling and # checking for transaction errors on PCI (Naveen Naidu) # - Fabricate PCI_ERROR_RESPONSE data (~0) in config read wrappers, # instead of in host controller drivers, when transactions fail on # PCI (Naveen Naidu) # - Use PCI_POSSIBLE_ERROR() to check for possible failure of config # reads (Naveen Naidu) # # Peer-to-peer DMA: # - Add Logan Gunthorpe as P2PDMA maintainer (Bjorn Helgaas) # # ASPM: # - Calculate link L0s and L1 exit latencies when needed instead of # caching them (Saheed O. Bolarinwa) # - Calculate device L0s and L1 acceptable exit latencies when needed # instead of caching them (Saheed O. Bolarinwa) # - Remove struct aspm_latency since it's no longer needed (Saheed O. # Bolarinwa) # # APM X-Gene PCIe controller driver: # - Fix IB window setup, which was broken by the fact that IB resources # are now sorted in address order instead of DT dma-ranges order (Rob # Herring) # # Apple PCIe controller driver: # - Enable clock gating to save power (Hector Martin) # - Fix REFCLK1 enable/poll logic (Hector Martin) # # Broadcom STB PCIe controller driver: # - Declare bitmap correctly for use by bitmap interfaces (Christophe # JAILLET) # - Clean up computation of legacy and non-legacy MSI bitmasks (Florian # Fainelli) # - Update suspend/resume/remove error handling to warn about errors # and not fail the operation (Jim Quinlan) # - Correct the "pcie" and "msi" interrupt descriptions in DT binding # (Jim Quinlan) # - Add DT bindings for endpoint voltage regulators (Jim Quinlan) # - Split brcm_pcie_setup() into two functions (Jim Quinlan) # - Add mechanism for turning on voltage regulators for connected # devices (Jim Quinlan) # - Turn voltage regulators for connected devices on/off when bus is # added or removed (Jim Quinlan) # - When suspending, don't turn off voltage regulators for wakeup # devices (Jim Quinlan) # # Freescale i.MX6 PCIe controller driver: # - Add i.MX8MM support (Richard Zhu) # # Freescale Layerscape PCIe controller driver: # - Use DWC common ops instead of layerscape-specific link-up functions # (Hou Zhiqiang) # # Intel VMD host bridge driver: # - Honor platform ACPI _OSC feature negotiation for Root Ports below # VMD (Kai-Heng Feng) # - Add support for Raptor Lake SKUs (Karthik L Gopalakrishnan) # - Reset everything below VMD before enumerating to work around # failure to enumerate NVMe devices when guest OS reboots (Nirmal # Patel) # # Bridge emulation (used by Marvell Aardvark and MVEBU): # - Make emulated ROM BAR read-only by default (Pali Rohár) # - Make some emulated legacy PCI bits read-only for PCIe devices (Pali # Rohár) # - Update reserved bits in emulated PCIe Capability (Pali Rohár) # - Allow drivers to emulate different PCIe Capability versions (Pali # Rohár) # - Set emulated Capabilities List bit for all PCIe devices, since they # must have at least a PCIe Capability (Pali Rohár) # # Marvell Aardvark PCIe controller driver: # - Add bridge emulation definitions for PCIe DEVCAP2, DEVCTL2, # DEVSTA2, LNKCAP2, LNKCTL2, LNKSTA2, SLTCAP2, SLTCTL2, SLTSTA2 (Pali # Rohár) # - Add aardvark support for DEVCAP2, DEVCTL2, LNKCAP2 and LNKCTL2 # registers (Pali Rohár) # - Clear all MSIs at setup to avoid spurious interrupts (Pali Rohár) # - Disable bus mastering when unbinding host controller driver (Pali # Rohár) # - Mask all interrupts when unbinding host controller driver (Pali # Rohár) # - Fix memory leak in host controller unbind (Pali Rohár) # - Assert PERST# when unbinding host controller driver (Pali Rohár) # - Disable link training when unbinding host controller driver (Pali # Rohár) # - Disable common PHY when unbinding host controller driver (Pali # Rohár) # - Fix resource type checking to check only IORESOURCE_MEM, not # IORESOURCE_MEM_64, which is a flavor of IORESOURCE_MEM (Pali Rohár) # # Marvell MVEBU PCIe controller driver: # - Implement pci_remap_iospace() for ARM so mvebu can use # devm_pci_remap_iospace() instead of the previous ARM-specific # pci_ioremap_io() interface (Pali Rohár) # - Use the standard pci_host_probe() instead of the device-specific # mvebu_pci_host_probe() (Pali Rohár) # - Replace all uses of ARM-specific pci_ioremap_io() with the ARM # implementation of the standard pci_remap_iospace() interface and # remove pci_ioremap_io() (Pali Rohár) # - Skip initializing invalid Root Ports (Pali Rohár) # - Check for errors from pci_bridge_emul_init() (Pali Rohár) # - Ignore any bridges at non-zero function numbers (Pali Rohár) # - Return ~0 data for invalid config read size (Pali Rohár) # - Disallow mapping interrupts on emulated bridges (Pali Rohár) # - Clear Root Port Memory & I/O Space Enable and Bus Master Enable at # initialization (Pali Rohár) # - Make type bits in Root Port I/O Base register read-only (Pali # Rohár) # - Disable Root Port windows when base/limit set to invalid values # (Pali Rohár) # - Set controller to Root Complex mode (Pali Rohár) # - Set Root Port Class Code to PCI Bridge (Pali Rohár) # - Update emulated Root Port secondary bus numbers to better reflect # the actual topology (Pali Rohár) # - Add PCI_BRIDGE_CTL_BUS_RESET support to emulated Root Ports so # pci_reset_secondary_bus() can reset connected devices (Pali Rohár) # - Add PCI_EXP_DEVCTL Error Reporting Enable support to emulated Root # Ports (Pali Rohár) # - Add PCI_EXP_RTSTA PME Status bit support to emulated Root Ports # (Pali Rohár) # - Add DEVCAP2, DEVCTL2 and LNKCTL2 support to emulated Root Ports on # Armada XP and newer devices (Pali Rohár) # - Export mvebu-mbus.c symbols to allow pci-mvebu.c to be a module # (Pali Rohár) # - Add support for compiling as a module (Pali Rohár) # # MediaTek PCIe controller driver: # - Assert PERST# for 100ms to allow power and clock to stabilize # (qizhong cheng) # # MediaTek PCIe Gen3 controller driver: # - Disable Mediatek DVFSRC voltage request since lack of DVFSRC to # respond to the request causes failure to exit L1 PM Substate # (Jianjun Wang) # # MediaTek MT7621 PCIe controller driver: # - Declare mt7621_pci_ops static (Sergio Paracuellos) # - Give pcibios_root_bridge_prepare() access to host bridge windows # (Sergio Paracuellos) # - Move MIPS I/O coherency unit setup from driver to # pcibios_root_bridge_prepare() (Sergio Paracuellos) # - Add missing MODULE_LICENSE() (Sergio Paracuellos) # - Allow COMPILE_TEST for all arches (Sergio Paracuellos) # # Microsoft Hyper-V host bridge driver: # - Add hv-internal interfaces to encapsulate arch IRQ dependencies # (Sunil Muthuswamy) # - Add arm64 Hyper-V vPCI support (Sunil Muthuswamy) # # Qualcomm PCIe controller driver: # - Undo PM setup in qcom_pcie_probe() error handling path (Christophe # JAILLET) # - Use __be16 type to store return value from cpu_to_be16() # (Manivannan Sadhasivam) # - Constify static dw_pcie_ep_ops (Rikard Falkeborn) # # Renesas R-Car PCIe controller driver: # - Fix aarch32 abort handler so it doesn't check the wrong bus clock # before accessing the host controller (Marek Vasut) # # TI Keystone PCIe controller driver: # - Add register offset for ti,syscon-pcie-id and ti,syscon-pcie-mode # DT properties (Kishon Vijay Abraham I) # # MicroSemi Switchtec management driver: # - Add Gen4 automotive device IDs (Kelvin Cao) # - Declare state_names[] as static so it's not allocated and # initialized for every call (Kelvin Cao) # # Host controller driver cleanups: # - Use of_device_get_match_data(), not of_match_device(), when we only # need the device data in altera, artpec6, cadence, designware-plat, # dra7xx, keystone, kirin (Fan Fei) # - Drop pointless of_device_get_match_data() cast in j721e (Bjorn # Helgaas) # - Drop redundant struct device * from j721e since struct cdns_pcie # already has one (Bjorn Helgaas) # - Rename driver structs to *_pcie in intel-gw, iproc, ls-gen4, # mediatek-gen3, microchip, mt7621, rcar-gen2, tegra194, uniphier, # xgene, xilinx, xilinx-cpm for consistency across drivers (Fan Fei) # - Fix invalid address space conversions in hisi, spear13xx (Bjorn # Helgaas) # # Miscellaneous: # - Sort Intel Device IDs by value (Andy Shevchenko) # - Change Capability offsets to hex to match spec (Baruch Siach) # - Correct misspellings (Krzysztof Wilczyński) # - Terminate statement with semicolon in pci_endpoint_test.c (Ming # Wang)" # # * tag 'pci-v5.17-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (151 commits) # PCI: mt7621: Allow COMPILE_TEST for all arches # PCI: mt7621: Add missing MODULE_LICENSE() # PCI: mt7621: Move MIPS setup to pcibios_root_bridge_prepare() # PCI: Let pcibios_root_bridge_prepare() access bridge->windows # PCI: mt7621: Declare mt7621_pci_ops static # PCI: brcmstb: Do not turn off WOL regulators on suspend # PCI: brcmstb: Add control of subdevice voltage regulators # PCI: brcmstb: Add mechanism to turn on subdev regulators # PCI: brcmstb: Split brcm_pcie_setup() into two funcs # dt-bindings: PCI: Add bindings for Brcmstb EP voltage regulators # dt-bindings: PCI: Correct brcmstb interrupts, interrupt-map. # PCI: brcmstb: Fix function return value handling # PCI: brcmstb: Do not use __GENMASK # PCI: brcmstb: Declare 'used' as bitmap, not unsigned long # PCI: hv: Add arm64 Hyper-V vPCI support # PCI: hv: Make the code arch neutral by adding arch specific interfaces # PCI: pciehp: Use down_read/write_nested(reset_lock) to fix lockdep errors # x86/PCI: Remove initialization of static variables to false # PCI: Use DWORD accesses for LTR, L1 SS to avoid erratum # misc: pci_endpoint_test: Terminate statement with semicolon # ... # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 d0a231f01e5b25bacd23e6edc7c979a18a517b2b # < make -s -j 48 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # < make -s -j 48 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 48 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig # make -s -j 48 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- vmlinux.o: warning: objtool: __do_fast_syscall_32()+0xa: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: do_syscall_64()+0x9: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: do_int80_syscall_32()+0x9: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: exc_general_protection()+0x22: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: fixup_bad_iret()+0x20: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_start()+0x5c: call to __kasan_check_write() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_gather_info()+0x5f: call to v8086_mode.constprop.0() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_read_aux()+0x8a: call to mca_msr_reg() leaves .noinstr.text section vmlinux.o: warning: objtool: do_machine_check()+0x27: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_severity_amd.constprop.0()+0xca: call to mce_severity_amd_smca() leaves .noinstr.text section vmlinux.o: warning: objtool: .text+0x533ee: call to stackleak_erase() leaves .noinstr.text section vmlinux.o: warning: objtool: .entry.text+0x143: call to stackleak_erase() leaves .noinstr.text section vmlinux.o: warning: objtool: .entry.text+0x10eb: call to stackleak_erase() leaves .noinstr.text section vmlinux.o: warning: objtool: .entry.text+0x17f9: call to stackleak_erase() leaves .noinstr.text section Completed OK # rm -rf /kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 # Build took: 0:33:15.931014