From 25aff586f07a63b98f2192b7b8784553c09619cb Mon Sep 17 00:00:00 2001 From: Mattijs Korpershoek Date: Wed, 12 Jan 2022 09:40:23 +0100 Subject: [PATCH 1/3] configs: amlogic: Disable CONFIG_NET_RANDOM_ETHADDR for android The Khadas vim3 and vim3l defconfigs introduced with: * f89b90d2d9 ("configs: add khadas-vim3{l}_android for AOSP support") * 425f06f86e ("configs: prepare khadas-vim3{l}_ab_android for AOSP support") were based on an outdated defconfig prior to the ede1f4f297 ("configs: amlogic: Disable CONFIG_NET_RANDOM_ETHADDR when unnecessary") cleanup. Disable CONFIG_NET_RANDOM_ETHADDR for the android configs as well to stay consistent. Signed-off-by: Mattijs Korpershoek Link: https://lore.kernel.org/r/20220112084023.2858375-1-mkorpershoek@baylibre.com Signed-off-by: Neil Armstrong --- configs/khadas-vim3_android_ab_defconfig | 1 - configs/khadas-vim3_android_defconfig | 1 - configs/khadas-vim3l_android_ab_defconfig | 1 - configs/khadas-vim3l_android_defconfig | 1 - 4 files changed, 4 deletions(-) diff --git a/configs/khadas-vim3_android_ab_defconfig b/configs/khadas-vim3_android_ab_defconfig index 88325c37db..c5aaaf3ce7 100644 --- a/configs/khadas-vim3_android_ab_defconfig +++ b/configs/khadas-vim3_android_ab_defconfig @@ -39,7 +39,6 @@ CONFIG_CMD_REGULATOR=y CONFIG_CMD_AVB=y CONFIG_OF_CONTROL=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y -CONFIG_NET_RANDOM_ETHADDR=y CONFIG_ADC=y CONFIG_SARADC_MESON=y CONFIG_BUTTON=y diff --git a/configs/khadas-vim3_android_defconfig b/configs/khadas-vim3_android_defconfig index 9305a54b1b..f0b2c205a7 100644 --- a/configs/khadas-vim3_android_defconfig +++ b/configs/khadas-vim3_android_defconfig @@ -37,7 +37,6 @@ CONFIG_CMD_REGULATOR=y CONFIG_CMD_AVB=y CONFIG_OF_CONTROL=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y -CONFIG_NET_RANDOM_ETHADDR=y CONFIG_ADC=y CONFIG_SARADC_MESON=y CONFIG_BUTTON=y diff --git a/configs/khadas-vim3l_android_ab_defconfig b/configs/khadas-vim3l_android_ab_defconfig index 608b54dca2..3401c51721 100644 --- a/configs/khadas-vim3l_android_ab_defconfig +++ b/configs/khadas-vim3l_android_ab_defconfig @@ -39,7 +39,6 @@ CONFIG_CMD_REGULATOR=y CONFIG_CMD_AVB=y CONFIG_OF_CONTROL=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y -CONFIG_NET_RANDOM_ETHADDR=y CONFIG_ADC=y CONFIG_SARADC_MESON=y CONFIG_BUTTON=y diff --git a/configs/khadas-vim3l_android_defconfig b/configs/khadas-vim3l_android_defconfig index 5eed79b263..429db2b344 100644 --- a/configs/khadas-vim3l_android_defconfig +++ b/configs/khadas-vim3l_android_defconfig @@ -37,7 +37,6 @@ CONFIG_CMD_REGULATOR=y CONFIG_CMD_AVB=y CONFIG_OF_CONTROL=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y -CONFIG_NET_RANDOM_ETHADDR=y CONFIG_ADC=y CONFIG_SARADC_MESON=y CONFIG_BUTTON=y From b749d5ecdc066c70d20dc427de1a34d43aad557a Mon Sep 17 00:00:00 2001 From: Mattijs Korpershoek Date: Fri, 7 Jan 2022 17:39:13 +0100 Subject: [PATCH 2/3] configs: meson64_android: define raw parts for bootloader Per the android documentation[1]: - the mmc2boot0 partition should be labeled "bootloader". - the mmc2boot1 partition should be labeled "bootenv". Also the u-boot documentation[2] refers to a BOOT1_OFFSET of 1 block. Define 2 raw partitions to store the bootloaders and the bootenv. [1] https://source.android.com/setup/build/devices#vim3-fastboot [2] https://u-boot.readthedocs.io/en/latest/board/amlogic/khadas-vim3l.html Suggested-by: Gary Bisson Signed-off-by: Mattijs Korpershoek Link: https://lore.kernel.org/r/20220107163913.3393563-1-mkorpershoek@baylibre.com Signed-off-by: Neil Armstrong --- include/configs/meson64_android.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/configs/meson64_android.h b/include/configs/meson64_android.h index 0303d187de..1266851196 100644 --- a/include/configs/meson64_android.h +++ b/include/configs/meson64_android.h @@ -283,6 +283,8 @@ EXTRA_ANDROID_ENV_SETTINGS \ "partitions=" PARTS_DEFAULT "\0" \ "mmcdev=2\0" \ + "fastboot_raw_partition_bootloader=0x1 0xfff mmcpart 1\0" \ + "fastboot_raw_partition_bootenv=0x0 0xfff mmcpart 2\0" \ ANDROIDBOOT_GET_CURRENT_SLOT_CMD \ AVB_VERIFY_CMD \ "force_avb=0\0" \ From 09c2debab70271fdb3b1ff89e0e7d186502c548d Mon Sep 17 00:00:00 2001 From: Mattijs Korpershoek Date: Wed, 19 Jan 2022 15:24:00 +0100 Subject: [PATCH 3/3] board: amlogic: vim3: configure serial# from ethaddr The Khadas VIM3 and VIM3L boards, which are supported in Android via Yukawa [1] need a serial number for usb/fastboot enumeration. Whenever the environment does not provide a serial#, use the eth mac address as serial#. [1] https://source.android.com/setup/build/devices#vim3_and_vim3l_boards Signed-off-by: Mattijs Korpershoek Reviewed-by: Neil Armstrong Signed-off-by: Neil Armstrong Link: https://lore.kernel.org/r/20220119142400.127342-1-mkorpershoek@baylibre.com --- board/amlogic/vim3/vim3.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/board/amlogic/vim3/vim3.c b/board/amlogic/vim3/vim3.c index 5d9ac6458d..fcd60ab1e0 100644 --- a/board/amlogic/vim3/vim3.c +++ b/board/amlogic/vim3/vim3.c @@ -153,6 +153,7 @@ int misc_init_r(void) { u8 mac_addr[MAC_ADDR_LEN]; char efuse_mac_addr[EFUSE_MAC_SIZE], tmp[3]; + char serial_string[EFUSE_MAC_SIZE + 1]; ssize_t len; if (!eth_env_get_enetaddr("ethaddr", mac_addr)) { @@ -177,5 +178,13 @@ int misc_init_r(void) eth_env_get_enetaddr("ethaddr", mac_addr); } + if (!env_get("serial#")) { + eth_env_get_enetaddr("ethaddr", mac_addr); + sprintf(serial_string, "%02X%02X%02X%02X%02X%02X", + mac_addr[0], mac_addr[1], mac_addr[2], + mac_addr[3], mac_addr[4], mac_addr[5]); + env_set("serial#", serial_string); + } + return 0; }