* [PATCH v6 0/5] Add DeepComputing FML13V01 board dts
@ 2024-10-27 14:44 Guodong Xu
2024-10-27 14:44 ` [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node Guodong Xu
` (4 more replies)
0 siblings, 5 replies; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 14:44 UTC (permalink / raw)
To: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel,
Guodong Xu
This series updates Device Tree related files to introduce the
FML13V10 board from DeepComputing, which incorporates a StarFive
JH7110 SoC. This board is designed for use on the Framework Laptop 13
Chassis, which has (Framework) SKU FRANHQ0001.
The original three versions of this series were posted by Sandie Cao
from DeepComputing. Her mailer configuration caused mail threading
errors, which led to some confusion. After some discussion, we have
agreed to take over moving this series toward acceptance.
In the original series, the FML13V10 board DTS file disabled some
nodes that had been enabled in a common included DTSI file. We
proposed fixing this in a follow-on series. However there was some
disagreement about the right way to do this. In the end, Emil
requested that we resolve this by adding two changes to the next
version of the patch series:
- Do not enable any nodes in the common DTSI file that would need
to be disabled in a board DTS (or DTSI) file. (Note that there
still might be nodes enabled in the common file.)
- Because it will differ dependent on board, do not define the
"dr_mode" (dual-role mode) property in the common DTSI file,
defining it in the board files instead.
To address this, two new patches have been added to the beginning
of this version of the series. The first patch no longer enables
nodes that would need to be disabled for the new FML13V01 board,
and enables them instead in the existing boards that need them
enabled. The second patch moves the definition of the "dr_mode"
property for the usb0 node out of the common file and into the
board files.
The remaining three patches are roughly the same as the three
patches in the previous version of this series. The final
patch has been modified, because it no longer needs to disable
certain nodes that had previously been enabled.
Below is a version history, including direct links to all of the
patches (note: in v1, v2 and v3, a single link to each series
doesn't work).
Best regards,
Guodong, Alex
v6:
- Updated to apply to the latest version of riscv/for-next
- Move nodes enablement from jh7110-common.dtsi into board dts/dtsi
- Do not specify the USB "dr_mode" property in the common file
- Add Emil's reviewed-by on patch 4 (previously patch 2)
v5:
- Remove the extra "From:" line in commit messages of patch 1 & 2.
https://lore.kernel.org/all/20241020134959.519462-1-guodong@riscstar.com/
v4:
- Board name was changed from FM7110 to FML13V10
- Descriptions for all patches in this series were updated slightly
- Add Rob's ack on patch 2
- In patch 3, device nodes were updated to reflect their proper status
https://lore.kernel.org/all/20241019162605.308475-1-guodong@riscstar.com/
v3:
- Update board features into description
- Add Krzysztof's ack on patch 1
https://lore.kernel.org/all/20240925053123.1364574-1-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240925053123.1364574-2-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240925053123.1364574-3-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240925053123.1364574-4-sandie.cao@deepcomputing.io/
v2:
- Add deepcomputing into vendor list.
- Add deepcomputing,fm7110 into model compatible list.
- Framework Config will be included in later a patch.
https://lore.kernel.org/all/20240924080650.1345485-1-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240924080650.1345485-2-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240924080650.1345485-3-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240924080650.1345485-4-sandie.cao@deepcomputing.io/
v1:
- Add framework dts and config.
https://lore.kernel.org/all/20240923053621.1585972-1-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240923053621.1585972-2-sandie.cao@deepcomputing.io/
https://lore.kernel.org/all/20240923053806.1586080-1-sandie.cao@deepcomputing.io/
Guodong Xu (3):
riscv: dts: starfive: jh7110-common: revised device node
riscv: dts: starfive: jh7110-common: move usb0 config to board dts
riscv: dts: starfive: add DeepComputing FML13V01 board device tree
Sandie Cao (2):
dt-bindings: vendor: add deepcomputing
dt-bindings: riscv: starfive: add deepcomputing,fml13v01
.../devicetree/bindings/riscv/starfive.yaml | 1 +
.../devicetree/bindings/vendor-prefixes.yaml | 2 ++
arch/riscv/boot/dts/starfive/Makefile | 1 +
.../boot/dts/starfive/jh7110-common.dtsi | 10 --------
.../jh7110-deepcomputing-fml13v01.dts | 17 +++++++++++++
.../boot/dts/starfive/jh7110-milkv-mars.dts | 22 ++++++++++++++++
.../dts/starfive/jh7110-pine64-star64.dts | 22 ++++++++++++++++
.../jh7110-starfive-visionfive-2.dtsi | 25 +++++++++++++++++++
8 files changed, 90 insertions(+), 10 deletions(-)
create mode 100644 arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
--
2.34.1
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node
2024-10-27 14:44 [PATCH v6 0/5] Add DeepComputing FML13V01 board dts Guodong Xu
@ 2024-10-27 14:44 ` Guodong Xu
2024-10-27 16:35 ` Emil Renner Berthing
2024-10-27 14:44 ` [PATCH v6 2/5] riscv: dts: starfive: jh7110-common: move usb0 config to board dts Guodong Xu
` (3 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 14:44 UTC (permalink / raw)
To: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel,
Guodong Xu
Earlier this year a new DTSI file was created to define common
properties for the StarFive VisionFive 2 and Milk-V Mars boards,
both of which use the StarFive JH7110 SoC. The Pine64 Star64
board has also been added since that time.
Some of the nodes defined in "jh7110-common.dtsi" are enabled in
that file because all of the boards including it "want" them
enabled.
An upcoming patch enables another JH7110 board, but for that
board not all of these common nodes should be enabled. Prepare
for supporting the new board by avoiding enabling these nodes in
"jh711-common.dtsi", and enable them instead in these files:
jh7110-milkv-mars.dts
jh7110-pine64-star64.dts
jh7110-starfive-visionfive-2.dtsi
Signed-off-by: Alex Elder <elder@riscstar.com>
Signed-off-by: Guodong Xu <guodong@riscstar.com>
---
v6: New patch
.../boot/dts/starfive/jh7110-common.dtsi | 5 -----
.../boot/dts/starfive/jh7110-milkv-mars.dts | 17 ++++++++++++++++
.../dts/starfive/jh7110-pine64-star64.dts | 17 ++++++++++++++++
.../jh7110-starfive-visionfive-2.dtsi | 20 +++++++++++++++++++
4 files changed, 54 insertions(+), 5 deletions(-)
diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
index c7771b3b6475..9e77f79ec162 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
+++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
.../boot/dts/starfive/jh7110-common.dtsi | 5 -----
.../boot/dts/starfive/jh7110-milkv-mars.dts | 17 ++++++++++++++++
.../dts/starfive/jh7110-pine64-star64.dts | 17 ++++++++++++++++
.../jh7110-starfive-visionfive-2.dtsi | 20 +++++++++++++++++++
4 files changed, 54 insertions(+), 5 deletions(-)
diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
index c7771b3b6475..9e77f79ec162 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
+++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
@@ -176,7 +176,6 @@ csi2rx_to_camss: endpoint {
&gmac0 {
phy-handle = <&phy0>;
phy-mode = "rgmii-id";
- status = "okay";
mdio {
#address-cells = <1>;
@@ -196,7 +195,6 @@ &i2c0 {
i2c-scl-falling-time-ns = <510>;
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
- status = "okay";
};
&i2c2 {
@@ -311,7 +309,6 @@ &pcie1 {
&pwmdac {
pinctrl-names = "default";
pinctrl-0 = <&pwmdac_pins>;
- status = "okay";
};
&qspi {
@@ -350,13 +347,11 @@ uboot@100000 {
&pwm {
pinctrl-names = "default";
pinctrl-0 = <&pwm_pins>;
- status = "okay";
};
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins>;
- status = "okay";
spi_dev0: spi@0 {
compatible = "rohm,dh2228fv";
diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
index 5cb9e99e1dac..66ad3eb2fd66 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
+++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
@@ -15,6 +15,11 @@ &gmac0 {
starfive,tx-use-rgmii-clk;
assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
+ status = "okay";
+};
+
+&i2c0 {
+ status = "okay";
};
&pcie0 {
@@ -35,3 +40,15 @@ &phy0 {
rx-internal-delay-ps = <1500>;
tx-internal-delay-ps = <1500>;
};
+
+&pwm {
+ status = "okay";
+};
+
+&pwmdac {
+ status = "okay";
+};
+
+&spi0 {
+ status = "okay";
+};
diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
index b720cdd15ed6..dbc8612b8464 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
+++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
@@ -18,6 +18,7 @@ &gmac0 {
starfive,tx-use-rgmii-clk;
assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
+ status = "okay";
};
&gmac1 {
@@ -39,6 +40,10 @@ phy1: ethernet-phy@1 {
};
};
+&i2c0 {
+ status = "okay";
+};
+
&pcie1 {
status = "okay";
};
@@ -63,3 +68,15 @@ &phy1 {
motorcomm,tx-clk-10-inverted;
motorcomm,tx-clk-100-inverted;
};
+
+&pwm {
+ status = "okay";
+};
+
+&pwmdac {
+ status = "okay";
+};
+
+&spi0 {
+ status = "okay";
+};
diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
index 18f38fc790a4..ef93a394bb2f 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
+++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
@@ -13,6 +13,10 @@ aliases {
};
};
+&gmac0 {
+ status = "okay";
+};
+
&gmac1 {
phy-handle = <&phy1>;
phy-mode = "rgmii-id";
@@ -29,6 +33,10 @@ phy1: ethernet-phy@1 {
};
};
+&i2c0 {
+ status = "okay";
+};
+
&mmc0 {
non-removable;
};
@@ -40,3 +48,15 @@ &pcie0 {
&pcie1 {
status = "okay";
};
+
+&pwm {
+ status = "okay";
+};
+
+&pwmdac {
+ status = "okay";
+};
+
+&spi0 {
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v6 2/5] riscv: dts: starfive: jh7110-common: move usb0 config to board dts
2024-10-27 14:44 [PATCH v6 0/5] Add DeepComputing FML13V01 board dts Guodong Xu
2024-10-27 14:44 ` [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node Guodong Xu
@ 2024-10-27 14:44 ` Guodong Xu
2024-10-27 16:38 ` Emil Renner Berthing
2024-10-27 14:44 ` [PATCH v6 3/5] dt-bindings: vendor: add deepcomputing Guodong Xu
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 14:44 UTC (permalink / raw)
To: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel,
Guodong Xu
The JH7110 USB0 can operate as a dual-role USB device. Different
boards can have different configuration.
For all current boards this device operates in peripheral mode, but
on a new board this operates in host mode. This property will no
longer be common, so define the "dr_mode" property in the board files
rather than in the common DTSI file.
Signed-off-by: Alex Elder <elder@riscstar.com>
Signed-off-by: Guodong Xu <guodong@riscstar.com>
---
v6: New patch
arch/riscv/boot/dts/starfive/jh7110-common.dtsi | 5 -----
arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts | 5 +++++
arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts | 5 +++++
.../boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi | 5 +++++
4 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
index 9e77f79ec162..87ea81e9fed4 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
+++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
@@ -637,11 +637,6 @@ &uart0 {
status = "okay";
};
-&usb0 {
- dr_mode = "peripheral";
- status = "okay";
-};
-
&U74_1 {
cpu-supply = <&vdd_cpu>;
};
diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
index 66ad3eb2fd66..0d248b671d4b 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
+++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
@@ -52,3 +52,8 @@ &pwmdac {
&spi0 {
status = "okay";
};
+
+&usb0 {
+ dr_mode = "peripheral";
+ status = "okay";
+};
diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
index dbc8612b8464..d5180c67ac55 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
+++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
@@ -80,3 +80,8 @@ &pwmdac {
&spi0 {
status = "okay";
};
+
+&usb0 {
+ dr_mode = "peripheral";
+ status = "okay";
+};
diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
index ef93a394bb2f..5f14afb2c24d 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
+++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
@@ -60,3 +60,8 @@ &pwmdac {
&spi0 {
status = "okay";
};
+
+&usb0 {
+ dr_mode = "peripheral";
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v6 3/5] dt-bindings: vendor: add deepcomputing
2024-10-27 14:44 [PATCH v6 0/5] Add DeepComputing FML13V01 board dts Guodong Xu
2024-10-27 14:44 ` [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node Guodong Xu
2024-10-27 14:44 ` [PATCH v6 2/5] riscv: dts: starfive: jh7110-common: move usb0 config to board dts Guodong Xu
@ 2024-10-27 14:44 ` Guodong Xu
2024-10-27 14:44 ` [PATCH v6 4/5] dt-bindings: riscv: starfive: add deepcomputing,fml13v01 Guodong Xu
2024-10-27 14:44 ` [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree Guodong Xu
4 siblings, 0 replies; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 14:44 UTC (permalink / raw)
To: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel,
Krzysztof Kozlowski, Guodong Xu
From: Sandie Cao <sandie.cao@deepcomputing.io>
Add "deepcomputing" to the Devicetree Vendor Prefix Registry.
Signed-off-by: Sandie Cao <sandie.cao@deepcomputing.io>
Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
[elder@riscstar.com: revised the description]
Signed-off-by: Alex Elder <elder@riscstar.com>
Signed-off-by: Guodong Xu <guodong@riscstar.com>
---
v6: No change
v5: Removed extra "From:" line in the commit message
v4: Updated description
v3: Add Krzysztof's ack
v2: Add deepcomputing into Vendor Prefix Registery
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index b320a39de7fe..f8bb3df65797 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -356,6 +356,8 @@ patternProperties:
description: DataImage, Inc.
"^davicom,.*":
description: DAVICOM Semiconductor, Inc.
+ "^deepcomputing,.*":
+ description: DeepComputing (HK) Limited
"^dell,.*":
description: Dell Inc.
"^delta,.*":
--
2.34.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v6 4/5] dt-bindings: riscv: starfive: add deepcomputing,fml13v01
2024-10-27 14:44 [PATCH v6 0/5] Add DeepComputing FML13V01 board dts Guodong Xu
` (2 preceding siblings ...)
2024-10-27 14:44 ` [PATCH v6 3/5] dt-bindings: vendor: add deepcomputing Guodong Xu
@ 2024-10-27 14:44 ` Guodong Xu
2024-10-27 14:44 ` [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree Guodong Xu
4 siblings, 0 replies; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 14:44 UTC (permalink / raw)
To: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel,
Guodong Xu, Emil Renner Berthing
From: Sandie Cao <sandie.cao@deepcomputing.io>
Add "deepcomputing,fml13v01" as a StarFive SoC-based board.
The DeepComputing FML13V01 board incorporates a StarFive JH7110 SoC, and
it's designed for the Framework Laptop 13 Chassis, which has (Framework)
SKU FRANHQ0001.
Signed-off-by: Sandie Cao <sandie.cao@deepcomputing.io>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
[elder@riscstar.com: considerably shortened the description]
Signed-off-by: Alex Elder <elder@riscstar.com>
Signed-off-by: Guodong Xu <guodong@riscstar.com>
Reviewed-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
---
v6: Added Emil's Reviewed-by
v5: Removed extra "From:" line in the commit message
v4: Added Rob's Ack
Updated description
Changed board name from fm7110 to fml13v01
v3: No change
v2: Add deepcomputing,fm7110 into model compatible list
Documentation/devicetree/bindings/riscv/starfive.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/riscv/starfive.yaml b/Documentation/devicetree/bindings/riscv/starfive.yaml
index 4d5c857b3cac..7ef85174353d 100644
--- a/Documentation/devicetree/bindings/riscv/starfive.yaml
+++ b/Documentation/devicetree/bindings/riscv/starfive.yaml
@@ -26,6 +26,7 @@ properties:
- items:
- enum:
+ - deepcomputing,fml13v01
- milkv,mars
- pine64,star64
- starfive,visionfive-2-v1.2a
--
2.34.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree
2024-10-27 14:44 [PATCH v6 0/5] Add DeepComputing FML13V01 board dts Guodong Xu
` (3 preceding siblings ...)
2024-10-27 14:44 ` [PATCH v6 4/5] dt-bindings: riscv: starfive: add deepcomputing,fml13v01 Guodong Xu
@ 2024-10-27 14:44 ` Guodong Xu
2024-10-27 16:42 ` Emil Renner Berthing
4 siblings, 1 reply; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 14:44 UTC (permalink / raw)
To: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel,
Guodong Xu
From: Sandie Cao <sandie.cao@deepcomputing.io>
The FML13V01 board from DeepComputing incorporates a StarFive JH7110 SoC.
It is a mainboard designed for the Framework Laptop 13 Chassis, which has
(Framework) SKU FRANHQ0001.
The FML13V01 board features:
- StarFive JH7110 SoC
- LPDDR4 8GB
- eMMC 32GB or 128GB
- QSPI Flash
- MicroSD Slot
- PCIe-based Wi-Fi
- 4 USB-C Ports
- Port 1: PD 3.0 (60W Max), USB 3.2 Gen 1, DP 1.4 (4K@30Hz/2.5K@60Hz)
- Port 2: PD 3.0 (60W Max), USB 3.2 Gen 1
- Port 3 & 4: USB 3.2 Gen 1
Create the DTS file for the DeepComputing FML13V01 board. Based on
'jh7110-common.dtsi', usb0 is enabled and is set to operate as a "host".
Signed-off-by: Sandie Cao <sandie.cao@deepcomputing.io>
[elder@riscstar.com: revised the description, updated some nodes]
Signed-off-by: Alex Elder <elder@riscstar.com>
Signed-off-by: Guodong Xu <guodong@riscstar.com>
---
v6: Dropped all node status disabled code
Enabled usb0 and set its operation mode to "host"
v5: No change
v4: Changed model string to "DeepComputing FML13V01"
Changed dts filename and Makefile accordingly to reflect the change
Updated device nodes status, and verified functional
Revised the commit message
v3: Updated the commit message
v2: Changed the model and copmatible strings
Updated the commit message with board features
arch/riscv/boot/dts/starfive/Makefile | 1 +
.../starfive/jh7110-deepcomputing-fml13v01.dts | 17 +++++++++++++++++
2 files changed, 18 insertions(+)
create mode 100644 arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
diff --git a/arch/riscv/boot/dts/starfive/Makefile b/arch/riscv/boot/dts/starfive/Makefile
index 7a163a7d6ba3..b3bb12f78e7d 100644
--- a/arch/riscv/boot/dts/starfive/Makefile
+++ b/arch/riscv/boot/dts/starfive/Makefile
@@ -8,6 +8,7 @@ DTC_FLAGS_jh7110-starfive-visionfive-2-v1.3b := -@
dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-beaglev-starlight.dtb
dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-starfive-visionfive-v1.dtb
+dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-deepcomputing-fml13v01.dtb
dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-milkv-mars.dtb
dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-pine64-star64.dtb
dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.2a.dtb
diff --git a/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts b/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
new file mode 100644
index 000000000000..30b0715196b6
--- /dev/null
+++ b/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
@@ -0,0 +1,17 @@
+// SPDX-License-Identifier: GPL-2.0 OR MIT
+/*
+ * Copyright (C) 2024 DeepComputing (HK) Limited
+ */
+
+/dts-v1/;
+#include "jh7110-common.dtsi"
+
+/ {
+ model = "DeepComputing FML13V01";
+ compatible = "deepcomputing,fml13v01", "starfive,jh7110";
+};
+
+&usb0 {
+ dr_mode = "host";
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node
2024-10-27 14:44 ` [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node Guodong Xu
@ 2024-10-27 16:35 ` Emil Renner Berthing
2024-10-27 22:52 ` Guodong Xu
0 siblings, 1 reply; 11+ messages in thread
From: Emil Renner Berthing @ 2024-10-27 16:35 UTC (permalink / raw)
To: Guodong Xu, Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel
Guodong Xu wrote:
> Earlier this year a new DTSI file was created to define common
> properties for the StarFive VisionFive 2 and Milk-V Mars boards,
> both of which use the StarFive JH7110 SoC. The Pine64 Star64
> board has also been added since that time.
>
> Some of the nodes defined in "jh7110-common.dtsi" are enabled in
> that file because all of the boards including it "want" them
> enabled.
>
> An upcoming patch enables another JH7110 board, but for that
> board not all of these common nodes should be enabled. Prepare
> for supporting the new board by avoiding enabling these nodes in
> "jh711-common.dtsi", and enable them instead in these files:
jh7110-common.dtsi
> jh7110-milkv-mars.dts
> jh7110-pine64-star64.dts
> jh7110-starfive-visionfive-2.dtsi
>
> Signed-off-by: Alex Elder <elder@riscstar.com>
> Signed-off-by: Guodong Xu <guodong@riscstar.com>
> ---
> v6: New patch
>
> .../boot/dts/starfive/jh7110-common.dtsi | 5 -----
> .../boot/dts/starfive/jh7110-milkv-mars.dts | 17 ++++++++++++++++
> .../dts/starfive/jh7110-pine64-star64.dts | 17 ++++++++++++++++
> .../jh7110-starfive-visionfive-2.dtsi | 20 +++++++++++++++++++
> 4 files changed, 54 insertions(+), 5 deletions(-)
>
From here..
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> index c7771b3b6475..9e77f79ec162 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> +++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> .../boot/dts/starfive/jh7110-common.dtsi | 5 -----
> .../boot/dts/starfive/jh7110-milkv-mars.dts | 17 ++++++++++++++++
> .../dts/starfive/jh7110-pine64-star64.dts | 17 ++++++++++++++++
> .../jh7110-starfive-visionfive-2.dtsi | 20 +++++++++++++++++++
> 4 files changed, 54 insertions(+), 5 deletions(-)
..to here seems to be added by mistake. At least my "git am" wouldn't apply it
like this.
With that fixed this looks good to me, thanks.
Reviewed-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> index c7771b3b6475..9e77f79ec162 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> +++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> @@ -176,7 +176,6 @@ csi2rx_to_camss: endpoint {
> &gmac0 {
> phy-handle = <&phy0>;
> phy-mode = "rgmii-id";
> - status = "okay";
>
> mdio {
> #address-cells = <1>;
> @@ -196,7 +195,6 @@ &i2c0 {
> i2c-scl-falling-time-ns = <510>;
> pinctrl-names = "default";
> pinctrl-0 = <&i2c0_pins>;
> - status = "okay";
> };
>
> &i2c2 {
> @@ -311,7 +309,6 @@ &pcie1 {
> &pwmdac {
> pinctrl-names = "default";
> pinctrl-0 = <&pwmdac_pins>;
> - status = "okay";
> };
>
> &qspi {
> @@ -350,13 +347,11 @@ uboot@100000 {
> &pwm {
> pinctrl-names = "default";
> pinctrl-0 = <&pwm_pins>;
> - status = "okay";
> };
>
> &spi0 {
> pinctrl-names = "default";
> pinctrl-0 = <&spi0_pins>;
> - status = "okay";
>
> spi_dev0: spi@0 {
> compatible = "rohm,dh2228fv";
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> index 5cb9e99e1dac..66ad3eb2fd66 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> +++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> @@ -15,6 +15,11 @@ &gmac0 {
> starfive,tx-use-rgmii-clk;
> assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
> assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
> + status = "okay";
> +};
> +
> +&i2c0 {
> + status = "okay";
> };
>
> &pcie0 {
> @@ -35,3 +40,15 @@ &phy0 {
> rx-internal-delay-ps = <1500>;
> tx-internal-delay-ps = <1500>;
> };
> +
> +&pwm {
> + status = "okay";
> +};
> +
> +&pwmdac {
> + status = "okay";
> +};
> +
> +&spi0 {
> + status = "okay";
> +};
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> index b720cdd15ed6..dbc8612b8464 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> +++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> @@ -18,6 +18,7 @@ &gmac0 {
> starfive,tx-use-rgmii-clk;
> assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
> assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
> + status = "okay";
> };
>
> &gmac1 {
> @@ -39,6 +40,10 @@ phy1: ethernet-phy@1 {
> };
> };
>
> +&i2c0 {
> + status = "okay";
> +};
> +
> &pcie1 {
> status = "okay";
> };
> @@ -63,3 +68,15 @@ &phy1 {
> motorcomm,tx-clk-10-inverted;
> motorcomm,tx-clk-100-inverted;
> };
> +
> +&pwm {
> + status = "okay";
> +};
> +
> +&pwmdac {
> + status = "okay";
> +};
> +
> +&spi0 {
> + status = "okay";
> +};
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> index 18f38fc790a4..ef93a394bb2f 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> @@ -13,6 +13,10 @@ aliases {
> };
> };
>
> +&gmac0 {
> + status = "okay";
> +};
> +
> &gmac1 {
> phy-handle = <&phy1>;
> phy-mode = "rgmii-id";
> @@ -29,6 +33,10 @@ phy1: ethernet-phy@1 {
> };
> };
>
> +&i2c0 {
> + status = "okay";
> +};
> +
> &mmc0 {
> non-removable;
> };
> @@ -40,3 +48,15 @@ &pcie0 {
> &pcie1 {
> status = "okay";
> };
> +
> +&pwm {
> + status = "okay";
> +};
> +
> +&pwmdac {
> + status = "okay";
> +};
> +
> +&spi0 {
> + status = "okay";
> +};
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v6 2/5] riscv: dts: starfive: jh7110-common: move usb0 config to board dts
2024-10-27 14:44 ` [PATCH v6 2/5] riscv: dts: starfive: jh7110-common: move usb0 config to board dts Guodong Xu
@ 2024-10-27 16:38 ` Emil Renner Berthing
0 siblings, 0 replies; 11+ messages in thread
From: Emil Renner Berthing @ 2024-10-27 16:38 UTC (permalink / raw)
To: Guodong Xu, Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel
Guodong Xu wrote:
> The JH7110 USB0 can operate as a dual-role USB device. Different
> boards can have different configuration.
>
> For all current boards this device operates in peripheral mode, but
> on a new board this operates in host mode. This property will no
> longer be common, so define the "dr_mode" property in the board files
> rather than in the common DTSI file.
>
> Signed-off-by: Alex Elder <elder@riscstar.com>
> Signed-off-by: Guodong Xu <guodong@riscstar.com>
Reviewed-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> ---
> v6: New patch
>
> arch/riscv/boot/dts/starfive/jh7110-common.dtsi | 5 -----
> arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts | 5 +++++
> arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts | 5 +++++
> .../boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi | 5 +++++
> 4 files changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> index 9e77f79ec162..87ea81e9fed4 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> +++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> @@ -637,11 +637,6 @@ &uart0 {
> status = "okay";
> };
>
> -&usb0 {
> - dr_mode = "peripheral";
> - status = "okay";
> -};
> -
> &U74_1 {
> cpu-supply = <&vdd_cpu>;
> };
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> index 66ad3eb2fd66..0d248b671d4b 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> +++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> @@ -52,3 +52,8 @@ &pwmdac {
> &spi0 {
> status = "okay";
> };
> +
> +&usb0 {
> + dr_mode = "peripheral";
> + status = "okay";
> +};
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> index dbc8612b8464..d5180c67ac55 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> +++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> @@ -80,3 +80,8 @@ &pwmdac {
> &spi0 {
> status = "okay";
> };
> +
> +&usb0 {
> + dr_mode = "peripheral";
> + status = "okay";
> +};
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> index ef93a394bb2f..5f14afb2c24d 100644
> --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> @@ -60,3 +60,8 @@ &pwmdac {
> &spi0 {
> status = "okay";
> };
> +
> +&usb0 {
> + dr_mode = "peripheral";
> + status = "okay";
> +};
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree
2024-10-27 14:44 ` [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree Guodong Xu
@ 2024-10-27 16:42 ` Emil Renner Berthing
2024-10-28 1:34 ` Guodong Xu
0 siblings, 1 reply; 11+ messages in thread
From: Emil Renner Berthing @ 2024-10-27 16:42 UTC (permalink / raw)
To: Guodong Xu, Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman
Cc: Paul Walmsley, Palmer Dabbelt, Albert Ou, Neil Armstrong,
Heiko Stuebner, Michael Zhu, Drew Fustini, Alexandru Stan,
Daniel Schaefer, Sandie Cao, Yuning Liang, Huiming Qiu,
Alex Elder, linux, devicetree, linux-riscv, linux-kernel
Guodong Xu wrote:
> From: Sandie Cao <sandie.cao@deepcomputing.io>
>
> The FML13V01 board from DeepComputing incorporates a StarFive JH7110 SoC.
> It is a mainboard designed for the Framework Laptop 13 Chassis, which has
> (Framework) SKU FRANHQ0001.
>
> The FML13V01 board features:
> - StarFive JH7110 SoC
> - LPDDR4 8GB
> - eMMC 32GB or 128GB
> - QSPI Flash
> - MicroSD Slot
> - PCIe-based Wi-Fi
> - 4 USB-C Ports
> - Port 1: PD 3.0 (60W Max), USB 3.2 Gen 1, DP 1.4 (4K@30Hz/2.5K@60Hz)
> - Port 2: PD 3.0 (60W Max), USB 3.2 Gen 1
> - Port 3 & 4: USB 3.2 Gen 1
>
> Create the DTS file for the DeepComputing FML13V01 board. Based on
> 'jh7110-common.dtsi', usb0 is enabled and is set to operate as a "host".
>
> Signed-off-by: Sandie Cao <sandie.cao@deepcomputing.io>
> [elder@riscstar.com: revised the description, updated some nodes]
> Signed-off-by: Alex Elder <elder@riscstar.com>
> Signed-off-by: Guodong Xu <guodong@riscstar.com>
Thanks! Will you be adding more stuff later like fx. the I2S sound chip?
Reviewed-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> ---
> v6: Dropped all node status disabled code
> Enabled usb0 and set its operation mode to "host"
> v5: No change
> v4: Changed model string to "DeepComputing FML13V01"
> Changed dts filename and Makefile accordingly to reflect the change
> Updated device nodes status, and verified functional
> Revised the commit message
> v3: Updated the commit message
> v2: Changed the model and copmatible strings
> Updated the commit message with board features
>
> arch/riscv/boot/dts/starfive/Makefile | 1 +
> .../starfive/jh7110-deepcomputing-fml13v01.dts | 17 +++++++++++++++++
> 2 files changed, 18 insertions(+)
> create mode 100644 arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
>
> diff --git a/arch/riscv/boot/dts/starfive/Makefile b/arch/riscv/boot/dts/starfive/Makefile
> index 7a163a7d6ba3..b3bb12f78e7d 100644
> --- a/arch/riscv/boot/dts/starfive/Makefile
> +++ b/arch/riscv/boot/dts/starfive/Makefile
> @@ -8,6 +8,7 @@ DTC_FLAGS_jh7110-starfive-visionfive-2-v1.3b := -@
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-beaglev-starlight.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-starfive-visionfive-v1.dtb
>
> +dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-deepcomputing-fml13v01.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-milkv-mars.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-pine64-star64.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.2a.dtb
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts b/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
> new file mode 100644
> index 000000000000..30b0715196b6
> --- /dev/null
> +++ b/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
> @@ -0,0 +1,17 @@
> +// SPDX-License-Identifier: GPL-2.0 OR MIT
> +/*
> + * Copyright (C) 2024 DeepComputing (HK) Limited
> + */
> +
> +/dts-v1/;
> +#include "jh7110-common.dtsi"
> +
> +/ {
> + model = "DeepComputing FML13V01";
> + compatible = "deepcomputing,fml13v01", "starfive,jh7110";
> +};
> +
> +&usb0 {
> + dr_mode = "host";
> + status = "okay";
> +};
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node
2024-10-27 16:35 ` Emil Renner Berthing
@ 2024-10-27 22:52 ` Guodong Xu
0 siblings, 0 replies; 11+ messages in thread
From: Guodong Xu @ 2024-10-27 22:52 UTC (permalink / raw)
To: Emil Renner Berthing
Cc: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Neil Armstrong, Heiko Stuebner,
Michael Zhu, Drew Fustini, Alexandru Stan, Daniel Schaefer,
Sandie Cao, Yuning Liang, Huiming Qiu, Alex Elder, linux,
devicetree, linux-riscv, linux-kernel
On Mon, Oct 28, 2024 at 12:35 AM Emil Renner Berthing
<emil.renner.berthing@canonical.com> wrote:
>
> Guodong Xu wrote:
> > Earlier this year a new DTSI file was created to define common
> > properties for the StarFive VisionFive 2 and Milk-V Mars boards,
> > both of which use the StarFive JH7110 SoC. The Pine64 Star64
> > board has also been added since that time.
> >
> > Some of the nodes defined in "jh7110-common.dtsi" are enabled in
> > that file because all of the boards including it "want" them
> > enabled.
> >
> > An upcoming patch enables another JH7110 board, but for that
> > board not all of these common nodes should be enabled. Prepare
> > for supporting the new board by avoiding enabling these nodes in
> > "jh711-common.dtsi", and enable them instead in these files:
>
> jh7110-common.dtsi
>
Will fix.
> > jh7110-milkv-mars.dts
> > jh7110-pine64-star64.dts
> > jh7110-starfive-visionfive-2.dtsi
> >
> > Signed-off-by: Alex Elder <elder@riscstar.com>
> > Signed-off-by: Guodong Xu <guodong@riscstar.com>
> > ---
> > v6: New patch
> >
> > .../boot/dts/starfive/jh7110-common.dtsi | 5 -----
> > .../boot/dts/starfive/jh7110-milkv-mars.dts | 17 ++++++++++++++++
> > .../dts/starfive/jh7110-pine64-star64.dts | 17 ++++++++++++++++
> > .../jh7110-starfive-visionfive-2.dtsi | 20 +++++++++++++++++++
> > 4 files changed, 54 insertions(+), 5 deletions(-)
> >
>
> From here..
>
> > diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> > index c7771b3b6475..9e77f79ec162 100644
> > --- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> > +++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> > .../boot/dts/starfive/jh7110-common.dtsi | 5 -----
> > .../boot/dts/starfive/jh7110-milkv-mars.dts | 17 ++++++++++++++++
> > .../dts/starfive/jh7110-pine64-star64.dts | 17 ++++++++++++++++
> > .../jh7110-starfive-visionfive-2.dtsi | 20 +++++++++++++++++++
> > 4 files changed, 54 insertions(+), 5 deletions(-)
>
> ..to here seems to be added by mistake. At least my "git am" wouldn't apply it
> like this.
>
My editing mistake. I will fix that.
> With that fixed this looks good to me, thanks.
>
> Reviewed-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
>
Thank you, Emil.
> > diff --git a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> > index c7771b3b6475..9e77f79ec162 100644
> > --- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> > +++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
> > @@ -176,7 +176,6 @@ csi2rx_to_camss: endpoint {
> > &gmac0 {
> > phy-handle = <&phy0>;
> > phy-mode = "rgmii-id";
> > - status = "okay";
> >
> > mdio {
> > #address-cells = <1>;
> > @@ -196,7 +195,6 @@ &i2c0 {
> > i2c-scl-falling-time-ns = <510>;
> > pinctrl-names = "default";
> > pinctrl-0 = <&i2c0_pins>;
> > - status = "okay";
> > };
> >
> > &i2c2 {
> > @@ -311,7 +309,6 @@ &pcie1 {
> > &pwmdac {
> > pinctrl-names = "default";
> > pinctrl-0 = <&pwmdac_pins>;
> > - status = "okay";
> > };
> >
> > &qspi {
> > @@ -350,13 +347,11 @@ uboot@100000 {
> > &pwm {
> > pinctrl-names = "default";
> > pinctrl-0 = <&pwm_pins>;
> > - status = "okay";
> > };
> >
> > &spi0 {
> > pinctrl-names = "default";
> > pinctrl-0 = <&spi0_pins>;
> > - status = "okay";
> >
> > spi_dev0: spi@0 {
> > compatible = "rohm,dh2228fv";
> > diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> > index 5cb9e99e1dac..66ad3eb2fd66 100644
> > --- a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> > +++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
> > @@ -15,6 +15,11 @@ &gmac0 {
> > starfive,tx-use-rgmii-clk;
> > assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
> > assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
> > + status = "okay";
> > +};
> > +
> > +&i2c0 {
> > + status = "okay";
> > };
> >
> > &pcie0 {
> > @@ -35,3 +40,15 @@ &phy0 {
> > rx-internal-delay-ps = <1500>;
> > tx-internal-delay-ps = <1500>;
> > };
> > +
> > +&pwm {
> > + status = "okay";
> > +};
> > +
> > +&pwmdac {
> > + status = "okay";
> > +};
> > +
> > +&spi0 {
> > + status = "okay";
> > +};
> > diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> > index b720cdd15ed6..dbc8612b8464 100644
> > --- a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> > +++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> > @@ -18,6 +18,7 @@ &gmac0 {
> > starfive,tx-use-rgmii-clk;
> > assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
> > assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
> > + status = "okay";
> > };
> >
> > &gmac1 {
> > @@ -39,6 +40,10 @@ phy1: ethernet-phy@1 {
> > };
> > };
> >
> > +&i2c0 {
> > + status = "okay";
> > +};
> > +
> > &pcie1 {
> > status = "okay";
> > };
> > @@ -63,3 +68,15 @@ &phy1 {
> > motorcomm,tx-clk-10-inverted;
> > motorcomm,tx-clk-100-inverted;
> > };
> > +
> > +&pwm {
> > + status = "okay";
> > +};
> > +
> > +&pwmdac {
> > + status = "okay";
> > +};
> > +
> > +&spi0 {
> > + status = "okay";
> > +};
> > diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> > index 18f38fc790a4..ef93a394bb2f 100644
> > --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> > +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
> > @@ -13,6 +13,10 @@ aliases {
> > };
> > };
> >
> > +&gmac0 {
> > + status = "okay";
> > +};
> > +
> > &gmac1 {
> > phy-handle = <&phy1>;
> > phy-mode = "rgmii-id";
> > @@ -29,6 +33,10 @@ phy1: ethernet-phy@1 {
> > };
> > };
> >
> > +&i2c0 {
> > + status = "okay";
> > +};
> > +
> > &mmc0 {
> > non-removable;
> > };
> > @@ -40,3 +48,15 @@ &pcie0 {
> > &pcie1 {
> > status = "okay";
> > };
> > +
> > +&pwm {
> > + status = "okay";
> > +};
> > +
> > +&pwmdac {
> > + status = "okay";
> > +};
> > +
> > +&spi0 {
> > + status = "okay";
> > +};
> > --
> > 2.34.1
> >
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree
2024-10-27 16:42 ` Emil Renner Berthing
@ 2024-10-28 1:34 ` Guodong Xu
0 siblings, 0 replies; 11+ messages in thread
From: Guodong Xu @ 2024-10-28 1:34 UTC (permalink / raw)
To: Emil Renner Berthing
Cc: Conor Dooley, Rob Herring, Krzysztof Kozlowski,
Emil Renner Berthing, rafal, Greg Kroah-Hartman, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Neil Armstrong, Heiko Stuebner,
Michael Zhu, Drew Fustini, Alexandru Stan, Daniel Schaefer,
Sandie Cao, Yuning Liang, Huiming Qiu, Alex Elder, linux,
devicetree, linux-riscv, linux-kernel
On Mon, Oct 28, 2024 at 12:42 AM Emil Renner Berthing
<emil.renner.berthing@canonical.com> wrote:
>
> Guodong Xu wrote:
> > From: Sandie Cao <sandie.cao@deepcomputing.io>
> >
> > The FML13V01 board from DeepComputing incorporates a StarFive JH7110 SoC.
> > It is a mainboard designed for the Framework Laptop 13 Chassis, which has
> > (Framework) SKU FRANHQ0001.
> >
> > The FML13V01 board features:
> > - StarFive JH7110 SoC
> > - LPDDR4 8GB
> > - eMMC 32GB or 128GB
> > - QSPI Flash
> > - MicroSD Slot
> > - PCIe-based Wi-Fi
> > - 4 USB-C Ports
> > - Port 1: PD 3.0 (60W Max), USB 3.2 Gen 1, DP 1.4 (4K@30Hz/2.5K@60Hz)
> > - Port 2: PD 3.0 (60W Max), USB 3.2 Gen 1
> > - Port 3 & 4: USB 3.2 Gen 1
> >
> > Create the DTS file for the DeepComputing FML13V01 board. Based on
> > 'jh7110-common.dtsi', usb0 is enabled and is set to operate as a "host".
> >
> > Signed-off-by: Sandie Cao <sandie.cao@deepcomputing.io>
> > [elder@riscstar.com: revised the description, updated some nodes]
> > Signed-off-by: Alex Elder <elder@riscstar.com>
> > Signed-off-by: Guodong Xu <guodong@riscstar.com>
>
> Thanks! Will you be adding more stuff later like fx. the I2S sound chip?
Yes! Any device that has been tested and shown to work correctly can be
enabled / updated later.
>
> Reviewed-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
>
Thank you Emil.
> > ---
> > v6: Dropped all node status disabled code
> > Enabled usb0 and set its operation mode to "host"
> > v5: No change
> > v4: Changed model string to "DeepComputing FML13V01"
> > Changed dts filename and Makefile accordingly to reflect the change
> > Updated device nodes status, and verified functional
> > Revised the commit message
> > v3: Updated the commit message
> > v2: Changed the model and copmatible strings
> > Updated the commit message with board features
> >
> > arch/riscv/boot/dts/starfive/Makefile | 1 +
> > .../starfive/jh7110-deepcomputing-fml13v01.dts | 17 +++++++++++++++++
> > 2 files changed, 18 insertions(+)
> > create mode 100644 arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
> >
> > diff --git a/arch/riscv/boot/dts/starfive/Makefile b/arch/riscv/boot/dts/starfive/Makefile
> > index 7a163a7d6ba3..b3bb12f78e7d 100644
> > --- a/arch/riscv/boot/dts/starfive/Makefile
> > +++ b/arch/riscv/boot/dts/starfive/Makefile
> > @@ -8,6 +8,7 @@ DTC_FLAGS_jh7110-starfive-visionfive-2-v1.3b := -@
> > dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-beaglev-starlight.dtb
> > dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-starfive-visionfive-v1.dtb
> >
> > +dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-deepcomputing-fml13v01.dtb
> > dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-milkv-mars.dtb
> > dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-pine64-star64.dtb
> > dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.2a.dtb
> > diff --git a/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts b/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
> > new file mode 100644
> > index 000000000000..30b0715196b6
> > --- /dev/null
> > +++ b/arch/riscv/boot/dts/starfive/jh7110-deepcomputing-fml13v01.dts
> > @@ -0,0 +1,17 @@
> > +// SPDX-License-Identifier: GPL-2.0 OR MIT
> > +/*
> > + * Copyright (C) 2024 DeepComputing (HK) Limited
> > + */
> > +
> > +/dts-v1/;
> > +#include "jh7110-common.dtsi"
> > +
> > +/ {
> > + model = "DeepComputing FML13V01";
> > + compatible = "deepcomputing,fml13v01", "starfive,jh7110";
> > +};
> > +
> > +&usb0 {
> > + dr_mode = "host";
> > + status = "okay";
> > +};
> > --
> > 2.34.1
> >
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2024-10-28 1:34 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-27 14:44 [PATCH v6 0/5] Add DeepComputing FML13V01 board dts Guodong Xu
2024-10-27 14:44 ` [PATCH v6 1/5] riscv: dts: starfive: jh7110-common: revised device node Guodong Xu
2024-10-27 16:35 ` Emil Renner Berthing
2024-10-27 22:52 ` Guodong Xu
2024-10-27 14:44 ` [PATCH v6 2/5] riscv: dts: starfive: jh7110-common: move usb0 config to board dts Guodong Xu
2024-10-27 16:38 ` Emil Renner Berthing
2024-10-27 14:44 ` [PATCH v6 3/5] dt-bindings: vendor: add deepcomputing Guodong Xu
2024-10-27 14:44 ` [PATCH v6 4/5] dt-bindings: riscv: starfive: add deepcomputing,fml13v01 Guodong Xu
2024-10-27 14:44 ` [PATCH v6 5/5] riscv: dts: starfive: add DeepComputing FML13V01 board device tree Guodong Xu
2024-10-27 16:42 ` Emil Renner Berthing
2024-10-28 1:34 ` Guodong Xu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox