imx: ventana: detect pmic using i2c probe instead of board model
Avoid requiring board-model and probe pmic by its i2c address. This is in preparation for being able to call pmic_setup() from SPL and not need board type. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
This commit is contained in:
parent
2d833c8528
commit
6d38f3a85d
|
@ -759,13 +759,16 @@ void setup_board_gpio(int board, struct ventana_board_info *info)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* setup board specific PMIC */
|
/* setup board specific PMIC */
|
||||||
void setup_pmic(int board)
|
void setup_pmic(void)
|
||||||
{
|
{
|
||||||
struct pmic *p;
|
struct pmic *p;
|
||||||
u32 reg;
|
u32 reg;
|
||||||
|
|
||||||
|
i2c_set_bus_num(CONFIG_I2C_PMIC);
|
||||||
|
|
||||||
/* configure PFUZE100 PMIC */
|
/* configure PFUZE100 PMIC */
|
||||||
if (board == GW54xx || board == GW54proto) {
|
if (!i2c_probe(CONFIG_POWER_PFUZE100_I2C_ADDR)) {
|
||||||
|
debug("probed PFUZE100@0x%x\n", CONFIG_POWER_PFUZE100_I2C_ADDR);
|
||||||
power_pfuze100_init(CONFIG_I2C_PMIC);
|
power_pfuze100_init(CONFIG_I2C_PMIC);
|
||||||
p = pmic_get("PFUZE100");
|
p = pmic_get("PFUZE100");
|
||||||
if (p && !pmic_probe(p)) {
|
if (p && !pmic_probe(p)) {
|
||||||
|
@ -787,7 +790,8 @@ void setup_pmic(int board)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* configure LTC3676 PMIC */
|
/* configure LTC3676 PMIC */
|
||||||
else {
|
else if (!i2c_probe(CONFIG_POWER_LTC3676_I2C_ADDR)) {
|
||||||
|
debug("probed LTC3676@0x%x\n", CONFIG_POWER_LTC3676_I2C_ADDR);
|
||||||
power_ltc3676_init(CONFIG_I2C_PMIC);
|
power_ltc3676_init(CONFIG_I2C_PMIC);
|
||||||
p = pmic_get("LTC3676_PMIC");
|
p = pmic_get("LTC3676_PMIC");
|
||||||
if (p && !pmic_probe(p)) {
|
if (p && !pmic_probe(p)) {
|
||||||
|
|
|
@ -89,7 +89,7 @@ void setup_ventana_i2c(void);
|
||||||
/* configure uart iomux */
|
/* configure uart iomux */
|
||||||
void setup_iomux_uart(void);
|
void setup_iomux_uart(void);
|
||||||
/* conifgure PMIC */
|
/* conifgure PMIC */
|
||||||
void setup_pmic(int board);
|
void setup_pmic(void);
|
||||||
/* configure gpio iomux/defaults */
|
/* configure gpio iomux/defaults */
|
||||||
void setup_iomux_gpio(int board, struct ventana_board_info *);
|
void setup_iomux_gpio(int board, struct ventana_board_info *);
|
||||||
/* late setup of GPIO (configuration per baseboard and env) */
|
/* late setup of GPIO (configuration per baseboard and env) */
|
||||||
|
|
|
@ -468,7 +468,7 @@ static void setup_display(void)
|
||||||
/* setup board specific PMIC */
|
/* setup board specific PMIC */
|
||||||
int power_init_board(void)
|
int power_init_board(void)
|
||||||
{
|
{
|
||||||
setup_pmic(board_type);
|
setup_pmic();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue