/linux/drivers/mfd/ |
H A D | max8998-irq.c | 3 // Interrupt controller support for MAX8998 12 #include <linux/mfd/max8998-private.h> 95 irq_to_max8998_irq(struct max8998_dev *max8998, struct irq_data *data) in irq_to_max8998_irq() argument 102 struct max8998_dev *max8998 = irq_data_get_irq_chip_data(data); in max8998_irq_lock() local 104 mutex_lock(&max8998->irqlock); in max8998_irq_lock() 109 struct max8998_dev *max8998 = irq_data_get_irq_chip_data(data); in max8998_irq_sync_unlock() local 112 for (i = 0; i < ARRAY_SIZE(max8998->irq_masks_cur); i++) { in max8998_irq_sync_unlock() 117 if (max8998->irq_masks_cur[i] != max8998->irq_masks_cache[i]) { in max8998_irq_sync_unlock() 118 max8998->irq_masks_cache[i] = max8998->irq_masks_cur[i]; in max8998_irq_sync_unlock() 119 max8998_write_reg(max8998->i2c, MAX8998_REG_IRQM1 + i, in max8998_irq_sync_unlock() [all …]
|
H A D | max8998.c | 3 // max8998.c - mfd core driver for the Maxim 8998 19 #include <linux/mfd/max8998.h> 20 #include <linux/mfd/max8998-private.h> 26 .name = "max8998-pmic", 28 .name = "max8998-rtc", 30 .name = "max8998-battery", 44 struct max8998_dev *max8998 = i2c_get_clientdata(i2c); in max8998_read_reg() local 47 mutex_lock(&max8998->iolock); in max8998_read_reg() 49 mutex_unlock(&max8998->iolock); in max8998_read_reg() 61 struct max8998_dev *max8998 = i2c_get_clientdata(i2c); in max8998_bulk_read() local [all …]
|
H A D | Makefile | 177 obj-$(CONFIG_MFD_MAX8998) += max8998.o max8998-irq.o
|
H A D | max8997-irq.c | 8 // This driver is based on max8998-irq.c
|
H A D | max8997.c | 8 // This driver is based on max8998.c
|
H A D | Kconfig | 983 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support" 988 Say yes here to add support for Maxim Semiconductor MAX8998 and
|
/linux/drivers/regulator/ |
H A D | max8998.c | 3 // max8998.c - Voltage regulator driver for the Maxim 8998 22 #include <linux/mfd/max8998.h> 23 #include <linux/mfd/max8998-private.h> 86 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_ldo_is_enabled() local 87 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_ldo_is_enabled() 109 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_ldo_enable() local 110 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_ldo_enable() 122 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_ldo_disable() local 123 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_ldo_disable() 137 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_get_voltage_register() local [all …]
|
H A D | Makefile | 87 obj-$(CONFIG_REGULATOR_MAX8998) += max8998.o
|
H A D | max8997-regulator.c | 8 // This driver is based on max8998.c
|
/linux/drivers/power/supply/ |
H A D | max8998_charger.c | 14 #include <linux/mfd/max8998.h> 15 #include <linux/mfd/max8998-private.h> 34 struct max8998_battery_data *max8998 = power_supply_get_drvdata(psy); in max8998_battery_get_property() local 35 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_battery_get_property() 96 struct max8998_battery_data *max8998; in max8998_battery_probe() local 105 max8998 = devm_kzalloc(&pdev->dev, sizeof(struct max8998_battery_data), in max8998_battery_probe() 107 if (!max8998) in max8998_battery_probe() 110 max8998->dev = &pdev->dev; in max8998_battery_probe() 111 max8998->iodev = iodev; in max8998_battery_probe() 112 platform_set_drvdata(pdev, max8998); in max8998_battery_probe() [all …]
|
H A D | Kconfig | 607 tristate "Maxim MAX8998/LP3974 PMIC battery charger driver" 611 platform data of MAX8998/LP3974 PMICs.
|
/linux/Documentation/devicetree/bindings/mfd/ |
H A D | maxim,max8998.yaml | 4 $id: http://devicetree.org/schemas/mfd/maxim,max8998.yaml# 7 title: Maxim MAX8998, National/TI LP3974 Power Management IC 13 The Maxim MAX8998 is a Power Management IC which includes voltage/current 21 - maxim,max8998 34 max8998,pmic-buck1-dvs-gpios: 39 max8998,pmic-buck2-dvs-gpio: 44 max8998,pmic-buck1-default-dvs-idx: 52 max8998,pmic-buck2-default-dvs-idx: 60 max8998,pmic-buck-voltage-lock: 65 max8998,pmic-buck1-dvs-voltage: [all …]
|
/linux/include/linux/mfd/ |
H A D | max8998-private.h | 3 * max8998-private.h - Voltage regulator driver for the Maxim 8998 91 /* MAX8998 various variants */ 94 TYPE_LP3974, /* National version of MAX8998 */ 125 * struct max8998_dev - max8998 master device for sub-drivers 132 * @irq_base: base IRQ number for max8998, required for IRQs 133 * @irq: generic IRQ number for max8998 134 * @ono: power onoff IRQ number for max8998 137 * @type: indicate which max8998 "variant" is used 157 int max8998_irq_init(struct max8998_dev *max8998); 158 void max8998_irq_exit(struct max8998_dev *max8998); [all …]
|
H A D | max8998.h | 3 * max8998.h - Voltage regulator driver for the Maxim 8998 61 * @irq_base: base IRQ number for max8998, required for IRQs 62 * @ono: power onoff IRQ number for max8998
|
H A D | max8997.h | 8 * This driver is based on max8998.h
|
/linux/drivers/rtc/ |
H A D | rtc-max8998.c | 3 // RTC driver for Maxim MAX8998 16 #include <linux/mfd/max8998.h> 17 #include <linux/mfd/max8998-private.h> 68 struct max8998_dev *max8998; member 249 struct max8998_dev *max8998 = dev_get_drvdata(pdev->dev.parent); in max8998_rtc_probe() local 250 struct max8998_platform_data *pdata = max8998->pdata; in max8998_rtc_probe() 260 info->max8998 = max8998; in max8998_rtc_probe() 261 info->rtc = max8998->rtc; in max8998_rtc_probe() 265 info->rtc_dev = devm_rtc_device_register(&pdev->dev, "max8998-rtc", in max8998_rtc_probe() 274 if (!max8998->irq_domain) in max8998_rtc_probe() [all …]
|
H A D | Makefile | 103 obj-$(CONFIG_RTC_DRV_MAX8998) += rtc-max8998.o
|
H A D | Kconfig | 367 tristate "Maxim MAX8998" 371 RTC of Maxim MAX8998 PMIC. 374 will be called rtc-max8998.
|
H A D | rtc-max8997.c | 7 // based on rtc-max8998.c
|
/linux/arch/arm/boot/dts/samsung/ |
H A D | s5pv210-aquila.dts | 77 max8998,pmic-buck1-default-dvs-idx = <0>; 78 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>, 80 max8998,pmic-buck1-dvs-voltage = <1200000>, <1200000>, 83 max8998,pmic-buck2-default-dvs-idx = <0>; 84 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>; 85 max8998,pmic-buck2-dvs-voltage = <1200000>, <1200000>;
|
H A D | s5pv210-goni.dts | 89 max8998,pmic-buck1-default-dvs-idx = <0>; 90 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>, 92 max8998,pmic-buck1-dvs-voltage = <1200000>, <1200000>, 95 max8998,pmic-buck2-default-dvs-idx = <0>; 96 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>; 97 max8998,pmic-buck2-dvs-voltage = <1200000>, <1200000>;
|
H A D | exynos4210-universal_c210.dts | 350 max8998,pmic-buck1-default-dvs-idx = <0>; 351 max8998,pmic-buck1-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>, 353 max8998,pmic-buck1-dvs-voltage = <1100000>, <1000000>, 356 max8998,pmic-buck2-default-dvs-idx = <0>; 357 max8998,pmic-buck2-dvs-gpio = <&gpe2 0 GPIO_ACTIVE_HIGH>; 358 max8998,pmic-buck2-dvs-voltage = <1200000>, <1100000>;
|
H A D | s5pv210-aries.dtsi | 185 compatible = "maxim,max8998"; 190 max8998,pmic-buck1-default-dvs-idx = <1>; 191 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>, 193 max8998,pmic-buck1-dvs-voltage = <1275000>, <1200000>, 196 max8998,pmic-buck2-default-dvs-idx = <0>; 197 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>; 198 max8998,pmic-buck2-dvs-voltage = <1100000>, <1000000>;
|