diff mbox series

[05/15] arm64: dts: rockchip: add PCIe network controller to opi5max

Message ID 20241026100310.52679-6-honyuenkwun@gmail.com (mailing list archive)
State New
Headers show
Series arm64: dts: rockchip: Add Orange Pi 5 Max board | expand

Commit Message

Jimmy Hon Oct. 26, 2024, 9:48 a.m. UTC
Enable the RTL8125 network controller, which is connected via
PCIe 2.0x1.

Signed-off-by: Jimmy Hon <honyuenkwun@gmail.com>
---
 .../dts/rockchip/rk3588-orangepi-5-max.dts    | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)

Comments

Jimmy Hon Oct. 26, 2024, 8:29 p.m. UTC | #1
On Sat, Oct 26, 2024 at 5:03 AM Jimmy Hon <honyuenkwun@gmail.com> wrote:
>
> +       /* pcie eth. not a real regulator. 33VAUX */
> +       vcc_3v3_aux: vcc-3v3-aux-regulator {
> +               compatible = "regulator-fixed";
> +               /* Ethernet_power_en */
> +               gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_LOW>;
> +               regulator-name = "33vaux";
> +               regulator-min-microvolt = <3300000>;
> +               regulator-max-microvolt = <3300000>;
> +               startup-delay-us = <50000>;
> +               vin-supply = <&vcc_3v3_s3>;
> +       };
> +
What's the best way to treat this? In the schematic [1] page 21, it
doesn't look like a normal regulator with IN, VOUT, and EN pins.

At least the OPI5Max schematic mentions how the 33VAUX and
Ethernet_power_en pin are connected.
The OPI5Plus schematic doesn't mention where the Ethernet_power_en pin
goes. However, it's modeled in the mainline DTS as a regulator. [2]

Regarding the name, I can't have the node id called "33vaux", so
what's the alternative. Should I use vcc3v3_pcie_eth like the
OPI5Plus?

[1] http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-5-Max.html
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts#n179

Jimmy
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max.dts b/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max.dts
index 961f9271d0f0..591ba2af25d7 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max.dts
@@ -53,6 +53,18 @@  vcc_1v1_nldo_s3: vcc-1v1-ndlo-s3-regulator {
 		vin-supply = <&vcc5v0_sys>;
 	};
 
+	/* pcie eth. not a real regulator. 33VAUX */
+	vcc_3v3_aux: vcc-3v3-aux-regulator {
+		compatible = "regulator-fixed";
+		/* Ethernet_power_en */
+		gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_LOW>;
+		regulator-name = "33vaux";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		startup-delay-us = <50000>;
+		vin-supply = <&vcc_3v3_s3>;
+	};
+
 	/* Regulator is enabled whenever vcc_1v8_s0 is on */
 	vcc_3v3_s0: vcc-3v3-s0-regulator {
 		compatible = "regulator-fixed";
@@ -78,6 +90,10 @@  vcc5v0_sys: vcc5v0-sys-regulator {
 	};
 };
 
+&combphy2_psu {
+	status = "okay";
+};
+
 &cpu_b0 {
 	cpu-supply = <&vdd_cpu_big0_s0>;
 };
@@ -168,6 +184,13 @@  hym8563: rtc@51 {
 	};
 };
 
+/* phy2 */
+&pcie2x1l1 {
+	reset-gpios = <&gpio4 RK_PD4 GPIO_ACTIVE_HIGH>;
+	vpcie3v3-supply = <&vcc_3v3_aux>;
+	status = "okay";
+};
+
 &pinctrl {
 	hym8563 {
 		hym8563_int: hym8563-int {