This project is mirrored from https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10.git.
Pull mirroring updated .
- Apr 02, 2025
-
-
Julio Faracco authored
Signed-off-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/638 ``` This series updates the kernel's driver core 'sysfs' subsystem with changes and preparations for more sysfs api cleanups that can come through all driver trees after this is out. With the above in place, also include the PCI tree's changes to Constify struct bin_attribute for sysfs, VPD, P2PDMA, and the IBM ACPI hotplug driver. JIRA: https://issues.redhat.com/browse/RHEL-85241 Signed-off-by:
Myron Stowe <mstowe@redhat.com> ``` Approved-by:
Rafael Aquini <raquini@redhat.com> Approved-by:
David Arcari <darcari@redhat.com> Approved-by:
Jocelyn Falempe <jfalempe@redhat.com> Approved-by:
John W. Linville <linville@redhat.com> Approved-by:
Mika Penttilä <mpenttil@redhat.com> Approved-by:
Corinna Vinschen <vinschen@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Approved-by:
Kamal Heib <kheib@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/411 JIRA: https://issues.redhat.com/browse/RHEL-24185 Update /proc/schedstat with fixes and improved information from upstream. AMD requested these and they don't carry a large risk. Signed-off-by:
Phil Auld <pauld@redhat.com> Approved-by:
Juri Lelli <juri.lelli@redhat.com> Approved-by:
Waiman Long <longman@redhat.com> Approved-by:
Rafael Aquini <raquini@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/634 JIRA: https://issues.redhat.com/browse/RHEL-82993 Upstream status: RHEL only We use special handling for BPF selftests variants. Add support for the cpuv4 variant. Signed-off-by:
Viktor Malik <vmalik@redhat.com> Approved-by:
Jan Stancek <jstancek@redhat.com> Approved-by:
Jerome Marchand <jmarchan@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/629 JIRA: https://issues.redhat.com/browse/RHEL-84541 Upstream Status: net.git commit 546d98393abc commit 546d98393abcf2f841e61163d95ed21fde346cc1 Author: Leon Romanovsky <leon@kernel.org> Date: Mon Feb 3 14:59:23 2025 +0200 bonding: delete always true device check XFRM API makes sure that xs->xso.dev is valid in all XFRM offload callbacks. There is no need to check it again. Signed-off-by:
Leon Romanovsky <leonro@nvidia.com> Acked-by:
Paolo Abeni <pabeni@redhat.com> Reviewed-by:
Nikolay Aleksandrov <razor@blackwall.org> Link: https://patch.msgid.link/0b2f8f5f09701bb43bbd83b94bfe5cb506b57adc.1738587150.git.leon@kernel.org Signed-off-by:
Jakub Kicinski <kuba@kernel.org> Signed-off-by:
Hangbin Liu <haliu@redhat.com> Approved-by:
Florian Westphal <fwestpha@redhat.com> Approved-by:
Xin Long <lxin@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/594 JIRA: https://issues.redhat.com/browse/RHEL-82698 CVE: CVE-2025-21837 Signed-off-by:
Jeff Moyer <jmoyer@redhat.com> Approved-by:
Ewan D. Milne <emilne@redhat.com> Approved-by:
Brian Foster <bfoster@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/495 JIRA: https://issues.redhat.com/browse/RHEL-81723 * 2afd96a4a0b1d62c7a44227e535b073926d73368 ALSA: hda/tas2781: Update tas2781 hda SPI driver * 325735e83d7d0016e7b61069df2570e910898466 ALSA: hda/tas2781: Fix index issue in tas2781 hda SPI driver Signed-off-by:
CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com> --- <small>Created 2025-02-28 13:13 UTC by backporter - [KWF FAQ](https://red.ht/kernel_workflow_doc) - [Slack #team-kernel-workflow](https://redhat-internal.slack.com/archives/C04LRUPMJQ5) - [Source](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/webhook/utils/backporter.py) - [Documentation](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/docs/README.backporter.md) - [Report an issue](https://gitlab.com/cki-project/kernel-workflow/-/issues/new?issue%5Btitle%5D=backporter%20webhook%20issue)</small > Approved-by:
Jaroslav Kysela <jkysela@redhat.com> Approved-by:
Tony Camuso <tcamuso@redhat.com> Approved-by:
John W. Linville <linville@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/462 JIRA: https://issues.redhat.com/browse/RHEL-80968 This is a backport of the patch series "Add support for AArch64 AMUv1-based average freq" (https://lore.kernel.org/all/20250131162439.3843071-1-beata.michalska@arm.com/ ) and its dependencies. The first patch in this MR is upstream in v6.14 (since rc3). The rest are now in Linus's master branch and slated for 6.15. Signed-off-by:
Jennifer Berringer <jberring@redhat.com> Approved-by:
David Arcari <darcari@redhat.com> Approved-by:
Mark Langsdorf <mlangsdo@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/619 Revert "cxl/acpi: Fix load failures due to single window creation failure" This commit was pinpointed as the cause of CXL being unavailable on certain Samsung machines. ## Approved Development Ticket(s) All submissions to CentOS Stream must reference a ticket in [Red Hat Jira](https://issues.redhat.com/). JIRA: https://issues.redhat.com/browse/RHEL-82540 Resolves: RHEL-82540 Signed-off-by:
John W. Linville <linville@redhat.com> Approved-by:
Myron Stowe <mstowe@redhat.com> Approved-by:
Lenny Szubowicz <lszubowi@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/457 JIRA: https://issues.redhat.com/browse/RHEL-80216 A small series of livepatch fixes for rhel-10.1 Signed-off-by:
Ryan Sullivan <rysulliv@redhat.com> Approved-by:
Joe Lawrence <joe.lawrence@redhat.com> Approved-by:
Rado Vrbovsky <rvrbovsk@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/648 ``` PCI updates from upstream v6.14: "Enumeration: - Make pci_stop_dev() and pci_destroy_dev() safe so concurrent callers can't stop a device multiple times, even as we migrate from the global pci_rescan_remove_lock to finer-grained locking (Keith Busch) - Improve pci_walk_bus() implementation by making it recursive and moving locking up to avoid need for a 'locked' parameter (Keith Busch) - Unexport pci_walk_bus_locked(), which is only used internally by the PCI core (Keith Busch) - Detect some Thunderbolt chips that are built-in and hence 'trustworthy' by a heuristic since the 'ExternalFacingPort' and 'usb4-host-interface' ACPI properties are not quite enough (Esther Shimanovich) Resource management: - Use PCI bus addresses (not CPU addresses) in 'ranges' properties when building dynamic DT nodes so systems where PCI and CPU addresses differ work correctly (Andrea della Porta) - Tidy resource sizing and assignment with helpers to reduce redundancy (Ilpo Järvinen) - Improve pdev_sort_resources() 'bogus alignment' warning to be more specific (Ilpo Järvinen) Driver binding: - Convert driver .remove_new() callbacks to .remove() again to finish the conversion from returning 'int' to being 'void' (Sergio Paracuellos) - Export pcim_request_all_regions(), a managed interface to request all BARs (Philipp Stanner) - Replace pcim_iomap_regions_request_all() with pcim_request_all_regions(), and pcim_iomap_table()[n] with pcim_iomap(n), in the following drivers: ahci, crypto qat, crypto octeontx2, intel_th, iwlwifi, ntb idt, serial rp2, ALSA korg1212 (Philipp Stanner) - Remove the now unused pcim_iomap_regions_request_all() (Philipp Stanner) - Export pcim_iounmap_region(), a managed interface to unmap and release a PCI BAR (Philipp Stanner) - Replace pcim_iomap_regions(mask) with pcim_iomap_region(n), and pcim_iounmap_regions(mask) with pcim_iounmap_region(n), in the following drivers: fpga dfl-pci, block mtip32xx, gpio-merrifield, cavium (Philipp Stanner) Error handling: - Add sysfs 'reset_subordinate' to reset the entire hierarchy below a bridge; previously Secondary Bus Reset could only be used when there was a single device below a bridge (Keith Busch) - Warn if we reset a running device where the driver didn't register pci_error_handlers notification callbacks (Keith Busch) ASPM: - Disable ASPM L1 before touching L1 PM Substates to follow the spec closer and avoid a CPU load timeout on some platforms (Ajay Agarwal) - Set devices below Intel VMD to D0 before enabling ASPM L1 Substates as required per spec for all L1 Substates changes (Jian-Hong Pan) Power management: - Enable starfive controller runtime PM before probing host bridge (Mayank Rana) - Enable runtime power management for host bridges (Krishna chaitanya chundru) Power control: - Use of_platform_device_create() instead of of_platform_populate() to create pwrctl platform devices so we can control it based on the child nodes (Manivannan Sadhasivam) - Create pwrctrl platform devices only if there's a relevant power supply property (Manivannan Sadhasivam) - Add device link from the pwrctl supplier to the PCI dev to ensure pwrctl drivers are probed before the PCI dev driver; this avoids a race where pwrctl could change device power state while the PCI driver was active (Manivannan Sadhasivam) - Find pwrctl device for removal with of_find_device_by_node() instead of searching all children of the parent (Manivannan Sadhasivam) - Rename 'pwrctl' to 'pwrctrl' to match new bandwidth controller ('bwctrl') and hotplug files (Bjorn Helgaas) Bandwidth control: - Add read/modify/write locking for Link Control 2, which is used to manage Link speed (Ilpo Järvinen) - Extract Link Bandwidth Management Status check into pcie_lbms_seen(), where it can be shared between the bandwidth controller and quirks that use it to help retrain failed links (Ilpo Järvinen) - Re-add Link Bandwidth notification support with updates to address the reasons it was previously reverted (Alexandru Gagniuc, Ilpo Järvinen) - Add pcie_set_target_speed() and related functionality so drivers can manage PCIe Link speed based on thermal or other constraints (Ilpo Järvinen) - Add a thermal cooling driver to throttle PCIe Links via the existing thermal management framework (Ilpo Järvinen) - Add a userspace selftest for the PCIe bandwidth controller (Ilpo Järvinen) PCI device hotplug: - Add hotplug controller driver for Marvell OCTEON multi-function device where function 0 has a management console interface to enable/disable and provision various personalities for the other functions (Shijith Thotton) - Retain a reference to the pci_bus for the lifetime of a pci_slot to avoid a use-after-free when the thunderbolt driver resets USB4 host routers on boot, causing hotplug remove/add of downstream docks or other devices (Lukas Wunner) - Remove unused cpcihp struct cpci_hp_controller_ops.hardware_test (Guilherme Giacomo Simoes) - Remove unused cpqphp struct ctrl_dbg.ctrl (Christophe JAILLET) - Use pci_bus_read_dev_vendor_id() instead of hand-coded presence detection in cpqphp (Ilpo Järvinen) - Simplify cpqphp enumeration, which is already simple-minded and doesn't handle devices below hot-added bridges (Ilpo Järvinen) Virtualization: - Add ACS quirk for Wangxun FF5xxx NICs, which don't advertise an ACS capability but do isolate functions as though PCI_ACS_RR and PCI_ACS_CR were set, so the functions can be in independent IOMMU groups (Mengyuan Lou) TLP Processing Hints (TPH): - Add and document TLP Processing Hints (TPH) support so drivers can enable and disable TPH and the kernel can save/restore TPH configuration (Wei Huang) - Add TPH Steering Tag support so drivers can retrieve Steering Tag values associated with specific CPUs via an ACPI _DSM to improve performance by directing DMA writes closer to their consumers (Wei Huang) Data Object Exchange (DOE): - Wait up to 1 second for DOE Busy bit to clear before writing a request to the mailbox to avoid failures if the mailbox is still busy from a previous transfer (Gregory Price) Endpoint framework: - Skip attempts to allocate from endpoint controller memory window if the requested size is larger than the window (Damien Le Moal) - Add and document pci_epc_mem_map() and pci_epc_mem_unmap() to handle controller-specific size and alignment constraints, and add test cases to the endpoint test driver (Damien Le Moal) - Implement dwc pci_epc_ops.align_addr() so pci_epc_mem_map() can observe DWC-specific alignment requirements (Damien Le Moal) - Synchronously cancel command handler work in endpoint test before cleaning up DMA and BARs (Damien Le Moal) - Respect endpoint page size in dw_pcie_ep_align_addr() (Niklas Cassel) - Use dw_pcie_ep_align_addr() in dw_pcie_ep_raise_msi_irq() and dw_pcie_ep_raise_msix_irq() instead of open coding the equivalent (Niklas Cassel) - Avoid NULL dereference if Modem Host Interface Endpoint lacks 'mmio' DT property (Zhongqiu Han) - Release PCI domain ID of Endpoint controller parent (not controller itself) and before unregistering the controller, to avoid use-after-free (Zijun Hu) - Clear secondary (not primary) EPC in pci_epc_remove_epf() when removing the secondary controller associated with an NTB (Zijun Hu) Cadence PCIe controller driver: - Lower severity of 'phy-names' message (Bartosz Wawrzyniak) Freescale i.MX6 PCIe controller driver: - Fix suspend/resume support on i.MX6QDL, which has a hardware erratum that prevents use of L2 (Stefan Eichenberger) Intel VMD host bridge driver: - Add 0xb60b and 0xb06f Device IDs for client SKUs (Nirmal Patel) MediaTek PCIe Gen3 controller driver: - Update mediatek-gen3 DT binding to require the exact number of clocks for each SoC (Fei Shao) - Add support for DT 'max-link-speed' and 'num-lanes' properties to restrict the link speed and width (AngeloGioacchino Del Regno) Microchip PolarFlare PCIe controller driver: - Add DT and driver support for using either of the two PolarFire Root Ports (Conor Dooley) NVIDIA Tegra194 PCIe controller driver: - Move endpoint controller cleanups that depend on refclk from the host to the notifier that tells us the host has deasserted PERST#, when refclk should be valid (Manivannan Sadhasivam) Qualcomm PCIe controller driver: - Add qcom SAR2130P DT binding with an additional clock (Dmitry Baryshkov) - Enable MSI interrupts if 'global' IRQ is supported, since a previous commit unintentionally masked them (Manivannan Sadhasivam) - Move endpoint controller cleanups that depend on refclk from the host to the notifier that tells us the host has deasserted PERST#, when refclk should be valid (Manivannan Sadhasivam) - Add DT binding and driver support for IPQ9574, with Synopsys IP v5.80a and Qcom IP 1.27.0 (devi priya) - Move the OPP "operating-points-v2" table from the qcom,pcie-sm8450.yaml DT binding to qcom,pcie-common.yaml, where it can be used by other Qcom platforms (Qiang Yu) - Add 'global' SPI interrupt for events like link-up, link-down to qcom,pcie-x1e80100 DT binding so we can start enumeration when the link comes up (Qiang Yu) - Disable ASPM L0s for qcom,pcie-x1e80100 since the PHY is not tuned to support this (Qiang Yu) - Add ops_1_21_0 for SC8280X family SoC, which doesn't use the 'iommu-map' DT property and doesn't need BDF-to-SID translation (Qiang Yu) Rockchip PCIe controller driver: - Define ROCKCHIP_PCIE_AT_SIZE_ALIGN to replace magic 256 endpoint .align value (Damien Le Moal) - When unmapping an endpoint window, compute the region index instead of searching for it, and verify that the address was mapped (Damien Le Moal) - When mapping an endpoint window, verify that the address hasn't been mapped already (Damien Le Moal) - Implement pci_epc_ops.align_addr() for rockchip-ep (Damien Le Moal) - Fix MSI IRQ data mapping to observe the alignment constraint, which fixes intermittent page faults in memcpy_toio() and memcpy_fromio() (Damien Le Moal) - Rename rockchip_pcie_parse_ep_dt() to rockchip_pcie_ep_get_resources() for consistency with similar DT interfaces (Damien Le Moal) - Skip the unnecessary link train in rockchip_pcie_ep_probe() and do it only in the endpoint start operation (Damien Le Moal) - Implement pci_epc_ops.stop_link() to disable link training and controller configuration (Damien Le Moal) - Attempt link training at 5 GT/s when both partners support it (Damien Le Moal) - Add a handler for PERST# signal so we can detect host-initiated resets and start link training after PERST# is deasserted (Damien Le Moal) Synopsys DesignWare PCIe controller driver: - Clear outbound address on unmap so dw_pcie_find_index() won't match an ATU index that was already unmapped (Damien Le Moal) - Use of_property_present() instead of of_property_read_bool() when testing for presence of non-boolean DT properties (Rob Herring) - Advertise 1MB size if endpoint supports Resizable BARs, which was inadvertently lost in v6.11 (Niklas Cassel) TI J721E PCIe driver: - Add PCIe support for J722S SoC (Siddharth Vadapalli) - Delay PCIE_T_PVPERL_MS (100 ms), not just PCIE_T_PERST_CLK_US (100 us), before deasserting PERST# to ensure power and refclk are stable (Siddharth Vadapalli) TI Keystone PCIe controller driver: - Set the 'ti,keystone-pcie' mode so v3.65a devices work in Root Complex mode (Kishon Vijay Abraham I) - Try to avoid unrecoverable SError for attempts to issue config transactions when the link is down; this is racy but the best we can do (Kishon Vijay Abraham I) Miscellaneous: - Reorganize kerneldoc parameter names to match order in function signature (Julia Lawall) - Fix sysfs reset_method_store() memory leak (Todd Kjos) - Simplify pci_create_slot() (Ilpo Järvinen) - Fix incorrect printf format specifiers in pcitest (Luo Yifan)" Related post v6.14 (v6.15) Fixes 4c8c0ffd41d1 PCI: layerscape: Fix arg_count to syscon_regmap_lookup_by 2a93192d2058 misc: pci_endpoint_test: Fix pci_endpoint_test_bars_read_bar 86c2345aff3f tools/Makefile: Remove pci target Merge tag 'pci-v6.14-fixes-3' of git://git.kernel.org/../git/pci/pci https://lkml.org/lkml/2025/2/14/1616 commit 78a632a2086c5d5468b0e088a97b26e47c569567 Merge: 3f2ca7b8b33d 81f64e925c29 2 files changed, 5 insertions(+), 3 deletions(-) Merge tag 'pci-v6.14-fixes-2' of git://git.kernel.org/../git/pci/pci https://lkml.org/lkml/2025/2/6/1764 commit bb066fe812d6fb3a9d01c073d9f1e2fd5a63403b Merge: 5b734b49de8e 6f64b83d9fe9 2 files changed, 1 insertion(+), 4 deletions(-) Merge tag 'pci-v6.14-fixes-1' of git://git.kernel.org/pub/../git/pci/pci https://lkml.org/lkml/2025/1/31/779 commit 0c0746f9dcd6f42e742d2813f9044e12f1497f8a Merge: 1b5f3c51fbb8 d555ed45a5a1 1 file changed, 19 insertions(+), 15 deletions(-) Merge tag 'pci-v6.14-changes' of git://git.kernel.org/pub/scm/../pci/pci https://lkml.org/lkml/2025/01/24/940 commit 647d69605c70368d54fc012fce8a43e8e5955b04 Merge: 184a0997fb77 10ff5bbfd4b0 89 files changed, 2248 insertions(+), 1670 deletions(-) JIRA: https://issues.redhat.com/browse/RHEL-83611 Signed-off-by:
Myron Stowe <mstowe@redhat.com> ``` Approved-by:
John W. Linville <linville@redhat.com> Approved-by:
David Arcari <darcari@redhat.com> Approved-by:
Eric Chanudet <echanude@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/647 Description: Update drivers/platform/x86/pmc includes support for Arrow Lake U/H support and Panther Lake support JIRA: https://issues.redhat.com/browse/RHEL-47465 Build Info: 67156193 Tested: Successful platform test results on Intel (intel-pantherlake-h-02) system. Signed-off-by:
Steve Best <sbest@redhat.com> Approved-by:
Tony Camuso <tcamuso@redhat.com> Approved-by:
David Arcari <darcari@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/421 JIRA: https://issues.redhat.com/browse/RHEL-80508 CVE: CVE-2024-53216 Comment: CVE identifies a patch which is reverted in the same release in favor of a different fix. Four patches included in this MR fix the problem that the CVE in question described. Signed-off-by:
Olga Kornievskaia <okorniev@redhat.com> Approved-by:
Benjamin Coddington <bcodding@redhat.com> Approved-by:
Scott Mayhew <smayhew@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
Julio Faracco authored
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/578 JIRA: https://issues.redhat.com/browse/RHEL-83372 CVE: CVE-2025-21857 ``` commit 071ed42cff4fcdd89025d966d48eabef59913bf2 Author: Pierre Riteau <pierre@stackhpc.com> Date: Thu Feb 13 23:36:10 2025 +0100 net/sched: cls_api: fix error handling causing NULL dereference tcf_exts_miss_cookie_base_alloc() calls xa_alloc_cyclic() which can return 1 if the allocation succeeded after wrapping. This was treated as an error, with value 1 returned to caller tcf_exts_init_ex() which sets exts->actions to NULL and returns 1 to caller fl_change(). fl_change() treats err == 1 as success, calling tcf_exts_validate_ex() which calls tcf_action_init() with exts->actions as argument, where it is dereferenced. Example trace: BUG: kernel NULL pointer dereference, address: 0000000000000000 CPU: 114 PID: 16151 Comm: handler114 Kdump: loaded Not tainted 5.14.0-503.16.1.el9_5.x86_64 #1 RIP: 0010:tcf_action_init+0x1f8/0x2c0 Call Trace: tcf_action_init+0x1f8/0x2c0 tcf_exts_validate_ex+0x175/0x190 fl_change+0x537/0x1120 [cls_flower] Fixes: 80cd22c3 ("net/sched: cls_api: Support hardware miss to tc action") Signed-off-by:
Pierre Riteau <pierre@stackhpc.com> Reviewed-by:
Michal Swiatkowski <michal.swiatkowski@linux.intel.com> Link: https://patch.msgid.link/20250213223610.320278-1-pierre@stackhpc.com Signed-off-by:
Jakub Kicinski <kuba@kernel.org>```> Signed-off-by:
CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com> --- <small>Created 2025-03-13 07:56 UTC by backporter - [KWF FAQ](https://red.ht/kernel_workflow_doc) - [Slack #team-kernel-workflow](https://redhat-internal.slack.com/archives/C04LRUPMJQ5) - [Source](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/webhook/utils/backporter.py) - [Documentation](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/docs/README.backporter.md) - [Report an issue](https://gitlab.com/cki-project/kernel-workflow/-/issues/new?issue%5Btitle%5D=backporter%20webhook%20issue)</small > Approved-by:
Xin Long <lxin@redhat.com> Approved-by:
Antoine Tenart <atenart@redhat.com> Approved-by:
CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by:
Julio Faracco <jfaracco@redhat.com>
-
- Mar 31, 2025
-
-
Jan Stancek authored
JIRA: INTERNAL Upstream Status: RHEL only Omit changes to Makefile.rhelver, 10.0 KABI (but include mm struct padding) and d67259ef ("Revert "smb: client: fix chmod(2) regression with ATTR_READONLY""). Signed-off-by:
Jan Stancek <jstancek@redhat.com>
-
- Mar 29, 2025
-
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 4c8c0ffd41d16cf08ccb0d3626beb54adfe5450a commit 4c8c0ffd41d16cf08ccb0d3626beb54adfe5450a Author: Ioana Ciornei <ioana.ciornei@nxp.com> Date: Thu Mar 27 17:19:49 2025 +0200 PCI: layerscape: Fix arg_count to syscon_regmap_lookup_by_phandle_args() The arg_count parameter to syscon_regmap_lookup_by_phandle_args() represents the number of argument cells following the phandle. In this case, the number of arguments should be 1 instead of 2 since the dt property looks like this: fsl,pcie-scfg = <&scfg 0>; Without this fix, layerscape-pcie fails with the following message on LS1043A: OF: /soc/pcie@3500000: phandle scfg@1570000 needs 2, found 1 layerscape-pcie 3500000.pcie: No syscfg phandle specified layerscape-pcie 3500000.pcie: probe with driver layerscape-pcie failed with error -22 Link: https://lore.kernel.org/r/20250327151949.2765193-1-ioana.ciornei@nxp.com Fixes: 149fc35734e5 ("PCI: layerscape: Use syscon_regmap_lookup_by_phandle_args") Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Reviewed-by:
Frank Li <Frank.Li@nxp.com> Reviewed-by:
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by:
Roy Zang <Roy.Zang@nxp.com> Cc: stable@vger.kernel.org Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 2a93192d2058507b2e39b590fc1efa0e03344136 commit 2a93192d2058507b2e39b590fc1efa0e03344136 Author: Niklas Cassel <cassel@kernel.org> Date: Tue Feb 4 12:06:41 2025 +0100 misc: pci_endpoint_test: Fix pci_endpoint_test_bars_read_bar() error handling Commit f26d37ee9bda ("misc: pci_endpoint_test: Fix IOCTL return value") changed the return value of pci_endpoint_test_bars_read_bar() from false to -EINVAL on error, however, it failed to update the error handling. Fixes: f26d37ee9bda ("misc: pci_endpoint_test: Fix IOCTL return value") Signed-off-by:
Niklas Cassel <cassel@kernel.org> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Link: https://lore.kernel.org/r/20250204110640.570823-2-cassel@kernel.org Signed-off-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 86c2345aff3f5b48b53a73a15ffe6e0930e4170f commit 86c2345aff3f5b48b53a73a15ffe6e0930e4170f Author: Jianfeng Liu <liujianfeng1994@gmail.com> Date: Mon Feb 17 19:51:52 2025 +0800 tools/Makefile: Remove pci target e19bde2269ca ("selftests: Move PCI Endpoint tests from tools/pci to Kselftests") moves tools/pci/ to tools/testing/selftests/pci_endpoint, which causes build failure when running "make pci" under tools: linux/tools$ make pci DESCEND pci make[1]: *** No targets specified and no makefile found. Stop. make: *** [Makefile:73: pci] Error 2 Update the top level tools/Makefile to remove reference to building, installing and cleaning pci components. Link: https://lore.kernel.org/r/20250217115159.537920-1-liujianfeng1994@gmail.com Fixes: e19bde2269ca ("selftests: Move PCI Endpoint tests from tools/pci to Kselftests") Signed-off-by:
Jianfeng Liu <liujianfeng1994@gmail.com> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 81f64e925c29fe6e99f04b131fac1935ac931e81 commit 81f64e925c29fe6e99f04b131fac1935ac931e81 Author: Bjorn Helgaas <bhelgaas@google.com> Date: Wed Feb 12 13:35:16 2025 -0600 PCI: Avoid FLR for Mediatek MT7922 WiFi The Mediatek MT7922 WiFi device advertises FLR support, but it apparently does not work, and all subsequent config reads return ~0: pci 0000:01:00.0: [14c3:0616] type 00 class 0x028000 PCIe Endpoint pciback 0000:01:00.0: not ready 65535ms after FLR; giving up After an FLR, pci_dev_wait() waits for the device to become ready. Prior to d591f680 ("PCI: Wait for device readiness with Configuration RRS"), it polls PCI_COMMAND until it is something other that PCI_POSSIBLE_ERROR (~0). If it times out, pci_dev_wait() returns -ENOTTY and __pci_reset_function_locked() tries the next available reset method. Typically this is Secondary Bus Reset, which does work, so the MT7922 is eventually usable. After d591f680, if Configuration Request Retry Status Software Visibility (RRS SV) is enabled, pci_dev_wait() polls PCI_VENDOR_ID until it is something other than the special 0x0001 Vendor ID that indicates a completion with RRS status. When RRS SV is enabled, reads of PCI_VENDOR_ID should return either 0x0001, i.e., the config read was completed with RRS, or a valid Vendor ID. On the MT7922, it seems that all config reads after FLR return ~0 indefinitely. When pci_dev_wait() reads PCI_VENDOR_ID and gets 0xffff, it assumes that's a valid Vendor ID and the device is now ready, so it returns with success. After pci_dev_wait() returns success, we restore config space and continue. Since the MT7922 is not actually ready after the FLR, the restore fails and the device is unusable. We considered changing pci_dev_wait() to continue polling if a PCI_VENDOR_ID read returns either 0x0001 or 0xffff. This "works" as it did before d591f680, although we have to wait for the timeout and then fall back to SBR. But it doesn't work for SR-IOV VFs, which *always* return 0xffff as the Vendor ID. Mark Mediatek MT7922 WiFi devices to avoid the use of FLR completely. This will cause fallback to another reset method, such as SBR. Link: https://lore.kernel.org/r/20250212193516.88741-1-helgaas@kernel.org Fixes: d591f680 ("PCI: Wait for device readiness with Configuration RRS") Link: https://github.com/QubesOS/qubes-issues/issues/9689#issuecomment-2582927149 Link: https://lore.kernel.org/r/Z4pHll_6GX7OUBzQ@mail-itl Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Tested-by:
Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com> Cc: stable@vger.kernel.org Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 472ff48e2c09e49f2f90eeb6922f747306559506 commit 472ff48e2c09e49f2f90eeb6922f747306559506 Author: Alex Williamson <alex.williamson@redhat.com> Date: Wed Feb 12 11:53:32 2025 -0700 PCI: Fix BUILD_BUG_ON usage for old gcc As reported in the below link, it seems older versions of gcc cannot determine that the howmany variable is known for all callers. Include a test so that newer compilers can enforce this sanity check and older compilers can still work. Add __always_inline attribute to give the compiler an even better chance to know the inputs. Link: https://lore.kernel.org/r/20250212185337.293023-1-alex.williamson@redhat.com Fixes: 4453f360862e ("PCI: Batch BAR sizing operations") Reported-by:
Oleg Nesterov <oleg@redhat.com> Link: https://lore.kernel.org/all/20250209154512.GA18688@redhat.com Signed-off-by:
Alex Williamson <alex.williamson@redhat.com> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Tested-by:
Oleg Nesterov <oleg@redhat.com> Tested-by:
Mitchell Augustin <mitchell.augustin@canonical.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 7507eb3e7bfac7c3baef8dd377fdf5871eefd42b commit 7507eb3e7bfac7c3baef8dd377fdf5871eefd42b Author: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Date: Fri Jan 31 17:29:13 2025 +0200 PCI/ASPM: Fix L1SS saving Commit 1db806ec06b7 ("PCI/ASPM: Save parent L1SS config in pci_save_aspm_l1ss_state()") aimed to perform L1SS config save for both the Upstream Port and its upstream bridge when handling an Upstream Port, which matches what the L1SS restore side does. However, parent->state_saved can be set true at an earlier time when the upstream bridge saved other parts of its state. Then later when attempting to save the L1SS config while handling the Upstream Port, parent->state_saved is true in pci_save_aspm_l1ss_state() resulting in early return and skipping saving bridge's L1SS config because it is assumed to be already saved. Later on restore, junk is written into L1SS config which causes issues with some devices. Remove parent->state_saved check and unconditionally save L1SS config also for the upstream bridge from an Upstream Port which ought to be harmless from correctness point of view. With the Upstream Port check now present, saving the L1SS config more than once for the bridge is no longer a problem (unlike when the parent->state_saved check got introduced into the fix during its development). Link: https://lore.kernel.org/r/20250131152913.2507-1-ilpo.jarvinen@linux.intel.com Fixes: 1db806ec06b7 ("PCI/ASPM: Save parent L1SS config in pci_save_aspm_l1ss_state()") Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219731 Reported-by:
Niklāvs Koļesņikovs <pinkflames.linux@gmail.com> Reported by: Rafael J. Wysocki <rafael@kernel.org> Closes: https://lore.kernel.org/r/CAJZ5v0iKmynOQ5vKSQbg1J_FmavwZE-nRONovOZ0mpMVauheWg@mail.gmail.com Reported-by:
Paul Menzel <pmenzel@molgen.mpg.de> Closes: https://lore.kernel.org/r/d7246feb-4f3f-4d0c-bb64-89566b170671@molgen.mpg.de Signed-off-by:
Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Tested-by:
Niklāvs Koļesņikovs <pinkflames.linux@gmail.com> Tested-by: Paul Menzel <pmenzel@molgen.mpg.de> # Dell XPS 13 9360 Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: d555ed45a5a10a813528c7685f432369d536ae3d commit d555ed45a5a10a813528c7685f432369d536ae3d Author: Takashi Iwai <tiwai@suse.de> Date: Thu Oct 31 14:42:56 2024 +0100 PCI: Restore original INTX_DISABLE bit by pcim_intx() pcim_intx() tries to restore the INTx bit at removal via devres, but there is a chance that it restores a wrong value. Because the value to be restored is blindly assumed to be the negative of the enable argument, when a driver calls pcim_intx() unnecessarily for the already enabled state, it'll restore to the disabled state in turn. That is, the function assumes the case like: // INTx == 1 pcim_intx(pdev, 0); // old INTx value assumed to be 1 -> correct but it might be like the following, too: // INTx == 0 pcim_intx(pdev, 0); // old INTx value assumed to be 1 -> wrong Also, when a driver calls pcim_intx() multiple times with different enable argument values, the last one will win no matter what value it is. This can lead to inconsistency, e.g. // INTx == 1 pcim_intx(pdev, 0); // OK ... pcim_intx(pdev, 1); // now old INTx wrongly assumed to be 0 This patch addresses those inconsistencies by saving the original INTx state at the first pcim_intx() call. For that, get_or_create_intx_devres() is folded into pcim_intx() caller side; it allows us to simply check the already allocated devres and record the original INTx along with the devres_alloc() call. Link: https://lore.kernel.org/r/20241031134300.10296-1-tiwai@suse.de Fixes: 25216afc ("PCI: Add managed pcim_intx()") Link: https://lore.kernel.org/87v7xk2ps5.wl-tiwai@suse.de Signed-off-by:
Takashi Iwai <tiwai@suse.de> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Reviewed-by:
Philipp Stanner <pstanner@redhat.com> Cc: stable@vger.kernel.org # v6.11+ Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: b388face5f169e7a41c1b5e1cdd20515160a83b3 commit b388face5f169e7a41c1b5e1cdd20515160a83b3 Author: Akihiko Odaki <akihiko.odaki@daynix.com> Date: Sun Sep 15 10:36:58 2024 +0900 Documentation: Fix pci=config_acs= example The documentation currently says: config_acs= Format: <ACS flags>@<pci_dev>[; ...] Specify one or more PCI devices (in the format specified above) optionally prepended with flags and separated by semicolons. The respective capabilities will be enabled, disabled or unchanged based on what is specified in flags. (...) For example, pci=config_acs=10x would configure all devices that support ACS to enable P2P Request Redirect, disable Translation Blocking, and leave Source Validation unchanged from whatever power-up or firmware set it to. See the complete documentation at: https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html However, a flag specification always needs to be suffixed with "@" and a PCI valid device address, which is missing in this example. Also, to configure all devices that support ACS, the flag needs to be suffixed with "@pci:0:0", for the ACS support to be enabled. Fix the documentation so the example is correct. Link: https://lore.kernel.org/r/20240915-acs-v1-1-b9ee536ee9bd@daynix.com Signed-off-by:
Akihiko Odaki <akihiko.odaki@daynix.com> [kwilczynski: commit log] Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 188973e3536a18aebee3af486cd3d2ef82b09f88 commit 188973e3536a18aebee3af486cd3d2ef82b09f88 Author: Dongdong Zhang <zhangdongdong@eswincomputing.com> Date: Mon Dec 16 09:35:36 2024 +0800 PCI: Remove redundant PCI_VSEC_HDR and PCI_VSEC_HDR_LEN_SHIFT Remove duplicate macro PCI_VSEC_HDR and its related macro PCI_VSEC_HDR_LEN_SHIFT from pci_regs.h to avoid redundancy and inconsistencies. Update VFIO PCI code to use PCI_VNDR_HEADER and PCI_VNDR_HEADER_LEN() for consistent naming and functionality. These changes aim to streamline header handling while minimizing impact, given the niche usage of these macros in userspace. Link: https://lore.kernel.org/r/20241216013536.4487-1-zhangdongdong@eswincomputing.com Signed-off-by:
Dongdong Zhang <zhangdongdong@eswincomputing.com> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Acked-by:
Alex Williamson <alex.williamson@redhat.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 816875a468f40a601da001d7518ddbf363381a18 commit 816875a468f40a601da001d7518ddbf363381a18 Author: Wolfram Sang <wsa+renesas@sang-engineering.com> Date: Mon Nov 18 08:29:10 2024 +0100 PCI: Don't include 'pm_wakeup.h' directly The header clearly states that it does not want to be included directly, only via 'device.h'. The 'platform_device.h' works equally well. Thus, remove the direct inclusion. Link: https://lore.kernel.org/r/20241118072917.3853-12-wsa+renesas@sang-engineering.com Signed-off-by:
Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: e10c5cbd1c912c06d887c8a1980ac57e21d87b6f commit e10c5cbd1c912c06d887c8a1980ac57e21d87b6f Author: Lukas Wunner <lukas@wunner.de> Date: Mon Dec 16 20:18:41 2024 +0100 PCI: Update code comment on PCI_EXP_LNKCAP_SLS for PCIe r3.0 Niklas notes that the code comment on the PCI_EXP_LNKCAP_SLS macro is outdated as it reflects the meaning of the field prior to PCIe r3.0. Update it to avoid confusion. Closes: https://lore.kernel.org/r/70829798889c6d779ca0f6cd3260a765780d1369.camel@kernel.org Link: https://lore.kernel.org/r/6152bd17cbe0876365d5f4624fc317529f4bbc85.1734376438.git.lukas@wunner.de Reported-by:
Niklas Schnelle <niks@kernel.org> Signed-off-by:
Lukas Wunner <lukas@wunner.de> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Reviewed-by:
Niklas Schnelle <schnelle@linux.ibm.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 4eea7596b8fb5c204f7a454a5166ebdcb6b6c72a commit 4eea7596b8fb5c204f7a454a5166ebdcb6b6c72a Author: Thippeswamy Havalige <thippesw@amd.com> Date: Sun Sep 22 11:43:18 2024 +0530 PCI: xilinx-cpm: Add support for Versal CPM5 Root Port Controller 1 Add support for the Xilinx Versal CPM5 Root Port Controller 1. The key difference between Controller 0 and Controller 1 lies in the platform-specific error interrupt bits, which are located at different register offsets. To handle these differences, updated variant structure to hold the following platform-specific details: - Interrupt status register offset (ir_status) - Interrupt enable register offset (ir_enable) - Miscellaneous interrupt values (ir_misc_value) The driver differentiates between Controller 0 and Controller 1 using the compatible string in the device tree. This ensures that the appropriate register offsets are used for each controller, allowing for correct handling of platform-specific interrupts and initialization. Link: https://lore.kernel.org/r/20240922061318.2653503-3-thippesw@amd.com Signed-off-by:
Thippeswamy Havalige <thippesw@amd.com> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 5c911b4659d55580a15150b7845f13d04c070112 commit 5c911b4659d55580a15150b7845f13d04c070112 Author: Thippeswamy Havalige <thippesw@amd.com> Date: Sun Sep 22 11:43:17 2024 +0530 dt-bindings: PCI: xilinx-cpm: Add compatible string for CPM5 host1 The Xilinx Versal premium series has CPM5 block which supports two typeA Root Port controller functionality at Gen5 speed. Add compatible string to distinguish between two CPM5 rootport controller1. since Legacy and error interrupt register and bits for both the controllers are at different offsets. Link: https://lore.kernel.org/r/20240922061318.2653503-2-thippesw@amd.com Signed-off-by:
Thippeswamy Havalige <thippesw@amd.com> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Acked-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Acked-by:
Krzysztof Kozlowski <krzk@kernel.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 500969661b0294e0442bc516a9e272e7e8561d95 commit 500969661b0294e0442bc516a9e272e7e8561d95 Author: Anand Moon <linux.amoon@gmail.com> Date: Mon Dec 2 20:41:44 2024 +0530 PCI: rockchip: Refactor rockchip_pcie_disable_clocks() signature Refactor rockchip_pcie_disable_clocks() to accept a struct rockchip_pcie pointer instead of a void pointer thus improving type safety and code readability by explicitly specifying the expected data type. Link: https://lore.kernel.org/r/20241202151150.7393-4-linux.amoon@gmail.com Signed-off-by:
Anand Moon <linux.amoon@gmail.com> Signed-off-by:
Lorenzo Pieralisi <lpieralisi@kernel.org> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 18715931a5c08d199d14df116832d88dc4df48c5 commit 18715931a5c08d199d14df116832d88dc4df48c5 Author: Anand Moon <linux.amoon@gmail.com> Date: Mon Dec 2 20:41:43 2024 +0530 PCI: rockchip: Simplify reset control handling by using reset_control_bulk*() function Currently, the driver acquires and asserts/deasserts the resets individually thereby making the driver complex to read. This can be simplified by using the reset_control_bulk() APIs. Use devm_reset_control_bulk_get_exclusive() API to acquire all the resets and use reset_control_bulk_{assert/deassert}() APIs to assert/deassert them in bulk. Following the recommendations in 'Rockchip RK3399 TRM v1.3 Part2': 1. Split the reset controls into two groups as per section '17.5.8.1.1 PCIe as Root Complex'. 2. Deassert the 'Pipe, MGMT Sticky, MGMT, Core' resets in groups as per section '17.5.8.1.1 PCIe as Root Complex'. This is accomplished using the reset_control_bulk APIs. Link: https://lore.kernel.org/r/20241202151150.7393-3-linux.amoon@gmail.com Co-developed-by:
Dan Carpenter <dan.carpenter@linaro.org> Signed-off-by:
Anand Moon <linux.amoon@gmail.com> Signed-off-by:
Lorenzo Pieralisi <lpieralisi@kernel.org> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> [kwilczynski: squash error handling fix from https://lore.kernel.org/r/7da6ac56-af55-4436-9597-6af24df8122c@stanley.mountain ] Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: abdd4c8ea7d75308315a15cfb97d2eabfb4d052b commit abdd4c8ea7d75308315a15cfb97d2eabfb4d052b Author: Anand Moon <linux.amoon@gmail.com> Date: Mon Dec 2 20:41:42 2024 +0530 PCI: rockchip: Simplify clock handling by using clk_bulk*() functions Currently, the driver acquires clocks and prepare/enable/disable/unprepare the clocks individually thereby making the driver complex to read. The driver can be simplified by using the clk_bulk*() APIs. Use: - devm_clk_bulk_get_all() API to acquire all the clocks - clk_bulk_prepare_enable() to prepare/enable clocks - clk_bulk_disable_unprepare() APIs to disable/unprepare them in bulk Link: https://lore.kernel.org/r/20241202151150.7393-2-linux.amoon@gmail.com Signed-off-by:
Anand Moon <linux.amoon@gmail.com> Signed-off-by:
Lorenzo Pieralisi <lpieralisi@kernel.org> [bhelgaas: squash error handling fix from https://lore.kernel.org/r/20250106153041.55267-1-linux.amoon@gmail.com ] Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 2d2da5a4c1b4509f6f7e5a8db015cd420144beb4 commit 2d2da5a4c1b4509f6f7e5a8db015cd420144beb4 Author: King Dix <kingdix10@qq.com> Date: Thu Jan 9 08:50:18 2025 +0800 PCI: rcar-ep: Fix incorrect variable used when calling devm_request_mem_region() The rcar_pcie_parse_outbound_ranges() uses the devm_request_mem_region() macro to request a needed resource. A string variable that lives on the stack is then used to store a dynamically computed resource name, which is then passed on as one of the macro arguments. This can lead to undefined behavior. Depending on the current contents of the memory, the manifestations of errors may vary. One possible output may be as follows: $ cat /proc/iomem 30000000-37ffffff : 38000000-3fffffff : Sometimes, garbage may appear after the colon. In very rare cases, if no NULL-terminator is found in memory, the system might crash because the string iterator will overrun which can lead to access of unmapped memory above the stack. Thus, fix this by replacing outbound_name with the name of the previously requested resource. With the changes applied, the output will be as follows: $ cat /proc/iomem 30000000-37ffffff : memory2 38000000-3fffffff : memory3 Fixes: 2a6d0d63 ("PCI: rcar: Add endpoint mode support") Link: https://lore.kernel.org/r/tencent_DBDCC19D60F361119E76919ADAB25EC13C06@qq.com Tested-by:
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Signed-off-by:
King Dix <kingdix10@qq.com> [kwilczynski: commit log] Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 26cdda544479341d73512f5cf9cf4bab080c11c9 commit 26cdda544479341d73512f5cf9cf4bab080c11c9 Author: Liao Chen <liaochen4@huawei.com> Date: Tue Sep 3 13:23:11 2024 +0000 PCI: mvebu: Enable module autoloading Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded based on the alias from of_device_id table. Link: https://lore.kernel.org/r/20240903132311.961646-1-liaochen4@huawei.com Signed-off-by:
Liao Chen <liaochen4@huawei.com> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 04aa999eb96fdc8d3cf2b2d98363d6372befaef2 commit 04aa999eb96fdc8d3cf2b2d98363d6372befaef2 Author: Conor Dooley <conor.dooley@microchip.com> Date: Fri Oct 11 15:00:43 2024 +0100 dt-bindings: PCI: microchip,pcie-host: Allow dma-noncoherent PolarFire SoC may be configured in a way that requires non-coherent DMA handling. On RISC-V, buses are coherent by default & the dma-noncoherent property is required to denote buses or devices that are non-coherent. Link: https://lore.kernel.org/r/20241011140043.1250030-4-daire.mcnamara@microchip.com Signed-off-by:
Conor Dooley <conor.dooley@microchip.com> Signed-off-by:
Daire McNamara <daire.mcnamara@microchip.com> Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Acked-by:
Rob Herring <robh@kernel.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 1390a33b3d04fdf6ba4e3e7082107a12027fc188 commit 1390a33b3d04fdf6ba4e3e7082107a12027fc188 Author: Daire McNamara <daire.mcnamara@microchip.com> Date: Fri Oct 11 15:00:42 2024 +0100 PCI: microchip: Set inbound address translation for coherent or non-coherent mode On Microchip PolarFire SoC the PCIe Root Port can be behind one of three general purpose Fabric Interface Controller (FIC) buses that encapsulates an AXI-S bus. Depending on which FIC(s) the Root Port is connected through to CPU space, and what address translation is done by that FIC, the Root Port driver's inbound address translation may vary. For all current supported designs and all future expected designs, inbound address translation done by a FIC on PolarFire SoC varies depending on whether PolarFire SoC is operating in coherent DMA mode or noncoherent DMA mode. The setup of the outbound address translation tables in the Root Port driver only needs to handle these two cases. Setup the inbound address translation tables to one of two address translations, depending on whether the Root Port is being used with coherent DMA or noncoherent DMA. Link: https://lore.kernel.org/r/20241011140043.1250030-3-daire.mcnamara@microchip.com Fixes: 6f15a9c9 ("PCI: microchip: Add Microchip PolarFire PCIe controller driver") Signed-off-by:
Daire McNamara <daire.mcnamara@microchip.com> [bhelgaas: adapt for ac7f53b7e728 ("PCI: microchip: Add support for using either Root Port 1 or 2")] Signed-off-by:
Bjorn Helgaas <bhelgaas@google.com> Acked-by:
Conor Dooley <conor.dooley@microchip.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 17bd5e4dc96c953257eadce111d7b6ef458c6187 commit 17bd5e4dc96c953257eadce111d7b6ef458c6187 Author: Douglas Anderson <dianders@chromium.org> Date: Fri Dec 20 14:52:05 2024 -0800 PCI: mediatek-gen3: Enable async probe by default The mediatek-gen3 driver can run its probe routine fairly slow on some hardware, which adds to the total time it takes for the system start up. Thus, turn on async mode for the probe to avoid blocking the rest of the system. Link: https://lore.kernel.org/r/20241220145205.1.Ibf2563896c3b1fc133bb46d3fc96ad0041763922@changeid Signed-off-by:
Douglas Anderson <dianders@chromium.org> [kwilczynski: commit log] Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 491cb9c5084790aafa02e843349492c284373231 commit 491cb9c5084790aafa02e843349492c284373231 Author: Lorenzo Bianconi <lorenzo@kernel.org> Date: Thu Jan 9 00:30:45 2025 +0100 PCI: mediatek-gen3: Avoid PCIe resetting via PERST# for Airoha EN7581 SoC Airoha EN7581 has a hw bug asserting/releasing PERST# signal causing occasional PCIe link down issues. In order to overcome the problem, PERST# signal is not asserted/released during device probe or suspend/resume phase and the PCIe block is reset using en7523_reset_assert() and en7581_pci_enable(). Introduce flags field in the mtk_gen3_pcie_pdata struct in order to specify per-SoC capabilities. Link: https://lore.kernel.org/r/20250109-pcie-en7581-rst-fix-v4-1-4a45c89fb143@kernel.org Tested-by:
Hui Ma <hui.ma@airoha.com> Signed-off-by:
Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: c98bee18d0a094e37100c85effe5e161418f8644 commit c98bee18d0a094e37100c85effe5e161418f8644 Author: Lorenzo Bianconi <lorenzo@kernel.org> Date: Wed Jan 8 10:50:44 2025 +0100 PCI: mediatek-gen3: Rely on msleep() in mtk_pcie_en7581_power_up() Since mtk_pcie_en7581_power_up() runs in non-atomic context, rely on msleep() routine instead of mdelay(). Link: https://lore.kernel.org/r/20250108-pcie-en7581-fixes-v6-5-21ac939a3b9b@kernel.org Signed-off-by:
Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 90d4e466c9ea2010f33880a36317a8486ccbe082 commit 90d4e466c9ea2010f33880a36317a8486ccbe082 Author: Lorenzo Bianconi <lorenzo@kernel.org> Date: Wed Jan 8 10:50:43 2025 +0100 PCI: mediatek-gen3: Move reset delay in mtk_pcie_en7581_power_up() Airoha EN7581 has a hw bug asserting/releasing PCIE_PE_RSTB signal causing occasional PCIe link down issues. In order to overcome the problem, PCIe block is reset using REG_PCI_CONTROL (0x88) and REG_RESET_CONTROL (0x834) registers available in the clock module running clk_bulk_prepare_enable() in mtk_pcie_en7581_power_up(). In order to make the code more readable, move the wait for the time needed to complete the PCIe reset from en7581_pci_enable() to mtk_pcie_en7581_power_up(). Reduce reset timeout from 250ms to the standard PCIE_T_PVPERL_MS value (100ms) since it has no impact on the driver behavior. Link: https://lore.kernel.org/r/20250108-pcie-en7581-fixes-v6-4-21ac939a3b9b@kernel.org Signed-off-by:
Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Acked-by:
Stephen Boyd <sboyd@kernel.org> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-
Myron Stowe authored
JIRA: https://issues.redhat.com/browse/RHEL-83611 Upstream Status: 0c9d2d2ef0d916b490a9222ed20ff4616fca876d commit 0c9d2d2ef0d916b490a9222ed20ff4616fca876d Author: Lorenzo Bianconi <lorenzo@kernel.org> Date: Wed Jan 8 10:50:42 2025 +0100 PCI: mediatek-gen3: Add comment about initialization order in mtk_pcie_en7581_power_up() Add a comment in mtk_pcie_en7581_power_up() to clarify, unlike the other MediaTek Gen3 controllers, the Airoha EN7581 requires PHY initialization and power-on before PHY reset deassert. Link: https://lore.kernel.org/r/20250108-pcie-en7581-fixes-v6-3-21ac939a3b9b@kernel.org Signed-off-by:
Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by:
Krzysztof Wilczyński <kwilczynski@kernel.org> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Reviewed-by:
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Signed-off-by:
Myron Stowe <mstowe@redhat.com>
-