int power_init_board(void) { struct pmic *p; int ret; unsigned int reg, rev_id; ret = power_pfuze3000_init(I2C_PMIC); if (ret) return ret; p = pmic_get("PFUZE3000"); ret = pmic_probe(p); if (ret) return ret; pmic_reg_read(p, PFUZE3000_DEVICEID, ®); pmic_reg_read(p, PFUZE3000_REVID, &rev_id); printf("PMIC: PFUZE3000 DEV_ID=0x%x REV_ID=0x%x\n", reg, rev_id); /* disable Low Power Mode during standby mode */ pmic_reg_read(p, PFUZE3000_LDOGCTL, ®); reg |= 0x1; pmic_reg_write(p, PFUZE3000_LDOGCTL, reg); return 0; }
int power_init_board(void) { if (is_mx6ul_9x9_evk()) { struct pmic *pfuze; int ret; unsigned int reg, rev_id; ret = power_pfuze3000_init(I2C_PMIC); if (ret) return ret; pfuze = pmic_get("PFUZE3000"); ret = pmic_probe(pfuze); if (ret) return ret; pmic_reg_read(pfuze, PFUZE3000_DEVICEID, ®); pmic_reg_read(pfuze, PFUZE3000_REVID, &rev_id); printf("PMIC: PFUZE3000 DEV_ID=0x%x REV_ID=0x%x\n", reg, rev_id); /* disable Low Power Mode during standby mode */ pmic_reg_read(pfuze, PFUZE3000_LDOGCTL, ®); reg |= 0x1; pmic_reg_write(pfuze, PFUZE3000_LDOGCTL, reg); /* SW1B step ramp up time from 2us to 4us/25mV */ reg = 0x40; pmic_reg_write(pfuze, PFUZE3000_SW1BCONF, reg); /* SW1B mode to APS/PFM */ reg = 0xc; pmic_reg_write(pfuze, PFUZE3000_SW1BMODE, reg); /* SW1B standby voltage set to 0.975V */ reg = 0xb; pmic_reg_write(pfuze, PFUZE3000_SW1BSTBY, reg); } return 0; }