2024-05-23 19:08:04

by Henry Bell

[permalink] [raw]
Subject: [PATCH] RISC-V: add Star64 board devicetree

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 <[email protected]>
Cc: Conor Dooley <[email protected]>
---
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 <[email protected]>
+*/
+
+/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>;
+};
--
2.44.0




2024-05-23 20:37:43

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: add Star64 board devicetree

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 <[email protected]>
> Cc: Conor Dooley <[email protected]>
> ---
> 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 <[email protected]>
> +*/
> +
> +/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


2024-05-25 09:38:39

by Markus Elfring

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: add Star64 board devicetree


> 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

2024-05-25 10:12:22

by Henry Bell

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: add Star64 board devicetree

On Saturday, May 25th, 2024 at 9:37 AM, Markus Elfring <[email protected]> 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

2024-05-25 10:19:42

by Conor Dooley

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: add Star64 board devicetree

On Sat, May 25, 2024 at 10:12:01AM +0000, Henry Bell wrote:
> On Saturday, May 25th, 2024 at 9:37 AM, Markus Elfring <[email protected]> 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.


Attachments:
(No filename) (830.00 B)
signature.asc (235.00 B)
Download all attachments

2024-05-25 12:11:43

by Markus Elfring

[permalink] [raw]
Subject: Re: RISC-V: add Star64 board devicetree

>>> 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

2024-05-25 12:25:58

by Conor Dooley

[permalink] [raw]
Subject: Re: RISC-V: add Star64 board devicetree

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.


Attachments:
(No filename) (1.15 kB)
signature.asc (235.00 B)
Download all attachments

2024-05-25 12:41:30

by Markus Elfring

[permalink] [raw]
Subject: Re: RISC-V: add Star64 board devicetree

>>> 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