diff mbox series

RISC-V: add Star64 board devicetree

Message ID IPHlm5mOKUzYfwGy0auyufx-oPkSrtQjUjiQLbtvspD69UPX9O98iB8P2mqM8ahNaerz0yUa009f4XABRniq7aj2PUp83hbRVVhhKmqT0Ss=@protonmail.com (mailing list archive)
State Superseded
Headers show
Series RISC-V: add Star64 board devicetree | expand

Commit Message

Henry Bell May 23, 2024, 7:06 p.m. UTC
The Pine64 Star64 is a development board based on the Starfive JH7110 SoC.
The board features:

- JH7110 SoC
- 4/8 GiB LPDDR4 DRAM
- AXP15060 PMIC
- 40 pin GPIO header
- 1x USB 3.0 host port
- 3x USB 2.0 host port
- 1x eMMC slot
- 1x MicroSD slot
- 1x QSPI Flash
- 2x 1Gbps Ethernet port
- 1x HDMI port
- 1x 4-lane DSI
- 1x 2-lane CSI
- 1x PCIe 2.0 x1 lane

Signed-off-by: Henry Bell <dmoo_dv@protonmail.com>
Cc: Conor Dooley <conor.dooley@microchip.com>
---
 arch/riscv/boot/dts/starfive/Makefile         |  1 +
 .../dts/starfive/jh7110-pine64-star64.dts     | 62 +++++++++++++++++++
 2 files changed, 63 insertions(+)
 create mode 100644 arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts

Comments

Krzysztof Kozlowski May 23, 2024, 8:27 p.m. UTC | #1
On 23/05/2024 21:06, H Bell wrote:
> The Pine64 Star64 is a development board based on the Starfive JH7110 SoC.
> The board features:
> 
> - JH7110 SoC
> - 4/8 GiB LPDDR4 DRAM
> - AXP15060 PMIC
> - 40 pin GPIO header
> - 1x USB 3.0 host port
> - 3x USB 2.0 host port
> - 1x eMMC slot
> - 1x MicroSD slot
> - 1x QSPI Flash
> - 2x 1Gbps Ethernet port
> - 1x HDMI port
> - 1x 4-lane DSI
> - 1x 2-lane CSI
> - 1x PCIe 2.0 x1 lane
> 
> Signed-off-by: Henry Bell <dmoo_dv@protonmail.com>
> Cc: Conor Dooley <conor.dooley@microchip.com>
> ---
>  arch/riscv/boot/dts/starfive/Makefile         |  1 +
>  .../dts/starfive/jh7110-pine64-star64.dts     | 62 +++++++++++++++++++
>  2 files changed, 63 insertions(+)
>  create mode 100644 arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> 
> diff --git a/arch/riscv/boot/dts/starfive/Makefile b/arch/riscv/boot/dts/starfive/Makefile
> index 2fa0cd7f31c3..7a163a7d6ba3 100644
> --- a/arch/riscv/boot/dts/starfive/Makefile
> +++ b/arch/riscv/boot/dts/starfive/Makefile
> @@ -9,5 +9,6 @@ dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-beaglev-starlight.dtb
>  dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-starfive-visionfive-v1.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
>  dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.3b.dtb
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> new file mode 100644
> index 000000000000..c70fffd51181
> --- /dev/null
> +++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
> @@ -0,0 +1,62 @@
> +// SPDX-License-Identifier: GPL-2.0 OR MIT
> +/*
> +* Copyright (C) 2022 StarFive Technology Co., Ltd.
> +* Copyright (C) 2022 Emil Renner Berthing <kernel@esmil.dk>
> +*/
> +
> +/dts-v1/;
> +#include "jh7110-common.dtsi"
> +
> +/ {
> +	model = "Pine64 Star64";
> +	compatible = "pine64,star64", "starfive,jh7110";

Please run scripts/checkpatch.pl and fix reported warnings. Then please
run `scripts/checkpatch.pl --strict` and (probably) fix more warnings.
Some warnings can be ignored, especially from --strict run, but the code
here looks like it needs a fix. Feel free to get in touch if the warning
is not clear.

It does not look like you tested the DTS against bindings. Please run
`make dtbs_check W=1` (see
Documentation/devicetree/bindings/writing-schema.rst or
https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/
for instructions).

> +		aliases {
> +				ethernet1 = &gmac1;
> +		};

Messed indentation.


> +};
> +
> +&gmac0 {
> +	starfive,tx-use-rgmii-clk;
> +	assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
> +	assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
> +};
> +
> +&gmac1 {
> +	phy-handle = <&phy1>;
> +	phy-mode = "rgmii-id";
> +	status = "okay";

Status is the last property. Please read DTS coding style.


Best regards,
Krzysztof
Markus Elfring May 25, 2024, 9:37 a.m. UTC | #2
> The board features:
…

Would you like to add an imperative wording for an improved change description?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.9#n94

Regards,
Markus
Henry Bell May 25, 2024, 10:12 a.m. UTC | #3
On Saturday, May 25th, 2024 at 9:37 AM, Markus Elfring <Markus.Elfring@web.de> wrote:

> …
> 
> > The board features:
> 
> …
> 
> Would you like to add an imperative wording for an improved change description?
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.9#n94
> 
> Regards,
> Markus

I'm happy to change it, but was going off the format used in Conor's  Milkv Mars commit
https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/commit/?id=04a228aadb84d894721b13197649ca741f3018bc
Conor Dooley May 25, 2024, 10:19 a.m. UTC | #4
On Sat, May 25, 2024 at 10:12:01AM +0000, Henry Bell wrote:
> On Saturday, May 25th, 2024 at 9:37 AM, Markus Elfring <Markus.Elfring@web.de> wrote:
> 
> > …
> > 
> > > The board features:
> > 
> > …
> > 
> > Would you like to add an imperative wording for an improved change description?
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.9#n94
> > 
> > Regards,
> > Markus
> 
> I'm happy to change it, but was going off the format used in Conor's  Milkv Mars commit
> https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/commit/?id=04a228aadb84d894721b13197649ca741f3018bc

Don't worry about Markus, most maintainers (myself included) ignore his
comments on patches. The commit message here is fine.

Thanks,
Conor.
Markus Elfring May 25, 2024, 12:11 p.m. UTC | #5
>>> Would you like to add an imperative wording for an improved change description?
>>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.9#n94>> I'm happy to change it, but was going off the format used in Conor's  Milkv Mars commit
>> https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/commit/?id=04a228aadb84d894721b13197649ca741f3018bc
>
> Don't worry about Markus, most maintainers (myself included) ignore his
> comments on patches. The commit message here is fine.

Would such a response mean also that you are occasionally ignoring requirements
from a referenced Linux development guideline?

Regards,
Markus
Conor Dooley May 25, 2024, 12:25 p.m. UTC | #6
On Sat, May 25, 2024 at 02:11:05PM +0200, Markus Elfring wrote:
> >>> Would you like to add an imperative wording for an improved change description?
> >>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.9#n94
> …
> >> I'm happy to change it, but was going off the format used in Conor's  Milkv Mars commit
> >> https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/commit/?id=04a228aadb84d894721b13197649ca741f3018bc
> >
> > Don't worry about Markus, most maintainers (myself included) ignore his
> > comments on patches. The commit message here is fine.
> 
> Would such a response mean also that you are occasionally ignoring requirements
> from a referenced Linux development guideline?

I do ignore it from time to time, yes. Being a stickler to the
guidelines wastes everybody's time (just like this discussion).
That said, the tense used in this patch is perfectly in-line with the
guideline you reference. "Add Star64 board devicetree" is in the
imperative and the commit message body contains additional information
about the board's configuration.

Thanks,
Conor.
Markus Elfring May 25, 2024, 12:41 p.m. UTC | #7
>>> Don't worry about Markus, most maintainers (myself included) ignore his
>>> comments on patches. The commit message here is fine.
>>
>> Would such a response mean also that you are occasionally ignoring requirements
>> from a referenced Linux development guideline?
>
> I do ignore it from time to time, yes. Being a stickler to the
> guidelines wastes everybody's time (just like this discussion).
> That said, the tense used in this patch is perfectly in-line with the
> guideline you reference.

Partly, yes.


> "Add Star64 board devicetree" is in the imperative

This information fits to the summary phrase.


> and the commit message body contains additional information about
> the board's configuration.

I hope that further contributors can follow the recommendation better
also for the imperative mood in changelogs.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.9#n94

Regards,
Markus
diff mbox series

Patch

diff --git a/arch/riscv/boot/dts/starfive/Makefile b/arch/riscv/boot/dts/starfive/Makefile
index 2fa0cd7f31c3..7a163a7d6ba3 100644
--- a/arch/riscv/boot/dts/starfive/Makefile
+++ b/arch/riscv/boot/dts/starfive/Makefile
@@ -9,5 +9,6 @@  dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-beaglev-starlight.dtb
 dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-starfive-visionfive-v1.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
 dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.3b.dtb
diff --git a/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
new file mode 100644
index 000000000000..c70fffd51181
--- /dev/null
+++ b/arch/riscv/boot/dts/starfive/jh7110-pine64-star64.dts
@@ -0,0 +1,62 @@ 
+// SPDX-License-Identifier: GPL-2.0 OR MIT
+/*
+* Copyright (C) 2022 StarFive Technology Co., Ltd.
+* Copyright (C) 2022 Emil Renner Berthing <kernel@esmil.dk>
+*/
+
+/dts-v1/;
+#include "jh7110-common.dtsi"
+
+/ {
+	model = "Pine64 Star64";
+	compatible = "pine64,star64", "starfive,jh7110";
+		aliases {
+				ethernet1 = &gmac1;
+		};
+};
+
+&gmac0 {
+	starfive,tx-use-rgmii-clk;
+	assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>;
+	assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>;
+};
+
+&gmac1 {
+	phy-handle = <&phy1>;
+	phy-mode = "rgmii-id";
+	status = "okay";
+	starfive,tx-use-rgmii-clk;
+	assigned-clocks = <&syscrg JH7110_SYSCLK_GMAC1_TX>;
+	assigned-clock-parents = <&syscrg JH7110_SYSCLK_GMAC1_RMII_RTX>;
+
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		compatible = "snps,dwmac-mdio";
+
+		phy1: ethernet-phy@1 {
+			reg = <0>;
+		};
+	};
+};
+
+&phy0 {
+	motorcomm,tx-clk-adj-enabled;
+	motorcomm,tx-clk-10-inverted;
+	motorcomm,tx-clk-100-inverted;
+	motorcomm,tx-clk-1000-inverted;
+	motorcomm,rx-clk-drv-microamp = <2910>;
+	motorcomm,rx-data-drv-microamp = <2910>;
+	rx-internal-delay-ps = <1900>; 
+	tx-internal-delay-ps = <1500>;
+};
+
+&phy1 {
+	motorcomm,tx-clk-adj-enabled;
+	motorcomm,tx-clk-10-inverted;
+	motorcomm,tx-clk-100-inverted;
+	motorcomm,rx-clk-drv-microamp = <2910>;
+	motorcomm,rx-data-drv-microamp = <2910>;
+	rx-internal-delay-ps = <0>;
+	tx-internal-delay-ps = <300>;
+};