aboutsummaryrefslogtreecommitdiff
path: root/board/tqc/tqma6/tqma6.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/tqc/tqma6/tqma6.c')
-rw-r--r--board/tqc/tqma6/tqma6.c31
1 files changed, 20 insertions, 11 deletions
diff --git a/board/tqc/tqma6/tqma6.c b/board/tqc/tqma6/tqma6.c
index c8fc95d52bc..fdb0fa11b00 100644
--- a/board/tqc/tqma6/tqma6.c
+++ b/board/tqc/tqma6/tqma6.c
@@ -47,7 +47,7 @@ DECLARE_GLOBAL_DATA_PTR;
PAD_CTL_DSE_80ohm | PAD_CTL_SRE_FAST | PAD_CTL_HYS)
#define I2C_PAD_CTRL (PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED | \
- PAD_CTL_DSE_40ohm | PAD_CTL_HYS | \
+ PAD_CTL_DSE_80ohm | PAD_CTL_HYS | \
PAD_CTL_ODE | PAD_CTL_SRE_FAST)
int dram_init(void)
@@ -232,25 +232,27 @@ static const char *tqma6_get_boardname(void)
};
}
-int board_late_init(void)
+/* setup board specific PMIC */
+int power_init_board(void)
{
struct pmic *p;
- u32 reg;
-
- setenv("board_name", tqma6_get_boardname());
+ u32 reg, rev;
- /*
- * configure PFUZE100 PMIC:
- * TODO: should go to power_init_board if bus switching is
- * fixed in generic power code
- */
power_pfuze100_init(TQMA6_PFUZE100_I2C_BUS);
p = pmic_get("PFUZE100");
if (p && !pmic_probe(p)) {
pmic_reg_read(p, PFUZE100_DEVICEID, &reg);
- printf("PMIC: PFUZE100 ID=0x%02x\n", reg);
+ pmic_reg_read(p, PFUZE100_REVID, &rev);
+ printf("PMIC: PFUZE100 ID=0x%02x REV=0x%02x\n", reg, rev);
}
+ return 0;
+}
+
+int board_late_init(void)
+{
+ setenv("board_name", tqma6_get_boardname());
+
tqma6_bb_board_late_init();
return 0;
@@ -267,8 +269,15 @@ int checkboard(void)
* Device Tree Support
*/
#if defined(CONFIG_OF_BOARD_SETUP) && defined(CONFIG_OF_LIBFDT)
+#define MODELSTRLEN 32u
int ft_board_setup(void *blob, bd_t *bd)
{
+ char modelstr[MODELSTRLEN];
+
+ snprintf(modelstr, MODELSTRLEN, "TQ %s on %s", tqma6_get_boardname(),
+ tqma6_bb_get_boardname());
+ do_fixup_by_path_string(blob, "/", "model", modelstr);
+ fdt_fixup_memory(blob, (u64)PHYS_SDRAM, (u64)gd->ram_size);
/* bring in eMMC dsr settings */
do_fixup_by_path_u32(blob,
"/soc/aips-bus@02100000/usdhc@02198000",