diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0001-arch-arm-dts-Add-NabuCasa-Green-board.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0001-arch-arm-dts-Add-NabuCasa-Green-board.patch index 5223eadb7..7a0e374d8 100644 --- a/buildroot-external/board/nabucasa/green/patches/uboot/0001-arch-arm-dts-Add-NabuCasa-Green-board.patch +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0001-arch-arm-dts-Add-NabuCasa-Green-board.patch @@ -1,8 +1,8 @@ -From 377934f736699077b3622949231f171b4f3c4386 Mon Sep 17 00:00:00 2001 -Message-ID: <377934f736699077b3622949231f171b4f3c4386.1689232931.git.stefan@agner.ch> +From 2ab36c774a9f16c10a2bffeb602a9c914ffacd00 Mon Sep 17 00:00:00 2001 +Message-ID: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> From: Zhangqun Ming Date: Thu, 6 Jul 2023 10:06:35 +0000 -Subject: [PATCH] arch: arm: dts: Add NabuCasa Green board +Subject: [PATCH 1/9] arch: arm: dts: Add NabuCasa Green board --- arch/arm/dts/Makefile | 1 + @@ -62,7 +62,7 @@ index 0000000000..83fa66d591 +}; diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts new file mode 100644 -index 0000000000..d0830df48d +index 0000000000..15d2b73433 --- /dev/null +++ b/arch/arm/dts/rk3566-ha-green.dts @@ -0,0 +1,685 @@ diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0002-configs-green-Support-USB-boot.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0002-configs-green-Support-USB-boot.patch index 34280b39a..9077b8128 100644 --- a/buildroot-external/board/nabucasa/green/patches/uboot/0002-configs-green-Support-USB-boot.patch +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0002-configs-green-Support-USB-boot.patch @@ -1,14 +1,17 @@ -From 4ebfe11def93e82d9bd0c43414cb7c6f01a54d19 Mon Sep 17 00:00:00 2001 +From d4f52bc53540341dcb3408a3f2d4ec8bd1fe260a Mon Sep 17 00:00:00 2001 +Message-ID: +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> From: Zhangqun Ming Date: Fri, 14 Jul 2023 14:13:39 +0000 -Subject: [PATCH 1/2] configs: green: Support USB boot +Subject: [PATCH 2/9] configs: green: Support USB boot --- configs/green_defconfig | 52 ++++++++++++++++++++++++++++------------- 1 file changed, 36 insertions(+), 16 deletions(-) diff --git a/configs/green_defconfig b/configs/green_defconfig -index 0617d308..14960b67 100644 +index 0617d308aa..14960b67d2 100644 --- a/configs/green_defconfig +++ b/configs/green_defconfig @@ -6,48 +6,54 @@ CONFIG_TEXT_BASE=0x00a00000 @@ -113,5 +116,5 @@ index 0617d308..14960b67 100644 +CONFIG_USB_DWC3=y CONFIG_ERRNO_STR=y -- -2.25.1 +2.41.0 diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0003-arch-arm-dts-rk3566-green-boot-order.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0003-arch-arm-dts-rk3566-green-boot-order.patch index 706945d79..23b983ae9 100644 --- a/buildroot-external/board/nabucasa/green/patches/uboot/0003-arch-arm-dts-rk3566-green-boot-order.patch +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0003-arch-arm-dts-rk3566-green-boot-order.patch @@ -1,7 +1,10 @@ -From fee073b1c267ac318b7eb7b52b1098bd2aaf09df Mon Sep 17 00:00:00 2001 +From c59235f8be1bdd261e1677177c1bef1bee1025ea Mon Sep 17 00:00:00 2001 +Message-ID: +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> From: Zhangqun Ming Date: Fri, 14 Jul 2023 14:14:10 +0000 -Subject: [PATCH 2/2] arch: arm: dts: rk3566: green: boot order +Subject: [PATCH 3/9] arch: arm: dts: rk3566: green: boot order --- arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 6 +++++- @@ -9,7 +12,7 @@ Subject: [PATCH 2/2] arch: arm: dts: rk3566: green: boot order 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi -index 83fa66d5..7f2ed298 100644 +index 83fa66d591..7f2ed298ce 100644 --- a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi +++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi @@ -9,7 +9,7 @@ @@ -33,7 +36,7 @@ index 83fa66d5..7f2ed298 100644 clock-frequency = <24000000>; bootph-all; diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts -index d0830df4..3952c8c5 100644 +index 15d2b73433..bf0f81c3a1 100644 --- a/arch/arm/dts/rk3566-ha-green.dts +++ b/arch/arm/dts/rk3566-ha-green.dts @@ -563,7 +563,7 @@ @@ -46,5 +49,5 @@ index d0830df4..3952c8c5 100644 reg = <0>; spi-max-frequency = <100000000>; -- -2.25.1 +2.41.0 diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0004-arch-arm-dts-green-spi-nor-uboot.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0004-arch-arm-dts-green-spi-nor-uboot.patch index b674e1587..7f151b5b4 100644 --- a/buildroot-external/board/nabucasa/green/patches/uboot/0004-arch-arm-dts-green-spi-nor-uboot.patch +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0004-arch-arm-dts-green-spi-nor-uboot.patch @@ -1,7 +1,10 @@ -From 0de4db17b62e1fa47b788d921a76bc7a0328b0a9 Mon Sep 17 00:00:00 2001 +From e525d29174f335fe9aa72da8642699609631b2be Mon Sep 17 00:00:00 2001 +Message-ID: +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> From: Zhangqun Ming Date: Sat, 15 Jul 2023 08:46:09 +0000 -Subject: [PATCH] arch: arm: dts: green: spi nor uboot +Subject: [PATCH 4/9] arch: arm: dts: green: spi nor uboot --- arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 88 +++++++++++++++++++++++- @@ -10,7 +13,7 @@ Subject: [PATCH] arch: arm: dts: green: spi nor uboot 3 files changed, 91 insertions(+), 3 deletions(-) diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi -index 7f2ed298..fa98078f 100644 +index 7f2ed298ce..fa98078fce 100644 --- a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi +++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi @@ -13,15 +13,96 @@ @@ -123,7 +126,7 @@ index 7f2ed298..fa98078f 100644 +}; \ No newline at end of file diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts -index 3952c8c5..52b4baa9 100644 +index bf0f81c3a1..ea9d358099 100644 --- a/arch/arm/dts/rk3566-ha-green.dts +++ b/arch/arm/dts/rk3566-ha-green.dts @@ -566,8 +566,8 @@ @@ -138,7 +141,7 @@ index 3952c8c5..52b4baa9 100644 partitions { diff --git a/configs/green_defconfig b/configs/green_defconfig -index 14960b67..5f94c062 100644 +index 14960b67d2..5f94c06279 100644 --- a/configs/green_defconfig +++ b/configs/green_defconfig @@ -68,6 +68,8 @@ CONFIG_MMC_SDHCI_SDMA=y @@ -151,5 +154,5 @@ index 14960b67..5f94c062 100644 CONFIG_GMAC_ROCKCHIP=y CONFIG_PHY_ROCKCHIP_INNO_USB2=y -- -2.25.1 +2.41.0 diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0005-board-green-add-Green-board-to-read-board-specific-E.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0005-board-green-add-Green-board-to-read-board-specific-E.patch new file mode 100644 index 000000000..8676bd096 --- /dev/null +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0005-board-green-add-Green-board-to-read-board-specific-E.patch @@ -0,0 +1,211 @@ +From 0088369711a0b57b598121dad60b52de0426a180 Mon Sep 17 00:00:00 2001 +Message-ID: <0088369711a0b57b598121dad60b52de0426a180.1692346980.git.stefan@agner.ch> +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +From: Stefan Agner +Date: Thu, 17 Aug 2023 17:38:13 +0200 +Subject: [PATCH 5/9] board: green: add Green board to read board specific + EEPROM + +Use board specific code to read serial number and MAC address from +on-board I2C EEPROM. + +Signed-off-by: Stefan Agner +--- + arch/arm/dts/rk3566-ha-green.dts | 7 +++ + arch/arm/mach-rockchip/rk3568/Kconfig | 7 +++ + board/nabucasa/ha-green/Kconfig | 15 +++++++ + board/nabucasa/ha-green/Makefile | 3 ++ + board/nabucasa/ha-green/ha-green.c | 65 +++++++++++++++++++++++++++ + configs/green_defconfig | 3 ++ + include/configs/ha-green.h | 11 +++++ + 7 files changed, 111 insertions(+) + create mode 100644 board/nabucasa/ha-green/Kconfig + create mode 100644 board/nabucasa/ha-green/Makefile + create mode 100644 board/nabucasa/ha-green/ha-green.c + create mode 100644 include/configs/ha-green.h + +diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts +index ea9d358099..91afadf0e6 100644 +--- a/arch/arm/dts/rk3566-ha-green.dts ++++ b/arch/arm/dts/rk3566-ha-green.dts +@@ -449,6 +449,13 @@ + reg = <0x51>; + #clock-cells = <0>; + }; ++ ++ eeprom: eeprom@50 { ++ compatible = "atmel,24c32"; ++ reg = <0x50>; ++ pagesize = <32>; ++ }; ++ + }; + + &i2s0_8ch { +diff --git a/arch/arm/mach-rockchip/rk3568/Kconfig b/arch/arm/mach-rockchip/rk3568/Kconfig +index 94e04b79e7..5858c3921d 100644 +--- a/arch/arm/mach-rockchip/rk3568/Kconfig ++++ b/arch/arm/mach-rockchip/rk3568/Kconfig +@@ -17,6 +17,12 @@ config TARGET_ANBERNIC_RGXX3_RK3566 + and RG503. The correct device tree name will automatically + be selected by the bootloader. + ++config TARGET_NABU_CASA_HA_GREEN_RK3566 ++ bool "Nabu Casa Home Assistant Green" ++ help ++ Nabu Casa's Home Assistant Green single board computer with a RK3566 ++ SoC. ++ + endchoice + + config ROCKCHIP_BOOT_MODE_REG +@@ -33,5 +39,6 @@ config SYS_MALLOC_F_LEN + + source "board/rockchip/evb_rk3568/Kconfig" + source "board/anbernic/rgxx3_rk3566/Kconfig" ++source "board/nabucasa/ha-green/Kconfig" + + endif +diff --git a/board/nabucasa/ha-green/Kconfig b/board/nabucasa/ha-green/Kconfig +new file mode 100644 +index 0000000000..863afd4363 +--- /dev/null ++++ b/board/nabucasa/ha-green/Kconfig +@@ -0,0 +1,15 @@ ++if TARGET_NABU_CASA_HA_GREEN_RK3566 ++ ++config SYS_BOARD ++ default "ha-green" ++ ++config SYS_VENDOR ++ default "nabucasa" ++ ++config SYS_CONFIG_NAME ++ default "ha-green" ++ ++config BOARD_SPECIFIC_OPTIONS # dummy ++ def_bool y ++ ++endif +diff --git a/board/nabucasa/ha-green/Makefile b/board/nabucasa/ha-green/Makefile +new file mode 100644 +index 0000000000..bf711fe8c4 +--- /dev/null ++++ b/board/nabucasa/ha-green/Makefile +@@ -0,0 +1,3 @@ ++# SPDX-License-Identifier: GPL-2.0+ ++ ++obj-y += ha-green.o +diff --git a/board/nabucasa/ha-green/ha-green.c b/board/nabucasa/ha-green/ha-green.c +new file mode 100644 +index 0000000000..b9a0c32441 +--- /dev/null ++++ b/board/nabucasa/ha-green/ha-green.c +@@ -0,0 +1,65 @@ ++// SPDX-License-Identifier: GPL-2.0 ++/* ++ * Copyright 2023 Nabu Casa, Inc. ++ * Copyright 2022 Google LLC ++ */ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#define CONTENT_SIZE 44 ++#define ETHADDR_OFFSET 0X22 ++#define ETHADDR_LEN 6 ++#define SERIALNUM_OFFSET 0X10 ++#define SERIALNUM_LEN 18 ++#define VERSION_OFFSET 0X0C ++#define VERSION_LEN 4 ++ ++int misc_init_r(void) ++{ ++ unsigned char data[CONTENT_SIZE]; ++ unsigned char ethaddr[ETHADDR_LEN]; ++ unsigned char serialnum[SERIALNUM_LEN + 1]; ++ unsigned char version[VERSION_LEN]; ++ ++ struct udevice *dev; ++ int ret; ++ ++ ret = uclass_first_device_err(UCLASS_I2C_EEPROM, &dev); ++ if (ret) { ++ printf("UCLASS_I2C_EEPROM get error\n"); ++ return 0; ++ } ++ ++ ret = i2c_eeprom_read(dev, 0, data, sizeof(data)); ++ if (ret) { ++ printf("UCLASS_I2C_EEPROM read error %d\n", ret); ++ return 0; ++ } ++ ++ if (!(data[0] == 3 && data[1] == 5 && data[2] == 6 && data[3] == 6)) ++ { ++ printf("EEPROM header not ok\n"); ++ return 0; ++ } ++ ++ memcpy(version , data + VERSION_OFFSET, VERSION_LEN); ++ printf("Board revision: %c%c\n", version[2], version[3]); ++ ++ memcpy(serialnum, data + SERIALNUM_OFFSET, SERIALNUM_LEN); ++ serialnum[SERIALNUM_LEN] = 0; ++ env_set("serial#", serialnum); ++ ++ memcpy(ethaddr, data + ETHADDR_OFFSET, ETHADDR_LEN); ++ if (is_valid_ethaddr(ethaddr)) ++ eth_env_set_enetaddr("ethaddr", ethaddr); ++ ++ return 0; ++} +diff --git a/configs/green_defconfig b/configs/green_defconfig +index 5f94c06279..a97391f295 100644 +--- a/configs/green_defconfig ++++ b/configs/green_defconfig +@@ -16,6 +16,7 @@ CONFIG_SPL_ROCKCHIP_COMMON_BOARD=y + CONFIG_ROCKCHIP_SPI_IMAGE=y + CONFIG_SPL_SERIAL=y + CONFIG_SPL_STACK_R_ADDR=0x600000 ++CONFIG_TARGET_NABU_CASA_HA_GREEN_RK3566=y + CONFIG_SPL_STACK=0x400000 + CONFIG_DEBUG_UART_BASE=0xFE660000 + CONFIG_DEBUG_UART_CLOCK=24000000 +@@ -60,6 +61,8 @@ CONFIG_SPL_CLK=y + CONFIG_ROCKCHIP_GPIO=y + CONFIG_SYS_I2C_ROCKCHIP=y + CONFIG_MISC=y ++CONFIG_I2C_EEPROM=y ++CONFIG_SYS_I2C_EEPROM_ADDR=0x0 + CONFIG_SUPPORT_EMMC_RPMB=y + CONFIG_MMC_DW=y + CONFIG_MMC_DW_ROCKCHIP=y +diff --git a/include/configs/ha-green.h b/include/configs/ha-green.h +new file mode 100644 +index 0000000000..e42d9c8e8c +--- /dev/null ++++ b/include/configs/ha-green.h +@@ -0,0 +1,11 @@ ++/* SPDX-License-Identifier: GPL-2.0+ */ ++ ++#ifndef __HA_GREEN_H ++#define __HA_GREEN_H ++ ++#define ROCKCHIP_DEVICE_SETTINGS \ ++ "cramfsaddr=0x0c000000\0" ++ ++#include ++ ++#endif +-- +2.41.0 + diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0005_board-rockchip-Add-nabucasa-green.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0005_board-rockchip-Add-nabucasa-green.patch deleted file mode 100644 index 04b728727..000000000 --- a/buildroot-external/board/nabucasa/green/patches/uboot/0005_board-rockchip-Add-nabucasa-green.patch +++ /dev/null @@ -1,137 +0,0 @@ -diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts -index 52b4baa9..1a8c13e9 100644 ---- a/arch/arm/dts/rk3566-ha-green.dts -+++ b/arch/arm/dts/rk3566-ha-green.dts -@@ -449,6 +449,13 @@ - reg = <0x51>; - #clock-cells = <0>; - }; -+ -+ eeprom: eeprom@50 { -+ compatible = "atmel,24c32"; -+ reg = <0x50>; -+ pagesize = <32>; -+ }; -+ - }; - - &i2s0_8ch { -diff --git a/board/rockchip/evb_rk3568/Kconfig b/board/rockchip/evb_rk3568/Kconfig -index f3d3a7e1..8bf457da 100644 ---- a/board/rockchip/evb_rk3568/Kconfig -+++ b/board/rockchip/evb_rk3568/Kconfig -@@ -12,4 +12,7 @@ config SYS_CONFIG_NAME - config BOARD_SPECIFIC_OPTIONS # dummy - def_bool y - -+config UBOOT_GREEN_BOARD -+ tristate "uboot green boadrd" -+ - endif -diff --git a/board/rockchip/evb_rk3568/Makefile b/board/rockchip/evb_rk3568/Makefile -index cbda95fe..e616da10 100644 ---- a/board/rockchip/evb_rk3568/Makefile -+++ b/board/rockchip/evb_rk3568/Makefile -@@ -5,3 +5,4 @@ - # - - obj-y += evb_rk3568.o -+obj-$(CONFIG_UBOOT_GREEN_BOARD) += nabucasa/green/board.o -diff --git a/board/rockchip/evb_rk3568/nabucasa/green/board.c b/board/rockchip/evb_rk3568/nabucasa/green/board.c -new file mode 100644 -index 00000000..8d24b02a ---- /dev/null -+++ b/board/rockchip/evb_rk3568/nabucasa/green/board.c -@@ -0,0 +1,91 @@ -+// SPDX-License-Identifier: GPL-2.0 -+/* -+ * Copyright 2022 Google LLC -+ */ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+ -+int misc_init_r(void) -+{ -+ -+ #define CONTENT_SIZE 44 -+ #define ETHADDR_OFFSET 0X22 -+ #define ETHADDR_LEN 6 -+ #define SERIALNUM_OFFSET 0X10 -+ #define SERIALNUM_LEN 18 -+ #define VERSION_OFFSET 0X0C -+ #define VERSION_LEN 4 -+ -+ unsigned char data[CONTENT_SIZE]; -+ unsigned char ethaddr[ETHADDR_LEN]; -+ unsigned char serialnum[SERIALNUM_LEN + 1]; -+ unsigned char version[VERSION_LEN]; -+ unsigned char fdtfile_name[32] = "rk3566-ha-green.dtb"; -+ -+ const char *ETHADDR_NAME = "ethaddr"; -+ struct udevice *dev; -+ int ret; -+ -+ -+ if (env_get(ETHADDR_NAME)){ -+ printf("ethaddr not null\n"); -+ ret = 0; -+ goto exit; -+ } -+ -+ -+ ret = uclass_first_device_err(UCLASS_I2C_EEPROM, &dev); -+ if (ret){ -+ printf("UCLASS_I2C_EEPROM get error\n"); -+ goto exit; -+ } -+ -+ -+ ret = i2c_eeprom_read(dev, 0, data, sizeof(data)); -+ if (ret){ -+ printf("UCLASS_I2C_EEPROM read error %d\n", ret); -+ goto exit; -+ } -+ -+ if((data[0] == 3) && (data[1] == 5) && (data[2] == 6) && (data[3] == 6)) -+ { -+ printf("header ok\n"); -+ -+ memcpy(version , data + VERSION_OFFSET, VERSION_LEN); -+ if(!strcmp(version, "00A0")){ -+ sprintf(fdtfile_name, "%s", "rk3566-ha-green.dtb"); -+ printf("overlay fdtfile_name = %s\n", fdtfile_name); -+ } -+ -+ -+ -+ -+ -+ memcpy(serialnum, data + SERIALNUM_OFFSET, SERIALNUM_LEN); -+ serialnum[SERIALNUM_LEN] = 0; -+ env_set("serial#", serialnum); -+ -+ -+ memcpy(ethaddr, data + ETHADDR_OFFSET, ETHADDR_LEN); -+ -+ if (is_valid_ethaddr(ethaddr)) -+ eth_env_set_enetaddr(ETHADDR_NAME, ethaddr); -+ } -+ -+ -+exit: -+ env_set("fdtfile", fdtfile_name); -+ -+ -+ -+ return 0; -+} -\ No newline at end of file diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0006-green-spl-loader-uboot-order-sd-emmc-spi_nor.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0006-green-spl-loader-uboot-order-sd-emmc-spi_nor.patch index 84f924724..ed3b4d230 100644 --- a/buildroot-external/board/nabucasa/green/patches/uboot/0006-green-spl-loader-uboot-order-sd-emmc-spi_nor.patch +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0006-green-spl-loader-uboot-order-sd-emmc-spi_nor.patch @@ -1,14 +1,17 @@ -From cbea8d765c41873dc4fde70aed0f919ab8953008 Mon Sep 17 00:00:00 2001 +From 9fd3b62354064d44fd391907f48d7800c6839c8a Mon Sep 17 00:00:00 2001 +Message-ID: <9fd3b62354064d44fd391907f48d7800c6839c8a.1692346980.git.stefan@agner.ch> +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> From: syan Date: Mon, 31 Jul 2023 09:39:55 +0000 -Subject: [PATCH] green: spl loader uboot order: sd-emmc-spi_nor +Subject: [PATCH 6/9] green: spl loader uboot order: sd-emmc-spi_nor --- arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi -index fa98078f..48d7b615 100644 +index fa98078fce..48d7b61513 100644 --- a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi +++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi @@ -9,7 +9,7 @@ @@ -21,5 +24,5 @@ index fa98078f..48d7b615 100644 }; -- -2.25.1 +2.41.0 diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0007-rockchip-rk3568-rock-3a-Fix-SPI-Flash-alias.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0007-rockchip-rk3568-rock-3a-Fix-SPI-Flash-alias.patch new file mode 100644 index 000000000..514d026a9 --- /dev/null +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0007-rockchip-rk3568-rock-3a-Fix-SPI-Flash-alias.patch @@ -0,0 +1,76 @@ +From 59eeea1cb0b1a0b254c759dceeface686aa8f24b Mon Sep 17 00:00:00 2001 +Message-ID: <59eeea1cb0b1a0b254c759dceeface686aa8f24b.1692346980.git.stefan@agner.ch> +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +From: Jonas Karlman +Date: Fri, 28 Jul 2023 12:05:40 +0000 +Subject: [PATCH 7/9] rockchip: rk3568-rock-3a: Fix SPI Flash alias + +The commit 64f79f88a751 ("rockchip: rk3568-rock-3a: Enable boot from SPI +NOR flash") enabled SPI flash support by overriding the spi0 alias. + +Correct this by adding a new spi4 alias in rk356x-u-boot.dtsi and +SF_DEFAULT_BUS=4 and SPL_DM_SEQ_ALIAS=y in defconfig. Also enabled +support for parsing and auto discovery of parameters, SFDP. + +Fixes: 64f79f88a751 ("rockchip: rk3568-rock-3a: Enable boot from SPI NOR flash") +Signed-off-by: Jonas Karlman +Reviewed-by: Kever Yang +(cherry picked from commit 52f6b96d27c8aabca697ac395e86a3481f1c53b7) +--- + arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 4 ---- + arch/arm/dts/rk356x-u-boot.dtsi | 1 + + configs/rock-3a-rk3568_defconfig | 3 +++ + 3 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi +index bbf54f888f..cb40dc31d1 100644 +--- a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi ++++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi +@@ -7,10 +7,6 @@ + #include "rk356x-u-boot.dtsi" + + / { +- aliases { +- spi0 = &sfc; +- }; +- + chosen { + stdout-path = &uart2; + }; +diff --git a/arch/arm/dts/rk356x-u-boot.dtsi b/arch/arm/dts/rk356x-u-boot.dtsi +index c340c2bba6..e7b46bb2d4 100644 +--- a/arch/arm/dts/rk356x-u-boot.dtsi ++++ b/arch/arm/dts/rk356x-u-boot.dtsi +@@ -9,6 +9,7 @@ + aliases { + mmc0 = &sdhci; + mmc1 = &sdmmc0; ++ spi4 = &sfc; + }; + + chosen { +diff --git a/configs/rock-3a-rk3568_defconfig b/configs/rock-3a-rk3568_defconfig +index 753d03914d..92eb6b3f1c 100644 +--- a/configs/rock-3a-rk3568_defconfig ++++ b/configs/rock-3a-rk3568_defconfig +@@ -54,6 +54,7 @@ CONFIG_CMD_REGULATOR=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_OF_LIVE=y + CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" ++CONFIG_SPL_DM_SEQ_ALIAS=y + CONFIG_SPL_REGMAP=y + CONFIG_SPL_SYSCON=y + CONFIG_SPL_CLK=y +@@ -66,6 +67,8 @@ CONFIG_MMC_DW_ROCKCHIP=y + CONFIG_MMC_SDHCI=y + CONFIG_MMC_SDHCI_SDMA=y + CONFIG_MMC_SDHCI_ROCKCHIP=y ++CONFIG_SF_DEFAULT_BUS=4 ++CONFIG_SPI_FLASH_SFDP_SUPPORT=y + CONFIG_SPI_FLASH_MACRONIX=y + CONFIG_SPI_FLASH_XTX=y + CONFIG_ETH_DESIGNWARE=y +-- +2.41.0 + diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0008-green-Fix-SPI-Flash-alias.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0008-green-Fix-SPI-Flash-alias.patch new file mode 100644 index 000000000..49045102e --- /dev/null +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0008-green-Fix-SPI-Flash-alias.patch @@ -0,0 +1,46 @@ +From 24c253f85e04cc09b675c41490bad0c69338c2c6 Mon Sep 17 00:00:00 2001 +Message-ID: <24c253f85e04cc09b675c41490bad0c69338c2c6.1692346980.git.stefan@agner.ch> +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +From: Stefan Agner +Date: Thu, 17 Aug 2023 17:51:07 +0200 +Subject: [PATCH 8/9] green: Fix SPI Flash alias + +Use the commonly used SPI flash bus 4. This allows to access SPI NOR +flash from regular U-Boot as well. + +Signed-off-by: Stefan Agner +--- + configs/green_defconfig | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/configs/green_defconfig b/configs/green_defconfig +index a97391f295..71c9257d7d 100644 +--- a/configs/green_defconfig ++++ b/configs/green_defconfig +@@ -55,6 +55,7 @@ CONFIG_CMD_REGULATOR=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_OF_LIVE=y + CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" ++CONFIG_SPL_DM_SEQ_ALIAS=y + CONFIG_SPL_REGMAP=y + CONFIG_SPL_SYSCON=y + CONFIG_SPL_CLK=y +@@ -69,10 +70,12 @@ CONFIG_MMC_DW_ROCKCHIP=y + CONFIG_MMC_SDHCI=y + CONFIG_MMC_SDHCI_SDMA=y + CONFIG_MMC_SDHCI_ROCKCHIP=y +-CONFIG_SPI_FLASH_MACRONIX=y +-CONFIG_SPI_FLASH_XTX=y ++CONFIG_SF_DEFAULT_BUS=4 ++CONFIG_SPI_FLASH_SFDP_SUPPORT=y + CONFIG_SPI_FLASH_GIGADEVICE=y ++CONFIG_SPI_FLASH_MACRONIX=y + CONFIG_SPI_FLASH_WINBOND=y ++CONFIG_SPI_FLASH_XTX=y + CONFIG_ETH_DESIGNWARE=y + CONFIG_GMAC_ROCKCHIP=y + CONFIG_PHY_ROCKCHIP_INNO_USB2=y +-- +2.41.0 + diff --git a/buildroot-external/board/nabucasa/green/patches/uboot/0009-arch-arm-dts-green-drop-SPI-NOR-flash-partitions.patch b/buildroot-external/board/nabucasa/green/patches/uboot/0009-arch-arm-dts-green-drop-SPI-NOR-flash-partitions.patch new file mode 100644 index 000000000..8c4c64969 --- /dev/null +++ b/buildroot-external/board/nabucasa/green/patches/uboot/0009-arch-arm-dts-green-drop-SPI-NOR-flash-partitions.patch @@ -0,0 +1,53 @@ +From c0ee04d554802a7b7af3e6ec6b3d9b4160c75126 Mon Sep 17 00:00:00 2001 +Message-ID: +In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch> +From: Stefan Agner +Date: Fri, 18 Aug 2023 10:06:24 +0200 +Subject: [PATCH 9/9] arch: arm: dts: green: drop SPI NOR flash partitions + +--- + arch/arm/dts/rk3566-ha-green.dts | 27 --------------------------- + 1 file changed, 27 deletions(-) + +diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts +index 91afadf0e6..68d836911e 100644 +--- a/arch/arm/dts/rk3566-ha-green.dts ++++ b/arch/arm/dts/rk3566-ha-green.dts +@@ -576,33 +576,6 @@ + spi-max-frequency = <25000000>; + spi-rx-bus-width = <1>; + spi-tx-bus-width = <1>; +- +- partitions { +- compatible = "fixed-partitions"; +- #address-cells = <1>; +- #size-cells = <1>; +- +- partition@0 { +- label = "SPL"; +- reg = <0x0 0xe0000>; +- }; +- partition@e0000 { +- label = "U-Boot Env"; +- reg = <0xe0000 0x20000>; +- }; +- partition@100000 { +- label = "U-Boot"; +- reg = <0x100000 0x200000>; +- }; +- partition@300000 { +- label = "splash"; +- reg = <0x300000 0x100000>; +- }; +- partition@400000 { +- label = "Filesystem"; +- reg = <0x400000 0xc00000>; +- }; +- }; + }; + }; + +-- +2.41.0 + diff --git a/buildroot-external/board/nabucasa/green/uboot.config b/buildroot-external/board/nabucasa/green/uboot.config deleted file mode 100644 index f68a3bc9a..000000000 --- a/buildroot-external/board/nabucasa/green/uboot.config +++ /dev/null @@ -1,3 +0,0 @@ -CONFIG_ENV_OVERWRITE=y -CONFIG_UBOOT_GREEN_BOARD=y -CONFIG_I2C_EEPROM=y \ No newline at end of file diff --git a/buildroot-external/configs/green_defconfig b/buildroot-external/configs/green_defconfig index 6c5658d0d..ffb06e06e 100755 --- a/buildroot-external/configs/green_defconfig +++ b/buildroot-external/configs/green_defconfig @@ -114,7 +114,7 @@ BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/u-boot/u-boot.git" BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="v2023.07.02" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="green" -BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/uboot.config" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config" BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="idbloader.img u-boot.itb" BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y