mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-07-27 15:06:29 +00:00
Update U-Boot patches and configuration (#2694)
Update U-Boot board configuration for Home Assistant Green. This moves all Green specific board configuration into the U-Boot source code patches. The "sf probe" command now picks up the correct SPI bus by default.
This commit is contained in:
parent
e8da915a46
commit
68c74db9d2
@ -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 <north_sea@qq.com>
|
||||
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 @@
|
||||
|
@ -1,14 +1,17 @@
|
||||
From 4ebfe11def93e82d9bd0c43414cb7c6f01a54d19 Mon Sep 17 00:00:00 2001
|
||||
From d4f52bc53540341dcb3408a3f2d4ec8bd1fe260a Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <d4f52bc53540341dcb3408a3f2d4ec8bd1fe260a.1692346980.git.stefan@agner.ch>
|
||||
In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
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
|
||||
|
||||
|
@ -1,7 +1,10 @@
|
||||
From fee073b1c267ac318b7eb7b52b1098bd2aaf09df Mon Sep 17 00:00:00 2001
|
||||
From c59235f8be1bdd261e1677177c1bef1bee1025ea Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <c59235f8be1bdd261e1677177c1bef1bee1025ea.1692346980.git.stefan@agner.ch>
|
||||
In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
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
|
||||
|
||||
|
@ -1,7 +1,10 @@
|
||||
From 0de4db17b62e1fa47b788d921a76bc7a0328b0a9 Mon Sep 17 00:00:00 2001
|
||||
From e525d29174f335fe9aa72da8642699609631b2be Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <e525d29174f335fe9aa72da8642699609631b2be.1692346980.git.stefan@agner.ch>
|
||||
In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
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
|
||||
|
||||
|
@ -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 <stefan@agner.ch>
|
||||
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 <stefan@agner.ch>
|
||||
---
|
||||
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 <net.h>
|
||||
+#include <errno.h>
|
||||
+#include <dm/device.h>
|
||||
+#include <dm/uclass.h>
|
||||
+#include <common.h>
|
||||
+#include <dm.h>
|
||||
+#include <eeprom.h>
|
||||
+#include <env.h>
|
||||
+#include <i2c_eeprom.h>
|
||||
+#include <netdev.h>
|
||||
+
|
||||
+#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 <configs/rk3568_common.h>
|
||||
+
|
||||
+#endif
|
||||
--
|
||||
2.41.0
|
||||
|
@ -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 <net.h>
|
||||
+#include <errno.h>
|
||||
+#include <dm/device.h>
|
||||
+#include <dm/uclass.h>
|
||||
+#include <common.h>
|
||||
+#include <dm.h>
|
||||
+#include <eeprom.h>
|
||||
+#include <env.h>
|
||||
+#include <i2c_eeprom.h>
|
||||
+#include <netdev.h>
|
||||
+
|
||||
+
|
||||
+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
|
@ -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 <syan.cham@gmail.com>
|
||||
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
|
||||
|
||||
|
@ -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 <jonas@kwiboo.se>
|
||||
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 <jonas@kwiboo.se>
|
||||
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
|
||||
(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
|
||||
|
@ -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 <stefan@agner.ch>
|
||||
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 <stefan@agner.ch>
|
||||
---
|
||||
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
|
||||
|
@ -0,0 +1,53 @@
|
||||
From c0ee04d554802a7b7af3e6ec6b3d9b4160c75126 Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <c0ee04d554802a7b7af3e6ec6b3d9b4160c75126.1692346980.git.stefan@agner.ch>
|
||||
In-Reply-To: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
References: <2ab36c774a9f16c10a2bffeb602a9c914ffacd00.1692346980.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
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
|
||||
|
@ -1,3 +0,0 @@
|
||||
CONFIG_ENV_OVERWRITE=y
|
||||
CONFIG_UBOOT_GREEN_BOARD=y
|
||||
CONFIG_I2C_EEPROM=y
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user