[PATCH v5 2/2] board: rockchip: Add support for rk3588 GenBook

Jonas Karlman jonas at kwiboo.se
Sun Nov 3 00:07:58 CET 2024


Hi Andy,

On 2024-11-01 13:06, Andy Yan wrote:
> Add support for Cool Pi GenBook, it works as a carrier board
> connect with CM5 SOM.
> 
> Specification:
> - Rockchip RK3588
> - LPDDR5X 8/32 GB
> - eMMC 64 GB
> - HDMI Type A out x 1
> - USB 3.0 Host x 1
> - USB-C 3.0 with DisplayPort AltMode
> - PCIE M.2 E Key for RTL8852BE Wireless connection
> - PCIE M.2 M Key for NVME connection
> - eDP panel with 1920x1080
> 
> Tested by Armbian boot on USB disk.
> 
> Signed-off-by: Andy Yan <andyshrk at 163.com>
> 
> ---
> 
> Changes in v5:
> - Fix document isn't included in any toctree error ini rst doc
> 
> Changes in v4:
> - Fix a underline too short error in rst doc
> 
> Changes in v3:
> - Remove upstreamed dt in genbook-u-boot.dtsi
> - Remove MMC releated config as there is no SD-card on this machine
> - Enable LED config
> - Enable rk8xx pmic
> - rename defconfig to coolpi-cm5-genbook-rk3588_defconfig
> - redefine BOOT_TARGETS
> 
> Changes in v2:
> - split the dts to a separate commit
> - rename to genbook_cm5_rk3588
> - move readme to doc/board, and write as reStructuredText format
> - alphabetically reorder
> - update doc/board/rockchip
> 
>  .../dts/rk3588-coolpi-cm5-genbook-u-boot.dtsi |  20 ++++
>  arch/arm/mach-rockchip/rk3588/Kconfig         |  19 ++++
>  board/coolpi/genbook_cm5_rk3588/Kconfig       |  12 +++
>  board/coolpi/genbook_cm5_rk3588/MAINTAINERS   |   7 ++
>  configs/coolpi-cm5-genbook-rk3588_defconfig   | 101 ++++++++++++++++++
>  doc/board/coolpi/genbook_cm5_rk3588.rst       |  68 ++++++++++++
>  doc/board/coolpi/index.rst                    |   9 ++
>  doc/board/index.rst                           |   1 +
>  doc/board/rockchip/rockchip.rst               |   1 +
>  include/configs/genbook-cm5-rk3588.h          |  31 ++++++
>  10 files changed, 269 insertions(+)
>  create mode 100644 arch/arm/dts/rk3588-coolpi-cm5-genbook-u-boot.dtsi
>  create mode 100644 board/coolpi/genbook_cm5_rk3588/Kconfig
>  create mode 100644 board/coolpi/genbook_cm5_rk3588/MAINTAINERS
>  create mode 100644 configs/coolpi-cm5-genbook-rk3588_defconfig
>  create mode 100644 doc/board/coolpi/genbook_cm5_rk3588.rst
>  create mode 100644 doc/board/coolpi/index.rst
>  create mode 100644 include/configs/genbook-cm5-rk3588.h
> 

[snip]

> diff --git a/include/configs/genbook-cm5-rk3588.h b/include/configs/genbook-cm5-rk3588.h
> new file mode 100644
> index 00000000000..f71f735b113
> --- /dev/null
> +++ b/include/configs/genbook-cm5-rk3588.h
> @@ -0,0 +1,31 @@
> +/* SPDX-License-Identifier: GPL-2.0+ */
> +/*
> + */
> +
> +#ifndef __GENBOOK_CM5_RK3588_H
> +#define __GENBOOK_CM5_RK3588_H
> +
> +#define ROCKCHIP_DEVICE_SETTINGS \
> +		"stdout=serial,vidconsole\0" \
> +		"stderr=serial,vidconsole\0"
> +
> +#include <configs/rk3588_common.h>
> +
> +#undef BOOT_TARGETS
> +#define BOOT_TARGETS "usb mmc0"
> +
> +#undef CFG_EXTRA_ENV_SETTINGS
> +
> +/*
> + * As a laptop, there is no sdmmc, and we want to
> + * set usb the highest boot priority for third-part
> + * os installation.
> + */
> +#define CFG_EXTRA_ENV_SETTINGS \
> +	"fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
> +	"partitions=" PARTS_DEFAULT		\
> +	ENV_MEM_LAYOUT_SETTINGS			\
> +	ROCKCHIP_DEVICE_SETTINGS \
> +	"boot_targets=" BOOT_TARGETS "\0"

Having to re-define CFG_EXTRA_ENV_SETTINGS seem redundant, please try
including below diff for rockchip-common.h and use something like this:

  #define ROCKCHIP_DEVICE_SETTINGS \
		"stdout=serial,vidconsole\0" \
		"stderr=serial,vidconsole\0"

  /*
   * As a laptop, there is no sdmmc, and we want to
   * set usb the highest boot priority for third-part
   * os installation.
   */
  #define BOOT_TARGETS "usb mmc0"

  #include <configs/rk3588_common.h>

> +
> +#endif /* __GENBOOK_CM5_RK3588_H */

diff --git a/include/configs/rockchip-common.h b/include/configs/rockchip-common.h
index 9b8ab3cdf207..d5550a46575a 100644
--- a/include/configs/rockchip-common.h
+++ b/include/configs/rockchip-common.h
@@ -13,7 +13,9 @@
 
 #ifndef CONFIG_XPL_BUILD
 
+#ifndef BOOT_TARGETS
 #define BOOT_TARGETS	"mmc1 mmc0 nvme scsi usb pxe dhcp spi"
+#endif
 
 #ifdef CONFIG_ARM64
 #define ROOT_UUID "B921B045-1DF0-41C3-AF44-4C6F280D3FAE;\0"

Regards,
Jonas


More information about the U-Boot mailing list