diff options
author | Ying Zhang <b40530@freescale.com> | 2016-01-22 04:15:13 (GMT) |
---|---|---|
committer | York Sun <york.sun@nxp.com> | 2016-01-25 20:38:05 (GMT) |
commit | 2f66a828f7621958b6925fc763380fa87be55ee6 (patch) | |
tree | bbeb74ecf4f687d92def5b24c02c49373f9b016a /board/freescale | |
parent | cabe4d2f1970eae618ffac4262b61460b9ad3097 (diff) | |
download | u-boot-2f66a828f7621958b6925fc763380fa87be55ee6.tar.xz |
powerpc/board/t4240rdb: Enable VID support
The fuse status register provides the values from on-chip
voltage ID efuses programmed at the factory. These values
define the voltage requirements for the chip. u-boot reads
FUSESR and translates the values into the appropriate
commands to set the voltage output value of an external
voltage regulator.
Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <york.sun@nxp.com>
Diffstat (limited to 'board/freescale')
-rw-r--r-- | board/freescale/common/vid.c | 2 | ||||
-rw-r--r-- | board/freescale/t4rdb/t4240rdb.c | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/board/freescale/common/vid.c b/board/freescale/common/vid.c index 1ea1b88..1bd65a8 100644 --- a/board/freescale/common/vid.c +++ b/board/freescale/common/vid.c @@ -42,7 +42,7 @@ int __weak board_vdd_drop_compensation(void) * The IR chip can show up under the following addresses: * 0x08 (Verified on T1040RDB-PA,T4240RDB-PB,X-T4240RDB-16GPA) * 0x09 (Verified on T1040RDB-PA) - * 0x38 (Verified on T2080QDS, T2081QDS) + * 0x38 (Verified on T2080QDS, T2081QDS, T4240RDB) */ static int find_ir_chip_on_i2c(void) { diff --git a/board/freescale/t4rdb/t4240rdb.c b/board/freescale/t4rdb/t4240rdb.c index 4f0bbed..406fb13 100644 --- a/board/freescale/t4rdb/t4240rdb.c +++ b/board/freescale/t4rdb/t4240rdb.c @@ -20,6 +20,7 @@ #include "t4rdb.h" #include "cpld.h" +#include "../common/vid.h" DECLARE_GLOBAL_DATA_PTR; @@ -74,6 +75,13 @@ int board_early_init_r(void) MAS3_SX|MAS3_SW|MAS3_SR, MAS2_I|MAS2_G, 0, flash_esel, BOOKE_PAGESZ_256M, 1); + /* + * Adjust core voltage according to voltage ID + * This function changes I2C mux to channel 2. + */ + if (adjust_vdd(0)) + printf("Warning: Adjusting core voltage failed.\n"); + return 0; } |