* [PATCH v4 0/2] arm64: dts: Add board support for Khadas Edge2
@ 2024-06-24 8:32 Jacobe Zang
2024-06-24 8:32 ` [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2 Jacobe Zang
2024-06-24 8:32 ` [PATCH v4 2/2] arm64: dts: rockchip: Add bluetooth rfkill to Khadas Edge2 Jacobe Zang
0 siblings, 2 replies; 7+ messages in thread
From: Jacobe Zang @ 2024-06-24 8:32 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, heiko
Cc: nick, efectn, jagan, dsimic, devicetree, linux-arm-kernel,
linux-rockchip, linux-kernel, Jacobe Zang
These patches add board support as following:
- 2x TYPE-C port
- BCM43438 bluetooth
Changes in v4:
- Add SoB tags for original developer.
- Link to v3: https://patchwork.kernel.org/project/linux-rockchip/cover/20240620014536.4019524-1-jacobe.zang@wesion.com/
Changes in v3:
- Strip Wi-Fi patch, commit it with PCI driver together.
- Removed CPU frequency patch because it won't be needed.
- Revert HDMI patch, waiting for the previous commit to be merged.
- Link to v2: https://patchwork.kernel.org/project/linux-rockchip/cover/20240617071112.3133101-1-jacobe.zang@wesion.com/
Changes in v2:
- Removed unrelated parts in Wi-Fi patch.
- Fix indent error in USB-C patch.
- Link to v1: https://patchwork.kernel.org/project/linux-rockchip/cover/20240617030537.3112356-1-jacobe.zang@wesion.com/
Jacobe Zang (2):
arm64: dts: rockchip: Add USB-C to Khadas Edge 2
arm64: dts: rockchip: Add bluetooth rfkill to Khadas Edge2
.../dts/rockchip/rk3588s-khadas-edge2.dts | 127 +++++++++++++++++-
1 file changed, 126 insertions(+), 1 deletion(-)
--
2.34.1
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2
2024-06-24 8:32 [PATCH v4 0/2] arm64: dts: Add board support for Khadas Edge2 Jacobe Zang
@ 2024-06-24 8:32 ` Jacobe Zang
2024-06-24 11:53 ` Krzysztof Kozlowski
2024-06-24 8:32 ` [PATCH v4 2/2] arm64: dts: rockchip: Add bluetooth rfkill to Khadas Edge2 Jacobe Zang
1 sibling, 1 reply; 7+ messages in thread
From: Jacobe Zang @ 2024-06-24 8:32 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, heiko
Cc: nick, efectn, jagan, dsimic, devicetree, linux-arm-kernel,
linux-rockchip, linux-kernel, Jacobe Zang
Khadas Edge 2 has 2x Type-C port. One just supports PD and
controlled by MCU. The other one supports PD, DP Alt mode and DRD. This
commit adds support for DRD.
Co-developed-by: Muhammed Efe Cetin <efectn@protonmail.com>
Signed-off-by: Muhammed Efe Cetin <efectn@protonmail.com>
Signed-off-by: Jacobe Zang <jacobe.zang@wesion.com>
---
.../dts/rockchip/rk3588s-khadas-edge2.dts | 118 ++++++++++++++++++
1 file changed, 118 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts b/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
index dbddfc3bb4641..8c0bc675690dd 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
@@ -6,6 +6,7 @@
#include <dt-bindings/input/input.h>
#include <dt-bindings/pinctrl/rockchip.h>
#include <dt-bindings/leds/common.h>
+#include <dt-bindings/usb/pd.h>
#include "rk3588s.dtsi"
/ {
@@ -112,6 +113,18 @@ vcc5v0_sys: vcc5v0-sys-regulator {
regulator-max-microvolt = <5000000>;
};
+ vbus5v0_typec: vbus5v0-typec-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vbus5v0_typec";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ enable-active-high;
+ gpio = <&gpio3 RK_PA4 GPIO_ACTIVE_HIGH>;
+ vin-supply = <&vcc5v0_sys>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&typec5v_pwren>;
+ };
+
vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
compatible = "regulator-fixed";
regulator-name = "vcc_1v1_nldo_s3";
@@ -224,6 +237,56 @@ regulator-state-mem {
&i2c2 {
status = "okay";
+ usbc0: usb-typec@22 {
+ compatible = "fcs,fusb302";
+ reg = <0x22>;
+ interrupt-parent = <&gpio1>;
+ interrupts = <RK_PB5 IRQ_TYPE_LEVEL_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&usbc0_int>;
+ vbus-supply = <&vbus5v0_typec>;
+ status = "okay";
+
+ usb_con: connector {
+ compatible = "usb-c-connector";
+ label = "USB-C";
+ data-role = "dual";
+ power-role = "dual";
+ try-power-role = "source";
+ op-sink-microwatt = <1000000>;
+ sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
+ PDO_FIXED(9000, 3000, PDO_FIXED_USB_COMM)
+ PDO_FIXED(12000, 3000, PDO_FIXED_USB_COMM)>;
+ source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ usbc0_orien_sw: endpoint {
+ remote-endpoint = <&usbdp_phy0_orientation_switch>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+ usbc0_role_sw: endpoint {
+ remote-endpoint = <&dwc3_0_role_switch>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+ dp_altmode_mux: endpoint {
+ remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
+ };
+ };
+ };
+ };
+ };
+
hym8563: rtc@51 {
compatible = "haoyu,hym8563";
reg = <0x51>;
@@ -256,6 +319,16 @@ vcc5v0_host_en: vcc5v0-host-en {
};
};
+ usb-typec {
+ usbc0_int: usbc0-int {
+ rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
+
+ typec5v_pwren: typec5v-pwren {
+ rockchip,pins = <3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
ir-receiver {
ir_receiver_pin: ir-receiver-pin {
rockchip,pins = <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;
@@ -681,6 +754,14 @@ &uart9 {
status = "okay";
};
+&u2phy0 {
+ status = "okay";
+};
+
+&u2phy0_otg {
+ status = "okay";
+};
+
&u2phy2 {
status = "okay";
};
@@ -707,6 +788,43 @@ &usb_host0_ohci {
status = "okay";
};
+&usbdp_phy0 {
+ orientation-switch;
+ mode-switch;
+ sbu1-dc-gpios = <&gpio4 RK_PA0 GPIO_ACTIVE_HIGH>;
+ sbu2-dc-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+
+ port {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ usbdp_phy0_orientation_switch: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&usbc0_orien_sw>;
+ };
+
+ usbdp_phy0_dp_altmode_mux: endpoint@1 {
+ reg = <1>;
+ remote-endpoint = <&dp_altmode_mux>;
+ };
+ };
+};
+
+&usb_host0_xhci {
+ usb-role-switch;
+ status = "okay";
+
+ port {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ dwc3_0_role_switch: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&usbc0_role_sw>;
+ };
+ };
+};
+
&usb_host1_ehci {
status = "okay";
};
--
2.34.1
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v4 2/2] arm64: dts: rockchip: Add bluetooth rfkill to Khadas Edge2
2024-06-24 8:32 [PATCH v4 0/2] arm64: dts: Add board support for Khadas Edge2 Jacobe Zang
2024-06-24 8:32 ` [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2 Jacobe Zang
@ 2024-06-24 8:32 ` Jacobe Zang
1 sibling, 0 replies; 7+ messages in thread
From: Jacobe Zang @ 2024-06-24 8:32 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, heiko
Cc: nick, efectn, jagan, dsimic, devicetree, linux-arm-kernel,
linux-rockchip, linux-kernel, Jacobe Zang
This add bluetooth node, in uart9 add RTS node in pinctrl.
Co-developed-by: Muhammed Efe Cetin <efectn@protonmail.com>
Signed-off-by: Muhammed Efe Cetin <efectn@protonmail.com>
Signed-off-by: Jacobe Zang <jacobe.zang@wesion.com>
---
arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts b/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
index 8c0bc675690dd..3b6286461a746 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
@@ -750,8 +750,15 @@ &uart2 {
&uart9 {
pinctrl-names = "default";
- pinctrl-0 = <&uart9m2_xfer &uart9m2_ctsn>;
+ pinctrl-0 = <&uart9m2_xfer &uart9m2_ctsn &uart9m2_rtsn>;
status = "okay";
+
+ bluetooth {
+ compatible = "brcm,bcm43438-bt";
+ pinctrl-names = "default";
+ pinctrl-0 = <&bt_reset_pin &bt_wake_host_irq &bt_wake_pin>;
+ shutdown-gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>;
+ };
};
&u2phy0 {
--
2.34.1
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2
2024-06-24 8:32 ` [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2 Jacobe Zang
@ 2024-06-24 11:53 ` Krzysztof Kozlowski
2024-06-25 7:53 ` Jacobe Zang
0 siblings, 1 reply; 7+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-24 11:53 UTC (permalink / raw)
To: Jacobe Zang, robh, krzk+dt, conor+dt, heiko
Cc: nick, efectn, jagan, dsimic, devicetree, linux-arm-kernel,
linux-rockchip, linux-kernel
On 24/06/2024 10:32, Jacobe Zang wrote:
> Khadas Edge 2 has 2x Type-C port. One just supports PD and
> controlled by MCU. The other one supports PD, DP Alt mode and DRD. This
> commit adds support for DRD.
>
> Co-developed-by: Muhammed Efe Cetin <efectn@protonmail.com>
> Signed-off-by: Muhammed Efe Cetin <efectn@protonmail.com>
> Signed-off-by: Jacobe Zang <jacobe.zang@wesion.com>
> ---
> .../dts/rockchip/rk3588s-khadas-edge2.dts | 118 ++++++++++++++++++
> 1 file changed, 118 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts b/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
> index dbddfc3bb4641..8c0bc675690dd 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts
> @@ -6,6 +6,7 @@
> #include <dt-bindings/input/input.h>
> #include <dt-bindings/pinctrl/rockchip.h>
> #include <dt-bindings/leds/common.h>
> +#include <dt-bindings/usb/pd.h>
> #include "rk3588s.dtsi"
>
> / {
> @@ -112,6 +113,18 @@ vcc5v0_sys: vcc5v0-sys-regulator {
> regulator-max-microvolt = <5000000>;
> };
>
> + vbus5v0_typec: vbus5v0-typec-regulator {
> + compatible = "regulator-fixed";
> + regulator-name = "vbus5v0_typec";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + enable-active-high;
> + gpio = <&gpio3 RK_PA4 GPIO_ACTIVE_HIGH>;
> + vin-supply = <&vcc5v0_sys>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&typec5v_pwren>;
> + };
> +
> vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
> compatible = "regulator-fixed";
> regulator-name = "vcc_1v1_nldo_s3";
> @@ -224,6 +237,56 @@ regulator-state-mem {
> &i2c2 {
> status = "okay";
>
> + usbc0: usb-typec@22 {
> + compatible = "fcs,fusb302";
> + reg = <0x22>;
> + interrupt-parent = <&gpio1>;
> + interrupts = <RK_PB5 IRQ_TYPE_LEVEL_LOW>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&usbc0_int>;
> + vbus-supply = <&vbus5v0_typec>;
> + status = "okay";
Was it disabled anywhere?
Best regards,
Krzysztof
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2
2024-06-24 11:53 ` Krzysztof Kozlowski
@ 2024-06-25 7:53 ` Jacobe Zang
2024-06-25 8:25 ` Heiko Stübner
0 siblings, 1 reply; 7+ messages in thread
From: Jacobe Zang @ 2024-06-25 7:53 UTC (permalink / raw)
To: Krzysztof Kozlowski, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, heiko@sntech.de
Cc: Nick Xie, efectn@protonmail.com, jagan@edgeble.ai,
dsimic@manjaro.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org
> Was it disabled anywhere?
This patch aims to enable the DRD function of Type-C port. So need to enable in DTS.
---
Best Regards
Jacobe
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2
2024-06-25 7:53 ` Jacobe Zang
@ 2024-06-25 8:25 ` Heiko Stübner
2024-06-25 8:29 ` Jacobe Zang
0 siblings, 1 reply; 7+ messages in thread
From: Heiko Stübner @ 2024-06-25 8:25 UTC (permalink / raw)
To: Krzysztof Kozlowski, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, Jacobe Zang
Cc: Nick Xie, efectn@protonmail.com, jagan@edgeble.ai,
dsimic@manjaro.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org
Am Dienstag, 25. Juni 2024, 09:53:45 CEST schrieb Jacobe Zang:
> > Was it disabled anywhere?
>
> This patch aims to enable the DRD function of Type-C port. So need to enable in DTS.
> + usbc0: usb-typec@22 {
> + compatible = "fcs,fusb302";
> + reg = <0x22>;
> + interrupt-parent = <&gpio1>;
> + interrupts = <RK_PB5 IRQ_TYPE_LEVEL_LOW>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&usbc0_int>;
> + vbus-supply = <&vbus5v0_typec>;
> + status = "okay";
what Krzysztof means, is that the default for status is "okay". So for a
node you just added, you don't need a separate status="okay"
This is only needed if the node is added in a base dtsi (like soc
peripherals) which are then enabled on a per-board basis as needed.
So please just drop the status property from you fusb302 node.
Heiko
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2
2024-06-25 8:25 ` Heiko Stübner
@ 2024-06-25 8:29 ` Jacobe Zang
0 siblings, 0 replies; 7+ messages in thread
From: Jacobe Zang @ 2024-06-25 8:29 UTC (permalink / raw)
To: Heiko Stübner, Krzysztof Kozlowski, robh@kernel.org,
krzk+dt@kernel.org, conor+dt@kernel.org
Cc: Nick Xie, efectn@protonmail.com, jagan@edgeble.ai,
dsimic@manjaro.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org
> what Krzysztof means, is that the default for status is "okay". So for a
> node you just added, you don't need a separate status="okay"
> This is only needed if the node is added in a base dtsi (like soc
> peripherals) which are then enabled on a per-board basis as needed.
> So please just drop the status property from you fusb302 node.
Now I get it. I will drop the property in next version.
---
Best Regards
Jacobe
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-06-25 8:29 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-24 8:32 [PATCH v4 0/2] arm64: dts: Add board support for Khadas Edge2 Jacobe Zang
2024-06-24 8:32 ` [PATCH v4 1/2] arm64: dts: rockchip: Add USB-C to Khadas Edge 2 Jacobe Zang
2024-06-24 11:53 ` Krzysztof Kozlowski
2024-06-25 7:53 ` Jacobe Zang
2024-06-25 8:25 ` Heiko Stübner
2024-06-25 8:29 ` Jacobe Zang
2024-06-24 8:32 ` [PATCH v4 2/2] arm64: dts: rockchip: Add bluetooth rfkill to Khadas Edge2 Jacobe Zang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox