arm64: dts: rockchip: Fix PCI node addresses on rk3399-gru
authorRob Herring <robh@kernel.org>
Thu, 30 Nov 2023 19:18:29 +0000 (13:18 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 20 Jan 2024 10:51:41 +0000 (11:51 +0100)
[ Upstream commit c13c823a78b77ea0e5f1f73112d910e259911101 ]

The rk3399-gru PCI node addresses are wrong.

In rk3399-gru-scarlet, the bus number in the address should be 0. This is
because bus number assignment is dynamic and not known up front. For FDT,
the bus number is simply ignored.

In rk3399-gru-chromebook, the addresses are simply invalid. The first
"reg" entry must be the configuration space for the device. The entry
should be all 0s except for device/slot and function numbers. The existing
64-bit memory space (0x83000000) entries are not valid because they must
have the BAR address in the lower byte of the first cell.

Warnings for these are enabled by adding the missing 'device_type = "pci"'
for the root port node.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20231130191830.2424361-1-robh@kernel.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/arm64/boot/dts/rockchip/rk3399-gru-chromebook.dtsi
arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet-dumo.dts
arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi

index 5c1929d..cacbad3 100644 (file)
@@ -509,8 +509,7 @@ ap_i2c_tp: &i2c5 {
 &pci_rootport {
        mvl_wifi: wifi@0,0 {
                compatible = "pci1b4b,2b42";
-               reg = <0x83010000 0x0 0x00000000 0x0 0x00100000
-                      0x83010000 0x0 0x00100000 0x0 0x00100000>;
+               reg = <0x0000 0x0 0x0 0x0 0x0>;
                interrupt-parent = <&gpio0>;
                interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
                pinctrl-names = "default";
index 853e884..9e4b12e 100644 (file)
@@ -34,8 +34,8 @@
 &pci_rootport {
        wifi@0,0 {
                compatible = "qcom,ath10k";
-               reg = <0x00010000 0x0 0x00000000 0x0 0x00000000>,
-                     <0x03010010 0x0 0x00000000 0x0 0x00200000>;
+               reg = <0x00000000 0x0 0x00000000 0x0 0x00000000>,
+                     <0x03000010 0x0 0x00000000 0x0 0x00200000>;
                qcom,ath10k-calibration-variant = "GO_DUMO";
        };
 };
index c9bf1d5..789fd0d 100644 (file)
@@ -489,6 +489,7 @@ ap_i2c_audio: &i2c8 {
                #address-cells = <3>;
                #size-cells = <2>;
                ranges;
+               device_type = "pci";
        };
 };