mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-14 00:47:26 +00:00
3f6e4ec7c3
All devices based on ST-Ericsson Ux500 use a PMIC similar to AB8500 (Analog Baseband). There is AB8500, AB8505, AB9540 and AB8540 although in practice only AB8500 and AB8505 are relevant since the platforms with AB9540 and AB8540 were cancelled and never used in production. In general, the AB8500 PMIC uses I2C as control interface, where the different register banks are represented as separate I2C devices. However, in practice AB8500 is always connected to a special I2C bus on the DB8500 SoC that is controlled by the power/reset/clock management unit (PRCMU) firmware. Add a simple driver that allows reading/writing registers of the AB8500 PMIC. The driver directly accesses registers from the PRCMU parent device (represented by syscon in U-Boot). Abstracting it further (e.g. with the i2c uclass) would not provide any advantage because the PRCMU I2C bus is always just connected to AB8500 and vice-versa. The ab8500.h header is mostly taken as-is from Linux (with some minor adjustments) to allow using similar code in both Linux and U-Boot. Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
44 lines
1.8 KiB
Makefile
44 lines
1.8 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
# Copyright (C) 2012 Samsung Electronics
|
|
# Lukasz Majewski <l.majewski@samsung.com>
|
|
|
|
obj-$(CONFIG_DM_PMIC) += pmic-uclass.o
|
|
obj-$(CONFIG_DM_PMIC_FAN53555) += fan53555.o
|
|
obj-$(CONFIG_$(SPL_)DM_PMIC_DA9063) += da9063.o
|
|
obj-$(CONFIG_DM_PMIC_MAX77686) += max77686.o
|
|
obj-$(CONFIG_DM_PMIC_MAX8998) += max8998.o
|
|
obj-$(CONFIG_DM_PMIC_MC34708) += mc34708.o
|
|
obj-$(CONFIG_$(SPL_)DM_PMIC_BD71837) += bd71837.o
|
|
obj-$(CONFIG_$(SPL_)DM_PMIC_MP5416) += mp5416.o
|
|
obj-$(CONFIG_$(SPL_)DM_PMIC_PFUZE100) += pfuze100.o
|
|
obj-$(CONFIG_$(SPL_)DM_PMIC_PCA9450) += pca9450.o
|
|
obj-$(CONFIG_PMIC_S2MPS11) += s2mps11.o
|
|
obj-$(CONFIG_DM_PMIC_SANDBOX) += sandbox.o i2c_pmic_emul.o
|
|
obj-$(CONFIG_PMIC_AB8500) += ab8500.o
|
|
obj-$(CONFIG_PMIC_ACT8846) += act8846.o
|
|
obj-$(CONFIG_PMIC_AS3722) += as3722.o as3722_gpio.o
|
|
obj-$(CONFIG_PMIC_MAX8997) += max8997.o
|
|
obj-$(CONFIG_PMIC_PM8916) += pm8916.o
|
|
obj-$(CONFIG_PMIC_RK8XX) += rk8xx.o
|
|
obj-$(CONFIG_PMIC_RN5T567) += rn5t567.o
|
|
obj-$(CONFIG_PMIC_TPS65090) += tps65090.o
|
|
obj-$(CONFIG_PMIC_S5M8767) += s5m8767.o
|
|
obj-$(CONFIG_DM_PMIC_TPS65910) += pmic_tps65910_dm.o
|
|
obj-$(CONFIG_$(SPL_)PMIC_PALMAS) += palmas.o
|
|
obj-$(CONFIG_$(SPL_)PMIC_LP873X) += lp873x.o
|
|
obj-$(CONFIG_$(SPL_)PMIC_LP87565) += lp87565.o
|
|
obj-$(CONFIG_PMIC_STPMIC1) += stpmic1.o
|
|
|
|
obj-$(CONFIG_POWER_LTC3676) += pmic_ltc3676.o
|
|
obj-$(CONFIG_POWER_MUIC_MAX8997) += muic_max8997.o
|
|
obj-$(CONFIG_POWER_PCA9450) += pmic_pca9450.o
|
|
obj-$(CONFIG_POWER_PFUZE100) += pmic_pfuze100.o
|
|
obj-$(CONFIG_POWER_PFUZE3000) += pmic_pfuze3000.o
|
|
obj-$(CONFIG_POWER_TPS65217) += pmic_tps65217.o
|
|
obj-$(CONFIG_POWER_TPS65218) += pmic_tps62362.o
|
|
obj-$(CONFIG_POWER_TPS65218) += pmic_tps65218.o
|
|
obj-$(CONFIG_POWER_TPS65910) += pmic_tps65910.o
|
|
obj-$(CONFIG_POWER_HI6553) += pmic_hi6553.o
|
|
obj-$(CONFIG_POWER_MC34VR500) += pmic_mc34vr500.o
|
|
obj-$(CONFIG_PMIC_TPS65941) += tps65941.o
|