mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 22:51:37 +00:00
power: pmic: Add support for MAX77696 PMIC
Add support for MAX77696 PMIC. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
This commit is contained in:
parent
6918f974cf
commit
a643acd44c
3 changed files with 93 additions and 0 deletions
|
@ -9,6 +9,7 @@ obj-$(CONFIG_DM_PMIC) += pmic-uclass.o
|
||||||
obj-$(CONFIG_DM_PMIC_MAX77686) += max77686.o
|
obj-$(CONFIG_DM_PMIC_MAX77686) += max77686.o
|
||||||
obj-$(CONFIG_DM_PMIC_SANDBOX) += sandbox.o i2c_pmic_emul.o
|
obj-$(CONFIG_DM_PMIC_SANDBOX) += sandbox.o i2c_pmic_emul.o
|
||||||
obj-$(CONFIG_POWER_LTC3676) += pmic_ltc3676.o
|
obj-$(CONFIG_POWER_LTC3676) += pmic_ltc3676.o
|
||||||
|
obj-$(CONFIG_POWER_MAX77696) += pmic_max77696.o
|
||||||
obj-$(CONFIG_POWER_MAX8998) += pmic_max8998.o
|
obj-$(CONFIG_POWER_MAX8998) += pmic_max8998.o
|
||||||
obj-$(CONFIG_POWER_MAX8997) += pmic_max8997.o
|
obj-$(CONFIG_POWER_MAX8997) += pmic_max8997.o
|
||||||
obj-$(CONFIG_POWER_MUIC_MAX8997) += muic_max8997.o
|
obj-$(CONFIG_POWER_MUIC_MAX8997) += muic_max8997.o
|
||||||
|
|
32
drivers/power/pmic/pmic_max77696.c
Normal file
32
drivers/power/pmic/pmic_max77696.c
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2015 Freescale Semiconductor, Inc.
|
||||||
|
* Fabio Estevam <fabio.estevam@freescale.com>
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0+
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <i2c.h>
|
||||||
|
#include <power/pmic.h>
|
||||||
|
#include <power/max77696_pmic.h>
|
||||||
|
|
||||||
|
int power_max77696_init(unsigned char bus)
|
||||||
|
{
|
||||||
|
static const char name[] = "MAX77696";
|
||||||
|
struct pmic *p = pmic_alloc();
|
||||||
|
|
||||||
|
if (!p) {
|
||||||
|
printf("%s: POWER allocation error!\n", __func__);
|
||||||
|
return -ENOMEM;
|
||||||
|
}
|
||||||
|
|
||||||
|
p->name = name;
|
||||||
|
p->interface = PMIC_I2C;
|
||||||
|
p->number_of_regs = PMIC_NUM_OF_REGS;
|
||||||
|
p->hw.i2c.addr = CONFIG_POWER_MAX77696_I2C_ADDR;
|
||||||
|
p->hw.i2c.tx_num = 1;
|
||||||
|
p->bus = bus;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
60
include/power/max77696_pmic.h
Normal file
60
include/power/max77696_pmic.h
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2015 Freescale Semiconductor, Inc.
|
||||||
|
* Fabio Estevam <fabio.estevam@freescale.com>
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0+
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __MAX77696_PMIC_H__
|
||||||
|
#define __MAX77696_PMIC_H__
|
||||||
|
|
||||||
|
#define CONFIG_POWER_MAX77696_I2C_ADDR 0x3C
|
||||||
|
|
||||||
|
enum {
|
||||||
|
L01_CNFG1 = 0x43,
|
||||||
|
L01_CNFG2,
|
||||||
|
L02_CNFG1,
|
||||||
|
L02_CNFG2,
|
||||||
|
L03_CNFG1,
|
||||||
|
L03_CNFG2,
|
||||||
|
L04_CNFG1,
|
||||||
|
L04_CNFG2,
|
||||||
|
L05_CNFG1,
|
||||||
|
L05_CNFG2,
|
||||||
|
L06_CNFG1,
|
||||||
|
L06_CNFG2,
|
||||||
|
L07_CNFG1,
|
||||||
|
L07_CNFG2,
|
||||||
|
L08_CNFG1,
|
||||||
|
L08_CNFG2,
|
||||||
|
L09_CNFG1,
|
||||||
|
L09_CNFG2,
|
||||||
|
L10_CNFG1,
|
||||||
|
L10_CNFG2,
|
||||||
|
LDO_INT1,
|
||||||
|
LDO_INT2,
|
||||||
|
LDO_INT1M,
|
||||||
|
LDO_INT2M,
|
||||||
|
LDO_CNFG3,
|
||||||
|
SW1_CNTRL,
|
||||||
|
SW2_CNTRL,
|
||||||
|
SW3_CNTRL,
|
||||||
|
SW4_CNTRL,
|
||||||
|
EPDCNFG,
|
||||||
|
EPDINTS,
|
||||||
|
EPDINT,
|
||||||
|
EPDINTM,
|
||||||
|
EPDVCOM,
|
||||||
|
EPDVEE,
|
||||||
|
EPDVNEG,
|
||||||
|
EPDVPOS,
|
||||||
|
EPDVDDH,
|
||||||
|
EPDSEQ,
|
||||||
|
EPDOKINTS,
|
||||||
|
CID = 0x9c,
|
||||||
|
PMIC_NUM_OF_REGS,
|
||||||
|
};
|
||||||
|
|
||||||
|
int power_max77696_init(unsigned char bus);
|
||||||
|
|
||||||
|
#endif
|
Loading…
Add table
Reference in a new issue