diff --git a/packages/tools/u-boot/package.mk b/packages/tools/u-boot/package.mk index 7728d82bb7..7286677994 100644 --- a/packages/tools/u-boot/package.mk +++ b/packages/tools/u-boot/package.mk @@ -18,8 +18,8 @@ PKG_NEED_UNPACK="$PROJECT_DIR/$PROJECT/bootloader" case "$PROJECT" in Rockchip) - PKG_VERSION="ac5a8f08e811581376e731c898c21e4f79177ec2" - PKG_SHA256="e3ca0d99fef24649c75c4fe7cb0c6de069f98424a7dbf9d397f65b79b8749866" + PKG_VERSION="8659d08d2b589693d121c1298484e861b7dafc4f" + PKG_SHA256="3f9f2bbd0c28be6d7d6eb909823fee5728da023aca0ce37aef3c8f67d1179ec1" PKG_URL="https://github.com/rockchip-linux/u-boot/archive/$PKG_VERSION.tar.gz" PKG_PATCH_DIRS="rockchip" PKG_DEPENDS_TARGET+=" rkbin" diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0001-dont-build-libfdt.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0001-dont-build-libfdt.patch index 4495459ed7..e3a23befbd 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0001-dont-build-libfdt.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0001-dont-build-libfdt.patch @@ -1,4 +1,4 @@ -From de094e01bb6876d7025e8c1b665828f6764e2c70 Mon Sep 17 00:00:00 2001 +From 3f028d24ed02173fea0950c28b3192f44e40c2a9 Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Sat, 2 Dec 2017 11:47:07 +0100 Subject: [PATCH] dont build libfdt diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0002-rockchip-board-save-cpuid-to-env.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0002-rockchip-board-save-cpuid-to-env.patch deleted file mode 100644 index 6903863e80..0000000000 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0002-rockchip-board-save-cpuid-to-env.patch +++ /dev/null @@ -1,35 +0,0 @@ -From dfdfa7fb1a50c21a784a67e5f99d8714ca853c07 Mon Sep 17 00:00:00 2001 -From: Jonas Karlman -Date: Mon, 20 Aug 2018 22:55:34 +0200 -Subject: [PATCH] rockchip: board: save cpuid to env - ---- - arch/arm/mach-rockchip/board.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/arch/arm/mach-rockchip/board.c b/arch/arm/mach-rockchip/board.c -index 233f0b6f9a..6c2021e32a 100644 ---- a/arch/arm/mach-rockchip/board.c -+++ b/arch/arm/mach-rockchip/board.c -@@ -44,6 +44,7 @@ DECLARE_GLOBAL_DATA_PTR; - static int rockchip_set_serialno(void) - { - char serialno_str[VENDOR_SN_MAX]; -+ char cpuid_str[CPUID_LEN * 2 + 1]; - int ret = 0, i; - u8 cpuid[CPUID_LEN] = {0}; - u8 low[CPUID_LEN / 2], high[CPUID_LEN / 2]; -@@ -89,6 +90,13 @@ static int rockchip_set_serialno(void) - snprintf(serialno_str, sizeof(serialno_str), "%llx", serialno); - - env_set("serial#", serialno_str); -+ -+ memset(cpuid_str, 0, sizeof(cpuid_str)); -+ for (i = 0; i < CPUID_LEN; i++) { -+ sprintf(&cpuid_str[i * 2], "%02x", cpuid[i]); -+ } -+ -+ env_set("cpuid#", cpuid_str); - #ifdef CONFIG_ROCKCHIP_VENDOR_PARTITION - } - #endif diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0002-rockchip-board-use-efuse-cpuid-to-set-ethaddr.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0002-rockchip-board-use-efuse-cpuid-to-set-ethaddr.patch new file mode 100644 index 0000000000..737894292d --- /dev/null +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0002-rockchip-board-use-efuse-cpuid-to-set-ethaddr.patch @@ -0,0 +1,99 @@ +From 61b0555d3b8e962f3cac5cf17ab149f4fb318ca3 Mon Sep 17 00:00:00 2001 +From: Jonas Karlman +Date: Mon, 20 Aug 2018 22:55:34 +0200 +Subject: [PATCH] rockchip: board: use efuse cpuid to set ethaddr + +--- + arch/arm/mach-rockchip/board.c | 51 ++++++++++++++++++++++++++++++++++ + 1 file changed, 51 insertions(+) + +diff --git a/arch/arm/mach-rockchip/board.c b/arch/arm/mach-rockchip/board.c +index b56edebf13..155871f5bf 100644 +--- a/arch/arm/mach-rockchip/board.c ++++ b/arch/arm/mach-rockchip/board.c +@@ -31,6 +31,8 @@ + #include + #include + #include ++#include ++#include + + DECLARE_GLOBAL_DATA_PTR; + /* define serialno max length, the max length is 512 Bytes +@@ -44,6 +46,7 @@ DECLARE_GLOBAL_DATA_PTR; + static int rockchip_set_serialno(void) + { + char serialno_str[VENDOR_SN_MAX]; ++ char cpuid_str[CPUID_LEN * 2 + 1]; + int ret = 0, i; + u8 cpuid[CPUID_LEN] = {0}; + u8 low[CPUID_LEN / 2], high[CPUID_LEN / 2]; +@@ -73,6 +76,13 @@ static int rockchip_set_serialno(void) + printf("%s: reading cpuid from the efuses failed\n", __func__); + return ret; + } ++ ++ memset(cpuid_str, 0, sizeof(cpuid_str)); ++ for (i = 0; i < CPUID_LEN; i++) { ++ sprintf(&cpuid_str[i * 2], "%02x", cpuid[i]); ++ } ++ ++ env_set("cpuid#", cpuid_str); + #else + /* generate random cpuid */ + for (i = 0; i < CPUID_LEN; i++) { +@@ -95,6 +105,45 @@ static int rockchip_set_serialno(void) + return ret; + } + ++static void rockchip_set_ethaddr(void) ++{ ++#if CONFIG_IS_ENABLED(CMD_NET) ++ int ret; ++ const char *cpuid = env_get("cpuid#"); ++ u8 hash[SHA256_SUM_LEN]; ++ int size = sizeof(hash); ++ u8 mac_addr[6]; ++ ++ /* Only generate a MAC address, if none is set in the environment */ ++ if (env_get("ethaddr")) ++ return; ++ ++ if (!cpuid) { ++ debug("%s: could not retrieve 'cpuid#'\n", __func__); ++ return; ++ } ++ ++ ret = hash_block("sha256", (void *)cpuid, strlen(cpuid), hash, &size); ++ if (ret) { ++ debug("%s: failed to calculate SHA256\n", __func__); ++ return; ++ } ++ ++ /* Copy 6 bytes of the hash to base the MAC address on */ ++ memcpy(mac_addr, hash, 6); ++ ++ /* Make this a valid MAC address and set it */ ++ mac_addr[0] &= 0xfe; /* clear multicast bit */ ++ mac_addr[0] |= 0x02; /* set local assignment bit (IEEE802) */ ++ eth_env_set_enetaddr("ethaddr", mac_addr); ++ ++ /* Make a valid MAC address for eth1 */ ++ mac_addr[5] += 0x20; ++ mac_addr[5] &= 0xff; ++ eth_env_set_enetaddr("eth1addr", mac_addr); ++#endif ++} ++ + #if defined(CONFIG_USB_FUNCTION_FASTBOOT) + int fb_set_reboot_flag(void) + { +@@ -162,6 +211,8 @@ int board_late_init(void) + #endif + rockchip_set_serialno(); + ++ rockchip_set_ethaddr(); ++ + soc_clk_dump(); + + return rk_board_late_init(); diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0003-rockchip-rk3328-add-efuse-support.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0003-rockchip-rk3328-get-serial-and-ethaddr-from-efuse.patch similarity index 87% rename from packages/tools/u-boot/patches/rockchip/u-boot-0003-rockchip-rk3328-add-efuse-support.patch rename to packages/tools/u-boot/patches/rockchip/u-boot-0003-rockchip-rk3328-get-serial-and-ethaddr-from-efuse.patch index 45ec65f3a0..35a18c035c 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0003-rockchip-rk3328-add-efuse-support.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0003-rockchip-rk3328-get-serial-and-ethaddr-from-efuse.patch @@ -1,7 +1,7 @@ -From e44f2ddac6099a0947c4182a0f4296d8df2be4a8 Mon Sep 17 00:00:00 2001 +From c871e961036d58bf1d66b7e79be85777158b7137 Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Sat, 18 Aug 2018 17:26:35 +0200 -Subject: [PATCH] rockchip: rk3328: add efuse support +Subject: [PATCH] rockchip: rk3328: get serial and ethaddr from efuse --- arch/arm/dts/rk3328.dtsi | 14 ++++++++++++++ @@ -9,7 +9,7 @@ Subject: [PATCH] rockchip: rk3328: add efuse support 2 files changed, 16 insertions(+) diff --git a/arch/arm/dts/rk3328.dtsi b/arch/arm/dts/rk3328.dtsi -index 94d39b1b35..35db0ccf4d 100644 +index 670b98d6fa..88cc185b96 100644 --- a/arch/arm/dts/rk3328.dtsi +++ b/arch/arm/dts/rk3328.dtsi @@ -341,6 +341,20 @@ diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0005-rk3328-evb-add-sdmmc-vmmc-supply.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0004-rk3328-evb-fix-sdmmc-vmmc-supply.patch similarity index 91% rename from packages/tools/u-boot/patches/rockchip/u-boot-0005-rk3328-evb-add-sdmmc-vmmc-supply.patch rename to packages/tools/u-boot/patches/rockchip/u-boot-0004-rk3328-evb-fix-sdmmc-vmmc-supply.patch index 29804ac0ef..49a2f91d3b 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0005-rk3328-evb-add-sdmmc-vmmc-supply.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0004-rk3328-evb-fix-sdmmc-vmmc-supply.patch @@ -1,7 +1,7 @@ -From 46d72af5faa7f12a057294356eb353d38c56b5fe Mon Sep 17 00:00:00 2001 +From caec69d5fc737f971439a1dae391c9b3d5ff4c31 Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Wed, 10 Jan 2018 19:56:16 +0100 -Subject: [PATCH] rk3328-evb: add sdmmc vmmc-supply +Subject: [PATCH] rk3328-evb: fix sdmmc vmmc-supply --- arch/arm/dts/rk3328-evb.dts | 7 +++++-- @@ -34,10 +34,10 @@ index aafafec649..497b040f56 100644 }; diff --git a/arch/arm/dts/rk3328.dtsi b/arch/arm/dts/rk3328.dtsi -index 35db0ccf4d..231e66788d 100644 +index 88cc185b96..e920d692ff 100644 --- a/arch/arm/dts/rk3328.dtsi +++ b/arch/arm/dts/rk3328.dtsi -@@ -481,8 +481,9 @@ +@@ -475,8 +475,9 @@ compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc"; reg = <0x0 0xff500000 0x0 0x4000>; max-frequency = <150000000>; @@ -49,7 +49,7 @@ index 35db0ccf4d..231e66788d 100644 fifo-depth = <0x100>; interrupts = ; status = "disabled"; -@@ -504,8 +505,9 @@ +@@ -498,8 +499,9 @@ compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc"; reg = <0x0 0xff520000 0x0 0x4000>; max-frequency = <150000000>; diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0004-rk3328-evb-get-ethaddr-from-efuse.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0004-rk3328-evb-get-ethaddr-from-efuse.patch deleted file mode 100644 index ed823d2bc5..0000000000 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0004-rk3328-evb-get-ethaddr-from-efuse.patch +++ /dev/null @@ -1,66 +0,0 @@ -From c4068865306726939489b961fd8e04f9a2a7b1ce Mon Sep 17 00:00:00 2001 -From: Kamil Trzcinski -Date: Sat, 19 Aug 2017 20:38:50 +0200 -Subject: [PATCH] rk3328-evb: get ethaddr from efuse - ---- - board/rockchip/evb_rk3328/evb-rk3328.c | 49 ++++++++++++++++++++++++++ - 1 file changed, 49 insertions(+) - -diff --git a/board/rockchip/evb_rk3328/evb-rk3328.c b/board/rockchip/evb_rk3328/evb-rk3328.c -index c8e7a3ad64..8829f50327 100644 ---- a/board/rockchip/evb_rk3328/evb-rk3328.c -+++ b/board/rockchip/evb_rk3328/evb-rk3328.c -@@ -3,3 +3,52 @@ - * - * SPDX-License-Identifier: GPL-2.0+ - */ -+ -+#include -+#include -+ -+static void setup_macaddr(void) -+{ -+#if CONFIG_IS_ENABLED(CMD_NET) -+ int ret; -+ const char *cpuid = env_get("cpuid#"); -+ u8 hash[SHA256_SUM_LEN]; -+ int size = sizeof(hash); -+ u8 mac_addr[6]; -+ -+ /* Only generate a MAC address, if none is set in the environment */ -+ if (env_get("ethaddr")) -+ return; -+ -+ if (!cpuid) { -+ debug("%s: could not retrieve 'cpuid#'\n", __func__); -+ return; -+ } -+ -+ ret = hash_block("sha256", (void *)cpuid, strlen(cpuid), hash, &size); -+ if (ret) { -+ debug("%s: failed to calculate SHA256\n", __func__); -+ return; -+ } -+ -+ /* Copy 6 bytes of the hash to base the MAC address on */ -+ memcpy(mac_addr, hash, 6); -+ -+ /* Make this a valid MAC address and set it */ -+ mac_addr[0] &= 0xfe; /* clear multicast bit */ -+ mac_addr[0] |= 0x02; /* set local assignment bit (IEEE802) */ -+ eth_env_set_enetaddr("ethaddr", mac_addr); -+ -+ /* Make a valid MAC address for eth1 */ -+ mac_addr[5] += 0x20; -+ mac_addr[5] &= 0xff; -+ eth_env_set_enetaddr("eth1addr", mac_addr); -+#endif -+} -+ -+int rk_board_late_init(void) -+{ -+ setup_macaddr(); -+ -+ return 0; -+} diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0006-rockchip-rk3288-add-efuse-support.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0005-rockchip-rk3288-get-serial-and-ethaddr-from-efuse.patch similarity index 91% rename from packages/tools/u-boot/patches/rockchip/u-boot-0006-rockchip-rk3288-add-efuse-support.patch rename to packages/tools/u-boot/patches/rockchip/u-boot-0005-rockchip-rk3288-get-serial-and-ethaddr-from-efuse.patch index d20992d267..bf14232101 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0006-rockchip-rk3288-add-efuse-support.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0005-rockchip-rk3288-get-serial-and-ethaddr-from-efuse.patch @@ -1,7 +1,7 @@ -From 180c7b262f17a58de6865b7b7a5df609e1449ce8 Mon Sep 17 00:00:00 2001 +From 050dd4323a9fe8515259fe855c31da6d1ad459e2 Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Sun, 5 Aug 2018 20:58:54 +0200 -Subject: [PATCH] rockchip: rk3288: add efuse support +Subject: [PATCH] rockchip: rk3288: get serial and ethaddr from efuse --- arch/arm/dts/rk3288.dtsi | 5 ++--- diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0008-rk3399-evb-fixup-get-serial-and-ethaddr-from-efuse.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0006-rk3399-evb-use-common-get-serial-and-ethaddr-from-ef.patch similarity index 69% rename from packages/tools/u-boot/patches/rockchip/u-boot-0008-rk3399-evb-fixup-get-serial-and-ethaddr-from-efuse.patch rename to packages/tools/u-boot/patches/rockchip/u-boot-0006-rk3399-evb-use-common-get-serial-and-ethaddr-from-ef.patch index 575fe1fb3a..4a1fd0929b 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0008-rk3399-evb-fixup-get-serial-and-ethaddr-from-efuse.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0006-rk3399-evb-use-common-get-serial-and-ethaddr-from-ef.patch @@ -1,18 +1,18 @@ -From ea235722e95630c3d5da5403e660a8bc20e2b8d0 Mon Sep 17 00:00:00 2001 +From 400e9e6b21878e8570ce1cb0242d93baa6c21c99 Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Mon, 20 Aug 2018 23:01:10 +0200 -Subject: [PATCH] rk3399-evb: fixup get serial and ethaddr from efuse +Subject: [PATCH] rk3399-evb: use common get serial and ethaddr from efuse --- - board/rockchip/evb_rk3399/evb-rk3399.c | 80 +------------------------- - include/configs/evb_rk3399.h | 3 - - 2 files changed, 2 insertions(+), 81 deletions(-) + board/rockchip/evb_rk3399/evb-rk3399.c | 119 ------------------------- + include/configs/evb_rk3399.h | 3 - + 2 files changed, 122 deletions(-) diff --git a/board/rockchip/evb_rk3399/evb-rk3399.c b/board/rockchip/evb_rk3399/evb-rk3399.c -index b6f730852a..c0a38d5143 100644 +index b6f730852a..3a6b802a3f 100644 --- a/board/rockchip/evb_rk3399/evb-rk3399.c +++ b/board/rockchip/evb_rk3399/evb-rk3399.c -@@ -6,13 +6,12 @@ +@@ -6,23 +6,17 @@ #include #include @@ -23,11 +23,10 @@ index b6f730852a..c0a38d5143 100644 -#include #include #include -+#include - #include +-#include #include #include -@@ -20,9 +19,6 @@ + #include DECLARE_GLOBAL_DATA_PTR; @@ -37,17 +36,48 @@ index b6f730852a..c0a38d5143 100644 int rk_board_init(void) { struct udevice *pinctrl, *regulator; -@@ -106,87 +102,15 @@ static void setup_macaddr(void) - mac_addr[0] |= 0x02; /* set local assignment bit (IEEE802) */ - eth_env_set_enetaddr("ethaddr", mac_addr); - #endif -- -- return; +@@ -74,119 +68,6 @@ out: + return 0; } +-static void setup_macaddr(void) +-{ +-#if CONFIG_IS_ENABLED(CMD_NET) +- int ret; +- const char *cpuid = env_get("cpuid#"); +- u8 hash[SHA256_SUM_LEN]; +- int size = sizeof(hash); +- u8 mac_addr[6]; +- +- /* Only generate a MAC address, if none is set in the environment */ +- if (env_get("ethaddr")) +- return; +- +- if (!cpuid) { +- debug("%s: could not retrieve 'cpuid#'\n", __func__); +- return; +- } +- +- ret = hash_block("sha256", (void *)cpuid, strlen(cpuid), hash, &size); +- if (ret) { +- debug("%s: failed to calculate SHA256\n", __func__); +- return; +- } +- +- /* Copy 6 bytes of the hash to base the MAC address on */ +- memcpy(mac_addr, hash, 6); +- +- /* Make this a valid MAC address and set it */ +- mac_addr[0] &= 0xfe; /* clear multicast bit */ +- mac_addr[0] |= 0x02; /* set local assignment bit (IEEE802) */ +- eth_env_set_enetaddr("ethaddr", mac_addr); +-#endif +- +- return; +-} +- -static void setup_serial(void) -+int rk_board_late_init(void) - { +-{ -#if CONFIG_IS_ENABLED(ROCKCHIP_EFUSE) - struct udevice *dev; - int ret, i; @@ -102,11 +132,11 @@ index b6f730852a..c0a38d5143 100644 -int misc_init_r(void) -{ - setup_serial(); - setup_macaddr(); - - return 0; - } - +- setup_macaddr(); +- +- return 0; +-} +- -#ifdef CONFIG_SERIAL_TAG -void get_board_serial(struct tag_serialnr *serialnr) -{ diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0009-include-update-log2-header-from-the-Linux-kernel.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0007-include-update-log2-header-from-the-Linux-kernel.patch similarity index 98% rename from packages/tools/u-boot/patches/rockchip/u-boot-0009-include-update-log2-header-from-the-Linux-kernel.patch rename to packages/tools/u-boot/patches/rockchip/u-boot-0007-include-update-log2-header-from-the-Linux-kernel.patch index 89b448657c..b4842be48c 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0009-include-update-log2-header-from-the-Linux-kernel.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0007-include-update-log2-header-from-the-Linux-kernel.patch @@ -1,4 +1,4 @@ -From 37a07ad0222bb19c7fdc03d7679bae47d9875eed Mon Sep 17 00:00:00 2001 +From dd573f1b6c8e9bd09cb9e8573270bce599553feb Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Mon, 7 May 2018 22:18:27 +0200 Subject: [PATCH] include: update log2 header from the Linux kernel diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0007-rk3288-miqi-get-ethaddr-from-efuse.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0007-rk3288-miqi-get-ethaddr-from-efuse.patch deleted file mode 100644 index 6710a3c7f4..0000000000 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0007-rk3288-miqi-get-ethaddr-from-efuse.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 99854fa357a70ce160f7db78c383642c119cbad7 Mon Sep 17 00:00:00 2001 -From: Jonas Karlman -Date: Sun, 5 Aug 2018 20:58:54 +0200 -Subject: [PATCH] rk3288-miqi: get ethaddr from efuse - ---- - board/mqmaker/miqi_rk3288/miqi-rk3288.c | 43 +++++++++++++++++++++++++ - configs/miqi-rk3288_defconfig | 1 - - 2 files changed, 43 insertions(+), 1 deletion(-) - -diff --git a/board/mqmaker/miqi_rk3288/miqi-rk3288.c b/board/mqmaker/miqi_rk3288/miqi-rk3288.c -index 846deddb80..f719218eb6 100644 ---- a/board/mqmaker/miqi_rk3288/miqi-rk3288.c -+++ b/board/mqmaker/miqi_rk3288/miqi-rk3288.c -@@ -6,3 +6,46 @@ - - #include - #include -+#include -+#include -+ -+static void setup_macaddr(void) -+{ -+#if CONFIG_IS_ENABLED(CMD_NET) -+ int ret; -+ const char *cpuid = env_get("cpuid#"); -+ u8 hash[SHA256_SUM_LEN]; -+ int size = sizeof(hash); -+ u8 mac_addr[6]; -+ -+ /* Only generate a MAC address, if none is set in the environment */ -+ if (env_get("ethaddr")) -+ return; -+ -+ if (!cpuid) { -+ debug("%s: could not retrieve 'cpuid#'\n", __func__); -+ return; -+ } -+ -+ ret = hash_block("sha256", (void *)cpuid, strlen(cpuid), hash, &size); -+ if (ret) { -+ debug("%s: failed to calculate SHA256\n", __func__); -+ return; -+ } -+ -+ /* Copy 6 bytes of the hash to base the MAC address on */ -+ memcpy(mac_addr, hash, 6); -+ -+ /* Make this a valid MAC address and set it */ -+ mac_addr[0] &= 0xfe; /* clear multicast bit */ -+ mac_addr[0] |= 0x02; /* set local assignment bit (IEEE802) */ -+ eth_env_set_enetaddr("ethaddr", mac_addr); -+#endif -+} -+ -+int rk3288_board_late_init(void) -+{ -+ setup_macaddr(); -+ -+ return 0; -+} -diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig -index ffbe701cfd..746d8035ee 100644 ---- a/configs/miqi-rk3288_defconfig -+++ b/configs/miqi-rk3288_defconfig -@@ -36,7 +36,6 @@ CONFIG_SPL_PARTITION_UUIDS=y - CONFIG_SPL_OF_CONTROL=y - CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" - CONFIG_ENV_IS_IN_MMC=y --CONFIG_NET_RANDOM_ETHADDR=y - CONFIG_REGMAP=y - CONFIG_SPL_REGMAP=y - CONFIG_SYSCON=y diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0010-rockchip-disable-android-boot-and-config.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0008-rockchip-disable-android-boot-and-config.patch similarity index 85% rename from packages/tools/u-boot/patches/rockchip/u-boot-0010-rockchip-disable-android-boot-and-config.patch rename to packages/tools/u-boot/patches/rockchip/u-boot-0008-rockchip-disable-android-boot-and-config.patch index 711cf90459..16dc6f7312 100644 --- a/packages/tools/u-boot/patches/rockchip/u-boot-0010-rockchip-disable-android-boot-and-config.patch +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0008-rockchip-disable-android-boot-and-config.patch @@ -1,4 +1,4 @@ -From 1ba76e3eb47e865d84e42a6b5484516ef4457bf7 Mon Sep 17 00:00:00 2001 +From d0c3abbbecfe69a73b157451857ca061870ec49b Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Sat, 18 Aug 2018 17:27:32 +0200 Subject: [PATCH] rockchip: disable android boot and config @@ -6,11 +6,11 @@ Subject: [PATCH] rockchip: disable android boot and config --- arch/arm/mach-rockchip/boot_mode.c | 2 +- configs/evb-rk3328_defconfig | 5 ++--- - configs/evb-rk3399_defconfig | 14 -------------- + configs/evb-rk3399_defconfig | 17 +---------------- configs/miqi-rk3288_defconfig | 12 +----------- configs/tinker-rk3288_defconfig | 3 --- include/configs/rockchip-common.h | 2 -- - 6 files changed, 4 insertions(+), 34 deletions(-) + 6 files changed, 5 insertions(+), 36 deletions(-) diff --git a/arch/arm/mach-rockchip/boot_mode.c b/arch/arm/mach-rockchip/boot_mode.c index 8a20a3a31e..9441c49477 100644 @@ -56,10 +56,10 @@ index 0897a28e1d..85ee85741e 100644 CONFIG_DM_PMIC=y CONFIG_PMIC_RK8XX=y diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig -index 305f0a405d..bd86db31af 100644 +index 305f0a405d..96aa34b2c0 100644 --- a/configs/evb-rk3399_defconfig +++ b/configs/evb-rk3399_defconfig -@@ -5,8 +5,6 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y +@@ -5,16 +5,14 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x4000 CONFIG_ROCKCHIP_RK3399=y CONFIG_ROCKCHIP_SPL_RESERVE_IRAM=0x4000 @@ -68,7 +68,8 @@ index 305f0a405d..bd86db31af 100644 CONFIG_SPL_STACK_R_ADDR=0x80000 CONFIG_DEFAULT_DEVICE_TREE="rk3399-evb" CONFIG_DEBUG_UART=y -@@ -14,7 +12,6 @@ CONFIG_FIT=y ++# CONFIG_ANDROID_BOOT_IMAGE is not set + CONFIG_FIT=y CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-rockchip/make_fit_atf.py" # CONFIG_DISPLAY_CPUINFO is not set @@ -76,7 +77,7 @@ index 305f0a405d..bd86db31af 100644 CONFIG_SPL_STACK_R=y CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x4000 CONFIG_SPL_ATF=y -@@ -26,9 +23,6 @@ CONFIG_FASTBOOT_FLASH_MMC_DEV=0 +@@ -26,18 +24,13 @@ CONFIG_FASTBOOT_FLASH_MMC_DEV=0 CONFIG_CMD_BOOTZ=y # CONFIG_CMD_IMLS is not set CONFIG_CMD_GPT=y @@ -86,7 +87,16 @@ index 305f0a405d..bd86db31af 100644 CONFIG_CMD_MMC=y CONFIG_CMD_SF=y CONFIG_CMD_USB=y -@@ -94,13 +88,5 @@ CONFIG_USB_ETHER_ASIX88179=y + CONFIG_CMD_USB_MASS_STORAGE=y + # CONFIG_CMD_SETEXPR is not set + CONFIG_CMD_TIME=y +-CONFIG_RKPARM_PARTITION=y + CONFIG_SPL_OF_CONTROL=y +-CONFIG_OF_LIVE=y + CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" + CONFIG_NET_RANDOM_ETHADDR=y + CONFIG_REGMAP=y +@@ -94,13 +87,5 @@ CONFIG_USB_ETHER_ASIX88179=y CONFIG_USB_ETHER_MCS7830=y CONFIG_USB_ETHER_RTL8152=y CONFIG_USB_ETHER_SMSC95XX=y @@ -101,7 +111,7 @@ index 305f0a405d..bd86db31af 100644 CONFIG_USE_TINY_PRINTF=y CONFIG_ERRNO_STR=y diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig -index 746d8035ee..4826581bf7 100644 +index ffbe701cfd..0aa4c903e4 100644 --- a/configs/miqi-rk3288_defconfig +++ b/configs/miqi-rk3288_defconfig @@ -3,12 +3,11 @@ CONFIG_ARCH_ROCKCHIP=y @@ -129,7 +139,7 @@ index 746d8035ee..4826581bf7 100644 CONFIG_CMD_MMC=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y -@@ -79,11 +74,6 @@ CONFIG_G_DNL_PRODUCT_NUM=0x320a +@@ -80,11 +75,6 @@ CONFIG_G_DNL_PRODUCT_NUM=0x320a CONFIG_USB_HOST_ETHER=y CONFIG_USB_ETHER_ASIX=y CONFIG_USB_ETHER_SMSC95XX=y @@ -168,10 +178,10 @@ index 0afc0a35e1..a6f8c0cb51 100644 CONFIG_CMD_SF=y CONFIG_CMD_SPI=y diff --git a/include/configs/rockchip-common.h b/include/configs/rockchip-common.h -index 38ff08a57f..1e8f6c344e 100644 +index f159cbddf3..75a0963953 100644 --- a/include/configs/rockchip-common.h +++ b/include/configs/rockchip-common.h -@@ -99,8 +99,6 @@ +@@ -105,8 +105,6 @@ "fi; \0" #define RKIMG_BOOTCOMMAND \ diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0009-configs-sync-rk3288-rk3328-and-rk3399-defconfig.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0009-configs-sync-rk3288-rk3328-and-rk3399-defconfig.patch new file mode 100644 index 0000000000..2bfe69e393 --- /dev/null +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0009-configs-sync-rk3288-rk3328-and-rk3399-defconfig.patch @@ -0,0 +1,107 @@ +From b9d513e7d18f16cb06ef93a109fb5755f695cb60 Mon Sep 17 00:00:00 2001 +From: Jonas Karlman +Date: Wed, 29 Aug 2018 23:03:07 +0200 +Subject: [PATCH] configs: sync rk3288, rk3328 and rk3399 defconfig + +--- + configs/evb-rk3328_defconfig | 6 +++++- + configs/evb-rk3399_defconfig | 5 +++++ + configs/miqi-rk3288_defconfig | 1 - + configs/tinker-rk3288_defconfig | 2 +- + 4 files changed, 11 insertions(+), 3 deletions(-) + +diff --git a/configs/evb-rk3328_defconfig b/configs/evb-rk3328_defconfig +index 85ee85741e..4388ba32e0 100644 +--- a/configs/evb-rk3328_defconfig ++++ b/configs/evb-rk3328_defconfig +@@ -29,16 +29,20 @@ CONFIG_FASTBOOT_FLASH=y + CONFIG_FASTBOOT_FLASH_MMC_DEV=1 + CONFIG_CMD_BOOTZ=y + # CONFIG_CMD_IMLS is not set ++CONFIG_CMD_GPIO=y + CONFIG_CMD_GPT=y + CONFIG_CMD_MMC=y ++CONFIG_CMD_SF=y + CONFIG_CMD_USB=y ++CONFIG_CMD_USB_MASS_STORAGE=y + # CONFIG_CMD_SETEXPR is not set + CONFIG_CMD_TIME=y ++CONFIG_CMD_PMIC=y ++CONFIG_CMD_REGULATOR=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_TPL_OF_CONTROL=y + CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" + CONFIG_TPL_OF_PLATDATA=y +-CONFIG_ENV_IS_IN_MMC=y + CONFIG_NET_RANDOM_ETHADDR=y + CONFIG_TPL_DM=y + CONFIG_REGMAP=y +diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig +index 96aa34b2c0..84b14a0a6a 100644 +--- a/configs/evb-rk3399_defconfig ++++ b/configs/evb-rk3399_defconfig +@@ -10,6 +10,7 @@ CONFIG_DEFAULT_DEVICE_TREE="rk3399-evb" + CONFIG_DEBUG_UART=y + # CONFIG_ANDROID_BOOT_IMAGE is not set + CONFIG_FIT=y ++CONFIG_FIT_VERBOSE=y + CONFIG_SPL_LOAD_FIT=y + CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-rockchip/make_fit_atf.py" + # CONFIG_DISPLAY_CPUINFO is not set +@@ -23,6 +24,7 @@ CONFIG_FASTBOOT_FLASH=y + CONFIG_FASTBOOT_FLASH_MMC_DEV=0 + CONFIG_CMD_BOOTZ=y + # CONFIG_CMD_IMLS is not set ++CONFIG_CMD_GPIO=y + CONFIG_CMD_GPT=y + CONFIG_CMD_MMC=y + CONFIG_CMD_SF=y +@@ -30,6 +32,8 @@ CONFIG_CMD_USB=y + CONFIG_CMD_USB_MASS_STORAGE=y + # CONFIG_CMD_SETEXPR is not set + CONFIG_CMD_TIME=y ++CONFIG_CMD_PMIC=y ++CONFIG_CMD_REGULATOR=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" + CONFIG_NET_RANDOM_ETHADDR=y +@@ -41,6 +45,7 @@ CONFIG_CLK=y + CONFIG_SPL_CLK=y + CONFIG_ROCKCHIP_GPIO=y + CONFIG_SYS_I2C_ROCKCHIP=y ++CONFIG_DM_KEY=y + CONFIG_MISC=y + CONFIG_ROCKCHIP_EFUSE=y + CONFIG_MMC_DW=y +diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig +index 0aa4c903e4..9559fcbaa2 100644 +--- a/configs/miqi-rk3288_defconfig ++++ b/configs/miqi-rk3288_defconfig +@@ -30,7 +30,6 @@ CONFIG_CMD_REGULATOR=y + CONFIG_SPL_PARTITION_UUIDS=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" +-CONFIG_ENV_IS_IN_MMC=y + CONFIG_NET_RANDOM_ETHADDR=y + CONFIG_REGMAP=y + CONFIG_SPL_REGMAP=y +diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig +index a6f8c0cb51..9c4a9f47cf 100644 +--- a/configs/tinker-rk3288_defconfig ++++ b/configs/tinker-rk3288_defconfig +@@ -32,7 +32,6 @@ CONFIG_CMD_REGULATOR=y + CONFIG_SPL_PARTITION_UUIDS=y + CONFIG_SPL_OF_CONTROL=y + CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" +-CONFIG_ENV_IS_IN_MMC=y + CONFIG_REGMAP=y + CONFIG_SPL_REGMAP=y + CONFIG_SYSCON=y +@@ -42,6 +41,7 @@ CONFIG_CLK=y + CONFIG_SPL_CLK=y + CONFIG_ROCKCHIP_GPIO=y + CONFIG_SYS_I2C_ROCKCHIP=y ++CONFIG_DM_KEY=y + CONFIG_MISC=y + CONFIG_ROCKCHIP_EFUSE=y + CONFIG_I2C_EEPROM=y diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0010-rk3288-tinker-enable-emmc.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0010-rk3288-tinker-enable-emmc.patch new file mode 100644 index 0000000000..140e4c1942 --- /dev/null +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0010-rk3288-tinker-enable-emmc.patch @@ -0,0 +1,59 @@ +From a973521ff1cbee88498db1b75ce935fca55642fb Mon Sep 17 00:00:00 2001 +From: Jonas Karlman +Date: Thu, 13 Sep 2018 22:23:48 +0200 +Subject: [PATCH] rk3288-tinker: enable emmc + +--- + arch/arm/dts/rk3288-tinker.dtsi | 13 +++++++++++++ + include/configs/tinker_rk3288.h | 13 ++++--------- + 2 files changed, 17 insertions(+), 9 deletions(-) + +diff --git a/arch/arm/dts/rk3288-tinker.dtsi b/arch/arm/dts/rk3288-tinker.dtsi +index 81f8d5a6c3..93e5dd223b 100644 +--- a/arch/arm/dts/rk3288-tinker.dtsi ++++ b/arch/arm/dts/rk3288-tinker.dtsi +@@ -129,6 +129,19 @@ + cpu0-supply = <&vdd_cpu>; + }; + ++&emmc { ++ bus-width = <8>; ++ cap-mmc-highspeed; ++ disable-wp; ++ mmc-ddr-1_8v; ++ mmc-hs200-1_8v; ++ non-removable; ++ num-slots = <1>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_pwr &emmc_bus8>; ++ status = "okay"; ++}; ++ + &sdmmc { + bus-width = <4>; + cap-mmc-highspeed; +diff --git a/include/configs/tinker_rk3288.h b/include/configs/tinker_rk3288.h +index 58eea3c405..42878ed8fa 100644 +--- a/include/configs/tinker_rk3288.h ++++ b/include/configs/tinker_rk3288.h +@@ -7,16 +7,11 @@ + #ifndef __CONFIG_H + #define __CONFIG_H + +-#define ROCKCHIP_DEVICE_SETTINGS +-#include +- +-#undef BOOT_TARGET_DEVICES ++#define ROCKCHIP_DEVICE_SETTINGS \ ++ "stdout=serial,vidconsole\0" \ ++ "stderr=serial,vidconsole\0" + +-#define BOOT_TARGET_DEVICES(func) \ +- func(MMC, mmc, 1) \ +- func(USB, usb, 0) \ +- func(PXE, pxe, na) \ +- func(DHCP, dchp, na) ++#include + + #define CONFIG_SYS_MMC_ENV_DEV 1 + diff --git a/packages/tools/u-boot/patches/rockchip/u-boot-0011-Revert-rockchip-dts-rk3328-evb-Enable-gmac2io-for-rk.patch b/packages/tools/u-boot/patches/rockchip/u-boot-0011-Revert-rockchip-dts-rk3328-evb-Enable-gmac2io-for-rk.patch new file mode 100644 index 0000000000..8dbefdc6ac --- /dev/null +++ b/packages/tools/u-boot/patches/rockchip/u-boot-0011-Revert-rockchip-dts-rk3328-evb-Enable-gmac2io-for-rk.patch @@ -0,0 +1,68 @@ +From a230a5d8c54457df420907c3c8790ec0fd7004c3 Mon Sep 17 00:00:00 2001 +From: Jonas Karlman +Date: Sun, 16 Sep 2018 11:56:50 +0200 +Subject: [PATCH] Revert "rockchip: dts: rk3328-evb: Enable gmac2io for + rk3328-evb" + +This reverts commit 895e4b943b18d21b2c0c5c24f04bcc626bc3ad91. + +Fixes SDIO issue on RockBox +--- + arch/arm/dts/rk3328-evb.dts | 30 ------------------------------ + 1 file changed, 30 deletions(-) + +diff --git a/arch/arm/dts/rk3328-evb.dts b/arch/arm/dts/rk3328-evb.dts +index 497b040f56..6a5225b48c 100644 +--- a/arch/arm/dts/rk3328-evb.dts ++++ b/arch/arm/dts/rk3328-evb.dts +@@ -17,13 +17,6 @@ + stdout-path = &uart2; + }; + +- gmac_clkin: external-gmac-clock { +- compatible = "fixed-clock"; +- clock-frequency = <125000000>; +- clock-output-names = "gmac_clkin"; +- #clock-cells = <0>; +- }; +- + vcc3v3_sdmmc: sdmmc-pwren { + compatible = "regulator-fixed"; + regulator-name = "vcc3v3"; +@@ -51,13 +44,6 @@ + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + }; +- +- vcc_phy: vcc-phy-regulator { +- compatible = "regulator-fixed"; +- regulator-name = "vcc_phy"; +- regulator-always-on; +- regulator-boot-on; +- }; + }; + + &saradc { +@@ -93,22 +79,6 @@ + status = "okay"; + }; + +-&gmac2io { +- phy-supply = <&vcc_phy>; +- phy-mode = "rgmii"; +- clock_in_out = "input"; +- snps,reset-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>; +- snps,reset-active-low; +- snps,reset-delays-us = <0 10000 50000>; +- assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>; +- assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>; +- pinctrl-names = "default"; +- pinctrl-0 = <&rgmiim1_pins>; +- tx_delay = <0x26>; +- rx_delay = <0x11>; +- status = "okay"; +-}; +- + &u2phy { + status = "okay"; + };