]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
riscv: dts: starfive: fml13v01: enable pcie1
authorSandie Cao <sandie.cao@deepcomputing.io>
Fri, 7 Feb 2025 09:36:18 +0000 (17:36 +0800)
committerConor Dooley <conor.dooley@microchip.com>
Tue, 18 Feb 2025 16:28:33 +0000 (16:28 +0000)
Starfive Soc common defines GPIO28 as pcie1 reset, GPIO21 as pcie1 wakeup;
But the FML13V01 board uses GPIO21 as pcie1 reset, GPIO28 as pcie1 wakeup;
redefine pcie1 gpio and enable pcie1 for pcie based Wi-Fi.

Signed-off-by: Sandie Cao <sandie.cao@deepcomputing.io>
Tested-by: Maud Spierings <maud_spierings@hotmail.com>
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts

index 30b0715196b66637d582df794572967823a47ed9..8d9ce8b69a71be78ca57618ae842c9f415648450 100644 (file)
        compatible = "deepcomputing,fml13v01", "starfive,jh7110";
 };
 
+&pcie1 {
+       perst-gpios = <&sysgpio 21 GPIO_ACTIVE_LOW>;
+       phys = <&pciephy1>;
+       pinctrl-names = "default";
+       pinctrl-0 = <&pcie1_pins>;
+       status = "okay";
+};
+
+&sysgpio {
+       pcie1_pins: pcie1-0 {
+               clkreq-pins {
+                       pinmux = <GPIOMUX(29, GPOUT_LOW,
+                                             GPOEN_DISABLE,
+                                             GPI_NONE)>;
+                       bias-pull-down;
+                       drive-strength = <2>;
+                       input-enable;
+                       input-schmitt-disable;
+                       slew-rate = <0>;
+               };
+
+               wake-pins {
+                       pinmux = <GPIOMUX(28, GPOUT_HIGH,
+                                             GPOEN_DISABLE,
+                                             GPI_NONE)>;
+                       bias-pull-up;
+                       drive-strength = <2>;
+                       input-enable;
+                       input-schmitt-disable;
+                       slew-rate = <0>;
+               };
+       };
+};
+
 &usb0 {
        dr_mode = "host";
        status = "okay";