linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: marvell: armada-37xx: Remap IO space to bus address 0x0
@ 2022-02-18 21:25 Pali Rohár
  2022-02-19 11:34 ` Marek Behún
                   ` (3 more replies)
  0 siblings, 4 replies; 22+ messages in thread
From: Pali Rohár @ 2022-02-18 21:25 UTC (permalink / raw)
  To: Andrew Lunn, Gregory Clement, Marek Behún
  Cc: linux-arm-kernel, linux-kernel

Remap PCI I/O space to the bus address 0x0 in the Armada 37xx
device-tree in order to support legacy I/O port based cards which have
hardcoded I/O ports in low address space.

Some legacy PCI I/O based cards do not support 32-bit I/O addressing.

Since commit 64f160e19e92 ("PCI: aardvark: Configure PCIe resources from
'ranges' DT property") this driver can work with I/O windows which have
a different address for CPU than for PCI bus (unless there is some
conflict with other A37xx mapping), without needing additional support
for this in the firmware.

Note that DDR on A37xx is mapped to bus address 0x0 and that mapping of
I/O space can be set to address 0x0 too because MEM space and I/O space
are separate and so they do not conflict.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reported-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 2 +-
 arch/arm64/boot/dts/marvell/armada-37xx.dtsi           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
index 6581092c2c90..7d1b9153a901 100644
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -163,7 +163,7 @@
 	 */
 	#address-cells = <3>;
 	#size-cells = <2>;
-	ranges = <0x81000000 0 0xe8000000   0 0xe8000000   0 0x01000000   /* Port 0 IO */
+	ranges = <0x81000000 0 0x00000000   0 0xe8000000   0 0x01000000   /* Port 0 IO */
 		  0x82000000 0 0xe9000000   0 0xe9000000   0 0x07000000>; /* Port 0 MEM */
 
 	/* enabled by U-Boot if PCIe module is present */
diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
index 549c3f7c5b27..a099b7787429 100644
--- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
@@ -515,7 +515,7 @@
 			 * (totaling 127 MiB) for MEM.
 			 */
 			ranges = <0x82000000 0 0xe8000000   0 0xe8000000   0 0x07f00000   /* Port 0 MEM */
-				  0x81000000 0 0xeff00000   0 0xeff00000   0 0x00100000>; /* Port 0 IO*/
+				  0x81000000 0 0x00000000   0 0xeff00000   0 0x00100000>; /* Port 0 IO */
 			interrupt-map-mask = <0 0 0 7>;
 			interrupt-map = <0 0 0 1 &pcie_intc 0>,
 					<0 0 0 2 &pcie_intc 1>,
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2022-03-10 13:52 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-18 21:25 [PATCH] arm64: dts: marvell: armada-37xx: Remap IO space to bus address 0x0 Pali Rohár
2022-02-19 11:34 ` Marek Behún
2022-02-19 21:00   ` Arnd Bergmann
2022-02-28 15:41 ` Gregory CLEMENT
2022-02-28 16:42   ` Gregory CLEMENT
2022-03-01  9:25     ` Pali Rohár
2022-03-02 13:06       ` Andrew Lunn
2022-03-02 13:15         ` Marek Behún
2022-03-02 13:25           ` Marek Behún
2022-03-02 13:25         ` Pali Rohár
2022-03-04 12:44     ` Pali Rohár
2022-03-04 16:30 ` [PATCH v2] " Pali Rohár
2022-03-08 11:41   ` Pali Rohár
2022-03-10 10:05   ` Gregory CLEMENT
2022-03-10 10:09     ` Pali Rohár
2022-03-10 10:22       ` Arnd Bergmann
2022-03-10 10:41         ` Pali Rohár
2022-03-10 10:23       ` Gregory CLEMENT
2022-03-10 10:47         ` Pali Rohár
2022-03-10 10:39 ` [PATCH v3] " Pali Rohár
2022-03-10 11:51   ` Arnd Bergmann
2022-03-10 13:51   ` Gregory CLEMENT

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).