xref: /openbmc/u-boot/drivers/power/power_dialog.c (revision e8f80a5a)
1*83d290c5STom Rini // SPDX-License-Identifier: GPL-2.0+
2316a51beSŁukasz Majewski /*
3316a51beSŁukasz Majewski  *  Copyright (C) 2011 Samsung Electronics
4316a51beSŁukasz Majewski  *  Lukasz Majewski <l.majewski@samsung.com>
5316a51beSŁukasz Majewski  */
6316a51beSŁukasz Majewski 
7316a51beSŁukasz Majewski #include <common.h>
8316a51beSŁukasz Majewski #include <power/pmic.h>
9316a51beSŁukasz Majewski #include <dialog_pmic.h>
10316a51beSŁukasz Majewski #include <errno.h>
11316a51beSŁukasz Majewski 
pmic_dialog_init(unsigned char bus)12316a51beSŁukasz Majewski int pmic_dialog_init(unsigned char bus)
13316a51beSŁukasz Majewski {
14316a51beSŁukasz Majewski 	static const char name[] = "DIALOG_PMIC";
15316a51beSŁukasz Majewski 	struct pmic *p = pmic_alloc();
16316a51beSŁukasz Majewski 
17316a51beSŁukasz Majewski 	if (!p) {
18316a51beSŁukasz Majewski 		printf("%s: POWER allocation error!\n", __func__);
19316a51beSŁukasz Majewski 		return -ENOMEM;
20316a51beSŁukasz Majewski 	}
21316a51beSŁukasz Majewski 
22316a51beSŁukasz Majewski 	p->name = name;
23316a51beSŁukasz Majewski 	p->number_of_regs = DIALOG_NUM_OF_REGS;
24316a51beSŁukasz Majewski 
25316a51beSŁukasz Majewski 	p->interface = PMIC_I2C;
26316a51beSŁukasz Majewski 	p->hw.i2c.addr = CONFIG_SYS_DIALOG_PMIC_I2C_ADDR;
27316a51beSŁukasz Majewski 	p->hw.i2c.tx_num = 1;
28316a51beSŁukasz Majewski 	p->bus = bus;
29316a51beSŁukasz Majewski 
30316a51beSŁukasz Majewski 	return 0;
31316a51beSŁukasz Majewski }
32