2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/drivers/pci/controller/dwc
Niklas Cassel a2fa5f9614
PCI: keystone: Specify correct alignment requirement
The support for a specific iATU alignment was added in
commit 2a9a801620 ("PCI: endpoint: Add support to specify alignment for
buffers allocated to BARs").

This commit specifically mentions both that the alignment by each DWC
based EP driver should match CX_ATU_MIN_REGION_SIZE, and that AM65x
specifically has a 64 KB alignment.

This also matches the CX_ATU_MIN_REGION_SIZE value specified in the
section "12.2.2.4.7 PCIe Subsystem Address Translation" of the Technical
Reference Manual (TRM) for AM65x:

  https://www.ti.com/lit/ug/spruid7e/spruid7e.pdf

This higher value, 1 MB, was obviously an ugly hack used to be able to
handle Resizable BARs which have a minimum size of 1 MB.

Now when we actually have support for Resizable BARs, let's configure the
iATU alignment requirement to the actual requirement.
(BARs described as Resizable will still get aligned to 1 MB.)

Cc: stable+noautosel@kernel.org # Depends on PCI endpoint Resizable BARs series
Fixes: 23284ad677 ("PCI: keystone: Add support for PCIe EP in AM654x Platforms")
Signed-off-by: Niklas Cassel <cassel@kernel.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Link: https://lore.kernel.org/r/20250131182949.465530-15-cassel@kernel.org
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
[kwilczynski: commit log]
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
2025-03-08 14:47:25 +00:00
..
Kconfig PCI: qcom: Add equalization settings for 16.0 GT/s 2024-09-13 14:44:57 +00:00
Makefile PCI: qcom: Add equalization settings for 16.0 GT/s 2024-09-13 14:44:57 +00:00
pci-dra7xx.c PCI: dra7xx: Use syscon_regmap_lookup_by_phandle_args 2025-01-16 14:38:53 -06:00
pci-exynos.c PCI: exynos: Switch to devm_clk_bulk_get_all_enabled() 2024-12-23 12:53:52 -08:00
pci-imx6.c Merge branch 'pci/controller/imx6' 2025-01-23 13:05:03 -06:00
pci-keystone.c PCI: keystone: Specify correct alignment requirement 2025-03-08 14:47:25 +00:00
pci-layerscape-ep.c PCI: layerscape-ep: Use the generic dw_pcie_ep_linkdown() API to handle Link Down event 2024-07-09 18:21:11 -05:00
pci-layerscape.c PCI: layerscape: Use syscon_regmap_lookup_by_phandle_args 2025-01-16 14:38:36 -06:00
pci-meson.c PCI: dwc: Remove unused of_gpio.h inclusion 2024-05-28 11:15:08 -05:00
pcie-al.c PCI: al: Check IORESOURCE_BUS existence during probe 2024-05-28 11:14:24 -05:00
pcie-armada8k.c PCI: dwc: Drop host prefix from struct dw_pcie_host_ops members 2024-01-06 07:51:08 +00:00
pcie-artpec6.c PCI: artpec6: Implement dw_pcie_ep operation get_features 2024-12-18 21:51:47 +00:00
pcie-bt1.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-designware-ep.c PCI: dwc: ep: Allow EPF drivers to configure the size of Resizable BARs 2025-03-08 14:43:08 +00:00
pcie-designware-host.c PCI: dwc: Simplify config resource lookup 2025-01-20 12:39:38 -06:00
pcie-designware-plat.c PCI: dwc: ep: Remove dw_pcie_ep_init_notify() wrapper 2024-07-09 18:20:21 -05:00
pcie-designware.c Merge branch 'pci/controller/dwc' 2025-01-23 13:04:59 -06:00
pcie-designware.h Merge branch 'pci/controller/dwc' 2025-01-23 13:04:59 -06:00
pcie-dw-rockchip.c PCI: dw-rockchip: Don't wait for link since we can detect Link Up 2025-01-18 11:35:25 -06:00
pcie-fu740.c PCI: dwc: Drop host prefix from struct dw_pcie_host_ops members 2024-01-06 07:51:08 +00:00
pcie-hisi.c PCI: hisi: Avoid invalid address space conversions 2022-01-03 15:05:28 -06:00
pcie-histb.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-intel-gw.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-keembay.c PCI: dwc: ep: Remove dw_pcie_ep_init_notify() wrapper 2024-07-09 18:20:21 -05:00
pcie-kirin.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-qcom-common.c PCI: qcom: Add RX lane margining settings for 16.0 GT/s 2024-09-13 14:44:59 +00:00
pcie-qcom-common.h PCI: qcom: Add RX lane margining settings for 16.0 GT/s 2024-09-13 14:44:59 +00:00
pcie-qcom-ep.c Merge branch 'pci/controller/qcom' 2024-11-25 13:40:59 -06:00
pcie-qcom.c PCI: qcom: Update ICC and OPP values after Link Up event 2025-01-18 11:35:18 -06:00
pcie-rcar-gen4.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-spear13xx.c PCI: dwc: Rename 'dw_pcie::link_gen' to 'dw_pcie::max_link_speed' 2024-09-13 14:44:43 +00:00
pcie-tegra194-acpi.c PCI: dwc: Simplify in/outbound iATU setup methods 2022-08-01 15:15:09 -05:00
pcie-tegra194.c Merge branch 'pci/controller/tegra194' 2024-11-25 13:41:00 -06:00
pcie-uniphier-ep.c PCI: dwc: ep: Remove dw_pcie_ep_init_notify() wrapper 2024-07-09 18:20:21 -05:00
pcie-uniphier.c Merge branch 'pci/irq-clean-up' 2024-01-15 12:10:40 -06:00
pcie-visconti.c PCI: dwc: Drop host prefix from struct dw_pcie_host_ops members 2024-01-06 07:51:08 +00:00