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)
committerHeiko Stuebner <heiko@sntech.de>
Mon, 4 Dec 2023 20:17:07 +0000 (21:17 +0100)
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>
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 5c1929d41cc0b700998f7aa048cc815306b0f97c..cacbad35cfc854ce6823fe9901165f42cfbd2aef 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 853e88455e750ec1738c10cb42d75e0f2eed3985..9e4b12ed62cbed9f1bc8e1970c4d3b57d253ac32 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 c9bf1d5c3a426418f97e34c0043c8013de690e0f..789fd0dcc88baadb05367b16d80b6c7019941160 100644 (file)
@@ -489,6 +489,7 @@ ap_i2c_audio: &i2c8 {
                #address-cells = <3>;
                #size-cells = <2>;
                ranges;
+               device_type = "pci";
        };
 };