Re: [PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-27 Thread Tom Rini
On Mon, May 27, 2024 at 11:15:09AM +0200, Quentin Schulz wrote:
> Hi Jianfeng,
> 
> On 5/27/24 10:57 AM, Jianfeng Liu wrote:
> > Hi all,
> > > However... it seems we'll likely need to also cherry-pick patches for
> > > the GPU (should probably be straightforward as nothing would be using
> > > the GPU anyway in U-Boot) and the USBDP PHY... but this one we would
> > > need to update all -u-boot.dtsi for rk3588(s) boards that have it
> > > already to make it use the new label/DT, make sure that the driver still
> > > works... etc. Maybe not a small feat, but someone will have to do it at
> > > some point anyway :)
> > Kernel v6.10-rc1 is released and now u-boot is not synced to v6.9.
> 
> It is, please use the "next" branch.
> 
> > What about syncing with this procedure:
> > 1, Sync upstream dts to v6.9 with command update-dts-subtree.sh pull.
> > 2, Cherrypick all commits of rk3588s.dtsi from v6.10-rc1.
> > 3, Cherrypick all commits of rk3588*.dts* from v6.10-rc1, which will
> > include dts of new board armsom-sige7.
> > 4, Add armsom-sige7 to u-boot.
> > 
> 
> You should be able to do 2,3,4 yourself now I believe?

And I am very much interested in the feedback on how 2,3,4 go as this
will be the first real use of those steps.

-- 
Tom


signature.asc
Description: PGP signature


Re: [PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-27 Thread Jianfeng Liu
Hi all,
>However... it seems we'll likely need to also cherry-pick patches for
>the GPU (should probably be straightforward as nothing would be using
>the GPU anyway in U-Boot) and the USBDP PHY... but this one we would
>need to update all -u-boot.dtsi for rk3588(s) boards that have it
>already to make it use the new label/DT, make sure that the driver still
>works... etc. Maybe not a small feat, but someone will have to do it at
>some point anyway :)
Kernel v6.10-rc1 is released and now u-boot is not synced to v6.9.
What about syncing with this procedure:
1, Sync upstream dts to v6.9 with command update-dts-subtree.sh pull.
2, Cherrypick all commits of rk3588s.dtsi from v6.10-rc1.
3, Cherrypick all commits of rk3588*.dts* from v6.10-rc1, which will
include dts of new board armsom-sige7.
4, Add armsom-sige7 to u-boot.

Best regards,
Jianfeng


Re: [PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-27 Thread Quentin Schulz

Hi Jianfeng,

On 5/27/24 10:57 AM, Jianfeng Liu wrote:

Hi all,

However... it seems we'll likely need to also cherry-pick patches for
the GPU (should probably be straightforward as nothing would be using
the GPU anyway in U-Boot) and the USBDP PHY... but this one we would
need to update all -u-boot.dtsi for rk3588(s) boards that have it
already to make it use the new label/DT, make sure that the driver still
works... etc. Maybe not a small feat, but someone will have to do it at
some point anyway :)

Kernel v6.10-rc1 is released and now u-boot is not synced to v6.9.


It is, please use the "next" branch.


What about syncing with this procedure:
1, Sync upstream dts to v6.9 with command update-dts-subtree.sh pull.
2, Cherrypick all commits of rk3588s.dtsi from v6.10-rc1.
3, Cherrypick all commits of rk3588*.dts* from v6.10-rc1, which will
include dts of new board armsom-sige7.
4, Add armsom-sige7 to u-boot.



You should be able to do 2,3,4 yourself now I believe?

Cheers,
Quentin


Re: [PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-23 Thread Sumit Garg
On Wed, 22 May 2024 at 23:33, Quentin Schulz  wrote:
>
> Hi Jianfeng Liu,
>
> On 5/22/24 6:58 PM, Jianfeng Liu wrote:
> [...]
> > Note that these commits:
> > - e18e5e8188f2 (arm64: dts: rockchip: add USBDP phys on rk3588)
> > - 6fca4edb93d3 (arm64: dts: rockchip: Add rk3588 GPU node)
> > are not synced to u-boot, so I remove usb3 drd nodes and gpu from kernel
> > devicetree.
> [...]> diff --git
> a/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
> b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
> > new file mode 100644
> > index 00..c7b46536ec
> > --- /dev/null
> > +++ b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
>
> Sorry, I failed to explain properly what was expected.
>
> dts/upstream should never be touched except with
> dts/update-dts-subtree.sh script.
>
> Sadly, your board is not supported in v6.9 yet, only in the upcoming
> v6.10 :/
>
> So we have two options, we keep the dts in arch/arm/dts/ like you used
> to do, until we merge v6.10 dts in U-Boot (probably for v2024.10?), or
> we cherry-pick the changes for your board with dts/update-dts-subtree.sh
> script, see the instructions in the docs Tom has started writing:
> https://lore.kernel.org/u-boot/20240517174930.1028063-2-tr...@konsulko.com/.
> I would very much like to see someone starting to look into the second
> option :)
>
> However... it seems we'll likely need to also cherry-pick patches for
> the GPU (should probably be straightforward as nothing would be using
> the GPU anyway in U-Boot) and the USBDP PHY... but this one we would
> need to update all -u-boot.dtsi for rk3588(s) boards that have it
> already to make it use the new label/DT, make sure that the driver still
> works... etc. Maybe not a small feat, but someone will have to do it at
> some point anyway :)
>
> You'd be the first one to do this cherry-picking into dts/upstream, so
> it'd be really interesting to us if you could provide feedback on what
> is unclear/not working, etc... so we can update the documentation or fix
> tools if they were to be insufficient.

+1

Although it is very much similar to normal cherry-picking patches, the
dts/update-dts-subtree.sh script is just there to hide the git subtree
specific details.

-Sumit

>
> Looking forward to your next patch,
> Cheers,
> Quentin


[PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-22 Thread Jianfeng Liu
ArmSoM Sige7 is a Rockchip RK3588 based SBC (Single Board Computer) by
ArmSoM.

There are two variants depending on the DRAM size : 8G and 16G.

Specification:

Rockchip Rk3588 SoC
4x ARM Cortex-A76, 4x ARM Cortex-A55
8/16GB memory LPDDR4x
Mali G610MC4 GPU
2x MIPI CSI 2 multiple lanes connector
64GB/128GB on board eMMC
uSD slot
1x USB 2.0 Type-A, 1x USB 3.0 Type-A, 1x USB 3.0 Type-C
1x HDMI 2.1 output
2x 2.5 Gbps Ethernet port
40-pin IO header including UART, SPI and I2C
USB PD over USB Type-C
Size: 92mm x 62mm

Kernel commit:
81c828a67c78 (arm64: dts: rockchip: Add ArmSom Sige7 board)

Note that these commits:
- e18e5e8188f2 (arm64: dts: rockchip: add USBDP phys on rk3588)
- 6fca4edb93d3 (arm64: dts: rockchip: Add rk3588 GPU node)
are not synced to u-boot, so I remove usb3 drd nodes and gpu from kernel
devicetree.

Signed-off-by: Jianfeng Liu 
---

Changes in v2:
- Fix alphabetical order of MAINTAINERS
- Use arch/arm/dts/rk3588-armsom-sige7* in board MAINTAINERS
- Remove spi flash related config
- Move kernel dts to dts/upstream/src/arm64/rockchip/

 MAINTAINERS   |   1 +
 arch/arm/dts/rk3588-armsom-sige7-u-boot.dtsi  |  28 +
 arch/arm/mach-rockchip/rk3588/Kconfig |  26 +
 board/armsom/sige7-rk3588/Kconfig |  12 +
 board/armsom/sige7-rk3588/MAINTAINERS |   7 +
 configs/sige7-rk3588_defconfig|  93 +++
 doc/board/rockchip/rockchip.rst   |   1 +
 .../arm64/rockchip/rk3588-armsom-sige7.dts| 691 ++
 include/configs/sige7-rk3588.h|  15 +
 9 files changed, 874 insertions(+)
 create mode 100644 arch/arm/dts/rk3588-armsom-sige7-u-boot.dtsi
 create mode 100644 board/armsom/sige7-rk3588/Kconfig
 create mode 100644 board/armsom/sige7-rk3588/MAINTAINERS
 create mode 100644 configs/sige7-rk3588_defconfig
 create mode 100644 dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
 create mode 100644 include/configs/sige7-rk3588.h

diff --git a/MAINTAINERS b/MAINTAINERS
index 638b2fdd44..a2c799cb7d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -533,6 +533,7 @@ F:  arch/arm/include/asm/arch-rockchip/
 F: arch/arm/mach-rockchip/
 F: board/amarula/vyasa-rk3288/
 F: board/anbernic/rgxx3_rk3566/
+F: board/armsom/sige7-rk3588/
 F: board/chipspark/popmetal_rk3288
 F: board/engicam/px30_core/
 F: board/firefly/
diff --git a/arch/arm/dts/rk3588-armsom-sige7-u-boot.dtsi 
b/arch/arm/dts/rk3588-armsom-sige7-u-boot.dtsi
new file mode 100644
index 00..2c984d0147
--- /dev/null
+++ b/arch/arm/dts/rk3588-armsom-sige7-u-boot.dtsi
@@ -0,0 +1,28 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2024 ArmSoM Technology Co., Ltd.
+ */
+
+#include "rk3588-u-boot.dtsi"
+
+&sdhci {
+   cap-mmc-highspeed;
+   mmc-hs200-1_8v;
+};
+
+&u2phy1 {
+   status = "okay";
+};
+
+&u2phy1_otg {
+   status = "okay";
+};
+
+&usbdp_phy1 {
+   status = "okay";
+};
+
+&usb_host1_xhci {
+   dr_mode = "host";
+   status = "okay";
+};
diff --git a/arch/arm/mach-rockchip/rk3588/Kconfig 
b/arch/arm/mach-rockchip/rk3588/Kconfig
index 39049ab35a..4c14b0be1e 100644
--- a/arch/arm/mach-rockchip/rk3588/Kconfig
+++ b/arch/arm/mach-rockchip/rk3588/Kconfig
@@ -152,6 +152,31 @@ config TARGET_ROCK5B_RK3588
  USB PD over USB Type-C
  Size: 100mm x 72mm (Pico-ITX form factor)
 
+config TARGET_SIGE7_RK3588
+   bool "ArmSoM Sige7 RK3588 board"
+   select BOARD_LATE_INIT
+   help
+ ArmSoM Sige7 is a Rockchip RK3588 based SBC (Single Board Computer)
+ by ArmSoM.
+
+ There are two variants depending on the DRAM size : 8G and 16G.
+
+ Specification:
+
+ Rockchip Rk3588 SoC
+ 4x ARM Cortex-A76, 4x ARM Cortex-A55
+ 8/16GB memory LPDDR4x
+ Mali G610MC4 GPU
+ 2x MIPI CSI 2 multiple lanes connector
+ 64GB/128GB on board eMMC
+ uSD slot
+ 1x USB 2.0 Type-A, 1x USB 3.0 Type-A, 1x USB 3.0 Type-C
+ 1x HDMI 2.1 output
+ 2x 2.5 Gbps Ethernet port
+ 40-pin IO header including UART, SPI and I2C
+ USB PD over USB Type-C
+ Size: 92mm x 62mm
+
 config TARGET_QUARTZPRO64_RK3588
bool "Pine64 QuartzPro64 RK3588 board"
select BOARD_LATE_INIT
@@ -221,6 +246,7 @@ config ROCKCHIP_COMMON_STACK_ADDR
 config TEXT_BASE
default 0x00a0
 
+source "board/armsom/sige7-rk3588/Kconfig"
 source "board/edgeble/neural-compute-module-6/Kconfig"
 source "board/friendlyelec/nanopc-t6-rk3588/Kconfig"
 source "board/pine64/quartzpro64-rk3588/Kconfig"
diff --git a/board/armsom/sige7-rk3588/Kconfig 
b/board/armsom/sige7-rk3588/Kconfig
new file mode 100644
index 00..793985f531
--- /dev/null
+++ b/board/armsom/sige7-rk3588/Kconfig
@@ -0,0 +1,12 @@
+if TARGET_SIGE7_RK3588
+
+config SYS_BOARD
+   default "sige7-rk3588"
+
+config SYS_VENDOR
+   default "armsom"
+
+config SY

Re: [PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-22 Thread Jonas Karlman
On 2024-05-22 20:03, Quentin Schulz wrote:
> Hi Jianfeng Liu,
> 
> On 5/22/24 6:58 PM, Jianfeng Liu wrote:
> [...]
>> Note that these commits:
>> - e18e5e8188f2 (arm64: dts: rockchip: add USBDP phys on rk3588)
>> - 6fca4edb93d3 (arm64: dts: rockchip: Add rk3588 GPU node)
>> are not synced to u-boot, so I remove usb3 drd nodes and gpu from kernel
>> devicetree.
> [...]> diff --git 
> a/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts 
> b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
>> new file mode 100644
>> index 00..c7b46536ec
>> --- /dev/null
>> +++ b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts
> 
> Sorry, I failed to explain properly what was expected.
> 
> dts/upstream should never be touched except with 
> dts/update-dts-subtree.sh script.
> 
> Sadly, your board is not supported in v6.9 yet, only in the upcoming 
> v6.10 :/
> 
> So we have two options, we keep the dts in arch/arm/dts/ like you used 
> to do, until we merge v6.10 dts in U-Boot (probably for v2024.10?), or 
> we cherry-pick the changes for your board with dts/update-dts-subtree.sh 
> script, see the instructions in the docs Tom has started writing: 
> https://lore.kernel.org/u-boot/20240517174930.1028063-2-tr...@konsulko.com/ 
> I would very much like to see someone starting to look into the second 
> option :)
> 
> However... it seems we'll likely need to also cherry-pick patches for 
> the GPU (should probably be straightforward as nothing would be using 
> the GPU anyway in U-Boot) and the USBDP PHY... but this one we would 
> need to update all -u-boot.dtsi for rk3588(s) boards that have it 
> already to make it use the new label/DT, make sure that the driver still 
> works... etc. Maybe not a small feat, but someone will have to do it at 
> some point anyway :)

Thankfully updating the usb3 nodes and driver for RK3588 to match the
versions used in v6.10 was already done as part of the "rockchip:
Migrate RK3308, RK3328, RK356x and RK3588 to OF_UPSTREAM" series [1], in
commit a129bbc77b6c ("rockchip: rk3588: Update USB3 related nodes in
u-boot.dtsi") [2].

So the relevant nodes just needs to be removed from u-boot.dtsi files
at some point after dts/upstream has been updated to match v6.10 :-)

[1] https://patchwork.ozlabs.org/cover/1931378/
[2] 
https://source.denx.de/u-boot/u-boot/-/commit/a129bbc77b6cadc191d6f5d1fd8da96964baa029

Regards,
Jonas

> 
> You'd be the first one to do this cherry-picking into dts/upstream, so 
> it'd be really interesting to us if you could provide feedback on what 
> is unclear/not working, etc... so we can update the documentation or fix 
> tools if they were to be insufficient.
> 
> Looking forward to your next patch,
> Cheers,
> Quentin



Re: [PATCH v2] board: rockchip: add ArmSoM Sige7 Rk3588 board

2024-05-22 Thread Quentin Schulz

Hi Jianfeng Liu,

On 5/22/24 6:58 PM, Jianfeng Liu wrote:
[...]

Note that these commits:
- e18e5e8188f2 (arm64: dts: rockchip: add USBDP phys on rk3588)
- 6fca4edb93d3 (arm64: dts: rockchip: Add rk3588 GPU node)
are not synced to u-boot, so I remove usb3 drd nodes and gpu from kernel
devicetree.
[...]> diff --git 
a/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts 
b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts

new file mode 100644
index 00..c7b46536ec
--- /dev/null
+++ b/dts/upstream/src/arm64/rockchip/rk3588-armsom-sige7.dts


Sorry, I failed to explain properly what was expected.

dts/upstream should never be touched except with 
dts/update-dts-subtree.sh script.


Sadly, your board is not supported in v6.9 yet, only in the upcoming 
v6.10 :/


So we have two options, we keep the dts in arch/arm/dts/ like you used 
to do, until we merge v6.10 dts in U-Boot (probably for v2024.10?), or 
we cherry-pick the changes for your board with dts/update-dts-subtree.sh 
script, see the instructions in the docs Tom has started writing: 
https://lore.kernel.org/u-boot/20240517174930.1028063-2-tr...@konsulko.com/. 
I would very much like to see someone starting to look into the second 
option :)


However... it seems we'll likely need to also cherry-pick patches for 
the GPU (should probably be straightforward as nothing would be using 
the GPU anyway in U-Boot) and the USBDP PHY... but this one we would 
need to update all -u-boot.dtsi for rk3588(s) boards that have it 
already to make it use the new label/DT, make sure that the driver still 
works... etc. Maybe not a small feat, but someone will have to do it at 
some point anyway :)


You'd be the first one to do this cherry-picking into dts/upstream, so 
it'd be really interesting to us if you could provide feedback on what 
is unclear/not working, etc... so we can update the documentation or fix 
tools if they were to be insufficient.


Looking forward to your next patch,
Cheers,
Quentin