diff options
author | sanshan zhang <sanshan.zhang@nxp.com> | 2017-06-08 10:11:09 +0800 |
---|---|---|
committer | Jason Liu <jason.hui.liu@nxp.com> | 2017-11-03 02:36:53 +0800 |
commit | 06b2f0cc23732e3e3391bf7fc4cf5e35c512bb81 (patch) | |
tree | e224a7973a0d55ba43ebd44496bdfb6a5b4da181 | |
parent | 092df6b3f20b5f7ab5ce197378cfff02ce16b33f (diff) |
MA-9702-1 [Android] arm2-8qm: bring up android in v2017.
add api get_board_serial and is_recovery_key_pressing for android.
1. read unique num from fuse through api sc_misc_otp_fuse_read exported
by sc firmware.
2. many register have not added in reg.h
set is_recovery_key_pressing into TODO list.
Change-Id: I2175e3a379d979ed473a4494695483dbf579bb2d
Signed-off-by: sanshan zhang <sanshan.zhang@nxp.com>
-rw-r--r-- | arch/arm/cpu/armv8/imx8/cpu.c | 31 | ||||
-rw-r--r-- | board/freescale/imx8qm_arm2/imx8qm_arm2.c | 8 |
2 files changed, 39 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv8/imx8/cpu.c b/arch/arm/cpu/armv8/imx8/cpu.c index f0877b5c493..ead175f67dc 100644 --- a/arch/arm/cpu/armv8/imx8/cpu.c +++ b/arch/arm/cpu/armv8/imx8/cpu.c @@ -690,6 +690,37 @@ int print_bootinfo(void) return 0; } +#ifdef CONFIG_SERIAL_TAG +#define FUSE_UNIQUE_ID_WORD0 16 +#define FUSE_UNIQUE_ID_WORD1 17 +void get_board_serial(struct tag_serialnr *serialnr) +{ + sc_err_t err; + sc_ipc_t ipc; + uint32_t val1 = 0, val2 = 0; + uint32_t word1, word2; + + ipc = gd->arch.ipc_channel_handle; + + word1 = FUSE_UNIQUE_ID_WORD0; + word2 = FUSE_UNIQUE_ID_WORD1; + + err = sc_misc_otp_fuse_read(ipc, word1, &val1); + if (err != SC_ERR_NONE) { + printf("%s fuse %d read error: %d\n", __func__,word1, err); + return; + } + + err = sc_misc_otp_fuse_read(ipc, word2, &val2); + if (err != SC_ERR_NONE) { + printf("%s fuse %d read error: %d\n", __func__, word2, err); + return; + } + serialnr->low = val1; + serialnr->high = val2; +} +#endif /*CONFIG_SERIAL_TAG*/ + #ifdef CONFIG_ENV_IS_IN_MMC __weak int board_mmc_get_env_dev(int devno) { diff --git a/board/freescale/imx8qm_arm2/imx8qm_arm2.c b/board/freescale/imx8qm_arm2/imx8qm_arm2.c index aff12d9f44c..c9de38bd527 100644 --- a/board/freescale/imx8qm_arm2/imx8qm_arm2.c +++ b/board/freescale/imx8qm_arm2/imx8qm_arm2.c @@ -758,3 +758,11 @@ int board_late_init(void) return 0; } +#ifdef CONFIG_FSL_FASTBOOT +#ifdef CONFIG_ANDROID_RECOVERY +int is_recovery_key_pressing(void) +{ + return 0; /*TODO*/ +} +#endif /*CONFIG_ANDROID_RECOVERY*/ +#endif /*CONFIG_FSL_FASTBOOT*/ |