xref: /rk3399_rockchip-uboot/drivers/power/pmic/pmic_max8998.c (revision 326ea986ac150acdc7656d57fca647db80b50158)
1e0a0cbf2SŁukasz Majewski /*
2e0a0cbf2SŁukasz Majewski  *  Copyright (C) 2011 Samsung Electronics
3e0a0cbf2SŁukasz Majewski  *  Lukasz Majewski <l.majewski@samsung.com>
4e0a0cbf2SŁukasz Majewski  *
5*1a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
6e0a0cbf2SŁukasz Majewski  */
7e0a0cbf2SŁukasz Majewski 
8e0a0cbf2SŁukasz Majewski #include <common.h>
9e0a0cbf2SŁukasz Majewski #include <power/pmic.h>
10e0a0cbf2SŁukasz Majewski #include <power/max8998_pmic.h>
11e0a0cbf2SŁukasz Majewski #include <errno.h>
12e0a0cbf2SŁukasz Majewski 
pmic_init(unsigned char bus)13e0a0cbf2SŁukasz Majewski int pmic_init(unsigned char bus)
14e0a0cbf2SŁukasz Majewski {
15e0a0cbf2SŁukasz Majewski 	static const char name[] = "MAX8998_PMIC";
16e0a0cbf2SŁukasz Majewski 	struct pmic *p = pmic_alloc();
17e0a0cbf2SŁukasz Majewski 
18e0a0cbf2SŁukasz Majewski 	if (!p) {
19e0a0cbf2SŁukasz Majewski 		printf("%s: POWER allocation error!\n", __func__);
20e0a0cbf2SŁukasz Majewski 		return -ENOMEM;
21e0a0cbf2SŁukasz Majewski 	}
22e0a0cbf2SŁukasz Majewski 
23e0a0cbf2SŁukasz Majewski 	puts("Board PMIC init\n");
24e0a0cbf2SŁukasz Majewski 
25e0a0cbf2SŁukasz Majewski 	p->name = name;
26e0a0cbf2SŁukasz Majewski 	p->interface = PMIC_I2C;
27e0a0cbf2SŁukasz Majewski 	p->number_of_regs = PMIC_NUM_OF_REGS;
28e0a0cbf2SŁukasz Majewski 	p->hw.i2c.addr = MAX8998_I2C_ADDR;
29e0a0cbf2SŁukasz Majewski 	p->hw.i2c.tx_num = 1;
30e0a0cbf2SŁukasz Majewski 	p->bus = bus;
31e0a0cbf2SŁukasz Majewski 
32e0a0cbf2SŁukasz Majewski 	return 0;
33e0a0cbf2SŁukasz Majewski }
34