arm64: dts: rockchip: Add rk3576 evb2 board
Subsystems (2)
v4 cover arm64: dts: rockchip: Add rk3576 evb2 board
From: Chaoyi Chen <[email protected]>
Hi,
This series add support for rk3576 evb2 board.
General features for rk3576 evb2 board:
- Rockchip RK3576
- LPDDR4/4X
- eMMC5.1
- RK806-2x2pcs + DiscretePower
- 1x HDMI2.1 TX / HDMI2.0 RX
- 1x full size DP1.4 TX (Only 2 Lanes)
- 2x 10/100/1000M Ethernet
- 5x SATA3.0 7Pin Slot
- 2x USB3.2 Gen1 Host
- 3x USB2.0 Host
- WIFI/BT
- ...
To make the USB hub work, the additional patch from usb-next is required:
[0] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=00fcc9c86a134c488fd857b5460a7925228272c1
[1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=fa3bb5011f33cccd246072954e64d64483d0d774
Changes in v4:
- Link to v3: https://lore.kernel.org/all/[email protected]/
- Move the USB hub code into a separate patch series, and that series have already been merged into usb-next.
- Fix supply and reset for usb hub.
- Add cd-gpios for sdmmc.
Changes in v3:
- Link to v2: https://lore.kernel.org/all/[email protected]/
- Add binding for WCH CH334/CH335 hub controller.
- Add alias for mmc.
- Rename some usb vbus regulator.
- Add DP regulator.
- Change gmac phy-mode to rgmii-id.
- Add target-supply for sata.
- Change vcc-supply for ufshc.
- Add usb hub.
- ...
Changes in v2:
- Link to v1: https://lore.kernel.org/all/[email protected]/
- Enable hdmi_sound and sai6.
- Add more cpu-supply.
- Use regulator to control sata power.
- Remove "cap-mmc-highspeed" prop in sdmmc.
- Add regulator supply for ufshc.
- Add the missing vcc3v3_hubreset regulator.
- Add otg capability for usb_drd0_dwc3.
Chaoyi Chen (2):
dt-bindings: arm: rockchip: Add rk3576 evb2 board
arm64: dts: rockchip: Add rk3576 evb2 board
.../devicetree/bindings/arm/rockchip.yaml | 4 +- arch/arm64/boot/dts/rockchip/Makefile | 1 + .../boot/dts/rockchip/rk3576-evb2-v10.dts | 1004 +++++++++++++++++ 3 files changed, 1008 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts
Signature · 7 lines
2.51.1 _______________________________________________ Linux-rockchip mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-rockchip
PATCH v4 1/2 dt-bindings: arm: rockchip: Add rk3576 evb2 board
From: Chaoyi Chen <[email protected]>
Add devicetree binding for the rk3576 evb2 board.
---
(no changes since v1)
--- Documentation/devicetree/bindings/arm/rockchip.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/arm/rockchip.yaml +3 -1
@@ -1136,7 +1136,9 @@ properties: - description: Rockchip RK3576 Evaluation board items: - - const: rockchip,rk3576-evb1-v10 + - enum: + - rockchip,rk3576-evb1-v10 + - rockchip,rk3576-evb2-v10 - const: rockchip,rk3576 - description: Rockchip RK3588 Evaluation board
--
2.51.1
_______________________________________________
Linux-rockchip mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-rockchip
PATCH v4 2/2 arm64: dts: rockchip: Add rk3576 evb2 board
In reply to Chaoyi ChenFrom: Chaoyi Chen <[email protected]>
General features for rk3576 evb2 board:
- Rockchip RK3576
- LPDDR4/4X
- eMMC5.1
- RK806-2x2pcs + DiscretePower
- 1x HDMI2.1 TX / HDMI2.0 RX
- 1x full size DP1.4 TX (Only 2 Lanes)
- 2x 10/100/1000M Ethernet
- 5x SATA3.0 7Pin Slot
- 2x USB3.2 Gen1 Host
- 3x USB2.0 Host
- WIFI/BT
- ...
Tested with eMMC/SDMMC/HDMI/USB/Ethernet/WIFI/BT module.
---
Changes in v4:
- Fix supply and reset for usb hub.
- Add cd-gpios for sdmmc.
Changes in v3:
- Add alias for mmc.
- Rename some usb vbus regulator.
- Add DP regulator.
- Change gmac phy-mode to rgmii-id.
- Add target-supply for sata.
- Change vcc-supply for ufshc.
- Add usb hub.
- ...
Changes in v2:
- Enable hdmi_sound and sai6.
- Add more cpu-supply.
- Use regulator to control sata power.
- Remove "cap-mmc-highspeed" prop in sdmmc.
- Add regulator supply for ufshc.
- Add the missing vcc3v3_hubreset regulator.
- Add otg capability for usb_drd0_dwc3.
--- arch/arm64/boot/dts/rockchip/Makefile | 1 + .../boot/dts/rockchip/rk3576-evb2-v10.dts | 1004 +++++++++++++++++ 2 files changed, 1005 insertions(+) create mode 100644 arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts
arch/arm64/boot/dts/rockchip/Makefile +1 -0
@@ -153,6 +153,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5-io-expander.dtbo dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-armsom-sige5.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-armsom-sige5-v1.2-wifibt.dtbo dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-evb1-v10.dtb +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-evb2-v10.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-luckfox-omni3576.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-nanopi-m5.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-roc-pc.dtb
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +1004 -0
1,004 lines not on this page · raw message
--
2.51.1
_______________________________________________
Linux-rockchip mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-rockchip
Quoted 16 lines · Chaoyi Chen
From: Chaoyi Chen <[email protected]>
General features for rk3576 evb2 board:
- Rockchip RK3576
- LPDDR4/4X
- eMMC5.1
- RK806-2x2pcs + DiscretePower
- 1x HDMI2.1 TX / HDMI2.0 RX
- 1x full size DP1.4 TX (Only 2 Lanes)
- 2x 10/100/1000M Ethernet
- 5x SATA3.0 7Pin Slot
- 2x USB3.2 Gen1 Host
- 3x USB2.0 Host
- WIFI/BT
- ...
Quoted 5 lines
Tested with eMMC/SDMMC/HDMI/USB/Ethernet/WIFI/BT module.
Signed-off-by Chaoyi Chen <[email protected]>Reviewed-by Alexey Charkov <[email protected]>---
---8<----
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts line 867
Quoted 8 lines
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +8
-0+ +&sdio { + #address-cells = <1>; + #size-cells = <0>; + bus-width = <4>; + cap-sd-highspeed; + cap-sdio-irq; + disable-wp;
disable-wp is not used for SDIO case, could be removed.
Quoted 32 lines
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +32
-0+ keep-power-in-suspend; + max-frequency = <150000000>; + mmc-pwrseq = <&sdio_pwrseq>; + no-sd; + no-mmc; + non-removable; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc1m0_bus4 &sdmmc1m0_clk &sdmmc1m0_cmd>; + sd-uhs-sdr104; + status = "okay"; + + brcmf: wifi@1 { + compatible = "brcm,bcm4329-fmac"; + reg = <1>; + interrupt-parent = <&gpio0>; + interrupts = <RK_PB0 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "host-wake"; + pinctrl-names = "default"; + pinctrl-0 = <&wifi_host_wake>; + }; +}; + +&sdhci { + bus-width = <8>; + full-pwr-cycle-in-suspend; + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; + no-sdio; + no-sd; + non-removable; + status = "okay"; +};
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts line 909
Quoted 10 lines
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +10
-0+ +&sdmmc { + bus-width = <4>; + cap-sd-highspeed; + cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; + disable-wp; + no-sdio; + no-mmc; + sd-uhs-sdr104; + vqmmc-supply = <&vccio_sd_s0>;
Should use vmmc-supply to contrl the power, the same as EVB1[1].
[1] https://lore.kernel.org/linux-rockchip/[email protected]/T/#u
Quoted 7 lines
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +7
-0+ status = "okay"; +}; + +&u2phy0 { + status = "okay"; +}; +
Hi Shawn,
Quoted 34 lines · Shawn Lin
Quoted 16 lines · Chaoyi Chen
From: Chaoyi Chen <[email protected]>
General features for rk3576 evb2 board:
- Rockchip RK3576
- LPDDR4/4X
- eMMC5.1
- RK806-2x2pcs + DiscretePower
- 1x HDMI2.1 TX / HDMI2.0 RX
- 1x full size DP1.4 TX (Only 2 Lanes)
- 2x 10/100/1000M Ethernet
- 5x SATA3.0 7Pin Slot
- 2x USB3.2 Gen1 Host
- 3x USB2.0 Host
- WIFI/BT
- ...Quoted 5 lines
Tested with eMMC/SDMMC/HDMI/USB/Ethernet/WIFI/BT module.
Signed-off-by Chaoyi Chen <[email protected]>Reviewed-by Alexey Charkov <[email protected]>---
---8<----
Quoted 8 lines
+
+&sdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ bus-width = <4>;
+ cap-sd-highspeed;
+ cap-sdio-irq;
+ disable-wp;
Quoted 3 lines
disable-wp is not used for SDIO case, could be removed.
Will fix in v5.
Quoted 45 lines
Quoted 32 lines
+ keep-power-in-suspend;
+ max-frequency = <150000000>;
+ mmc-pwrseq = <&sdio_pwrseq>;
+ no-sd;
+ no-mmc;
+ non-removable;
+ pinctrl-names = "default";
+ pinctrl-0 = <&sdmmc1m0_bus4&sdmmc1m0_clk&sdmmc1m0_cmd>; + sd-uhs-sdr104;
+ status = "okay";arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +22
-0+ + brcmf: wifi@1 { + compatible = "brcm,bcm4329-fmac"; + reg = <1>; + interrupt-parent = <&gpio0>; + interrupts = <RK_PB0 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "host-wake"; + pinctrl-names = "default"; + pinctrl-0 = <&wifi_host_wake>; + }; +}; + +&sdhci { + bus-width = <8>; + full-pwr-cycle-in-suspend; + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; + no-sdio; + no-sd; + non-removable; + status = "okay"; +};arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts line 909
Quoted 10 lines
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +10
-0+ +&sdmmc { + bus-width = <4>; + cap-sd-highspeed; + cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; + disable-wp; + no-sdio; + no-mmc; + sd-uhs-sdr104; + vqmmc-supply = <&vccio_sd_s0>;Should use vmmc-supply to contrl the power, the same as EVB1[1].
Quoted 2 lines
[1] https://lore.kernel.org/linux-rockchip/[email protected]/T/#u
That make sense. Will fix in v5.
Quoted 11 lines
Quoted 7 lines
+ status = "okay";
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +6
-0+}; + +&u2phy0 { + status = "okay"; +}; +
Signature · 8 lines
Best, Chaoyi _______________________________________________ Linux-rockchip mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-rockchip
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts line 756
Quoted 10 lines
+&mdio0 {
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +9
-0+ rgmii_phy0: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0x1>; + pinctrl-names = "default"; + pinctrl-0 = <&rgmii_phy0_rst>; + reset-assert-us = <20000>; + reset-deassert-us = <100000>; + reset-gpios = <&gpio3 RK_PD3 GPIO_ACTIVE_LOW>; + tx-internal-delay-ps = <1900>;
What PHY is this? Does it actually implement this property?
It is also close to the 2000ps default. Have you put the board in an environment chamber and run tests at -20C to +70C to see if it will work with the default 2000ps?
Andrew
Hi Andrew,
Quoted 13 lines · Andrew Lunn
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts line 756
Quoted 10 lines
+&mdio0 {
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +9
-0+ rgmii_phy0: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0x1>; + pinctrl-names = "default"; + pinctrl-0 = <&rgmii_phy0_rst>; + reset-assert-us = <20000>; + reset-deassert-us = <100000>; + reset-gpios = <&gpio3 RK_PD3 GPIO_ACTIVE_LOW>; + tx-internal-delay-ps = <1900>;What PHY is this? Does it actually implement this property?
Quoted 4 lines
It is also close to the 2000ps default. Have you put the board in an environment chamber and run tests at -20C to +70C to see if it will work with the default 2000ps?
It is MotorComm yt8xxx PHY. I chose 1950 here because I find that the MotorComm PHY binding only offer the options of 1950 or 2100.
Signature · 7 lines
Best, Chaoyi _______________________________________________ Linux-rockchip mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-rockchip
Quoted 16 lines · Chaoyi Chen
Hi Andrew,
Quoted 13 lines · Andrew Lunn
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts line 756
Quoted 10 lines
+&mdio0 {
arch/arm64/boot/dts/rockchip/rk3576-evb2-v10.dts new file +9
-0+ rgmii_phy0: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0x1>; + pinctrl-names = "default"; + pinctrl-0 = <&rgmii_phy0_rst>; + reset-assert-us = <20000>; + reset-deassert-us = <100000>; + reset-gpios = <&gpio3 RK_PD3 GPIO_ACTIVE_LOW>; + tx-internal-delay-ps = <1900>;What PHY is this? Does it actually implement this property?
Quoted 7 lines
Quoted 4 lines
It is also close to the 2000ps default. Have you put the board in an environment chamber and run tests at -20C to +70C to see if it will work with the default 2000ps?
It is MotorComm yt8xxx PHY. I chose 1950 here because I find that the MotorComm PHY binding only offer the options of 1950 or 2100.
Without the property it should default to something near to 2000. Most MAC/PHY pairs should work without this property, if the board is designed correctly. So i suggest you only have a tx-internal-delay-ps if it is required.
Andrew