/openbmc/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 | 171 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
|
/openbmc/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> 83 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_ldo_is_enabled() local 84 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_ldo_is_enabled() 106 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_ldo_enable() local 107 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_ldo_enable() 119 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_ldo_disable() local 120 struct i2c_client *i2c = max8998->iodev->i2c; in max8998_ldo_disable() 134 struct max8998_data *max8998 = rdev_get_drvdata(rdev); in max8998_get_voltage_register() local [all …]
|
/openbmc/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 | 576 tristate "Maxim MAX8998/LP3974 PMIC battery charger driver" 580 platform data of MAX8998/LP3974 PMICs.
|
/openbmc/linux/Documentation/devicetree/bindings/mfd/ |
H A D | max8998.txt | 1 * Maxim MAX8998, National/TI LP3974 multi-function device 3 The Maxim MAX8998 is a multi-function device which includes voltage/current 18 - "maxim,max8998" for Maxim MAX8998 26 - max8998,pmic-buck1-dvs-gpios: GPIO specifiers for two host gpios used 29 - max8998,pmic-buck2-dvs-gpio: GPIO specifier for host gpio used 32 - max8998,pmic-buck1-default-dvs-idx: Default voltage setting selected from 36 - max8998,pmic-buck2-default-dvs-idx: Default voltage setting selected from 40 - max8998,pmic-buck-voltage-lock: If present, disallows changing of 43 Additional properties required if max8998,pmic-buck1-dvs-gpios is defined: 44 - max8998,pmic-buck1-dvs-voltage: An array of 4 voltage values in microvolts [all …]
|
/openbmc/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
|
/openbmc/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 | 98 obj-$(CONFIG_RTC_DRV_MAX8998) += rtc-max8998.o
|
/openbmc/u-boot/board/samsung/universal_c210/ |
H A D | universal.c | 78 ret = pmic_get("max8998-pmic", &dev); in adc_power_control() 80 puts("Failed to get MAX8998!\n"); in adc_power_control() 92 puts("MAX8998 LDO setting error\n"); in adc_power_control() 148 ret = pmic_get("max8998-pmic", &dev); in s5pc210_phy_control() 150 puts("Failed to get MAX8998!\n"); in s5pc210_phy_control() 184 puts("MAX8998 LDO setting error!\n"); in s5pc210_phy_control() 219 ret = pmic_get("max8998-pmic", &dev); in init_pmic_lcd() 221 puts("Failed to get MAX8998 for init_pmic_lcd()!\n"); in init_pmic_lcd() 323 ret = pmic_get("max8998-pmic", &dev); in exynos_lcd_power_on() 325 puts("Failed to get MAX8998!\n"); in exynos_lcd_power_on() [all …]
|
/openbmc/u-boot/board/samsung/goni/ |
H A D | goni.c | 143 ret = pmic_get("max8998-pmic", &dev); in s5pc1xx_phy_control() 152 puts("MAX8998 LDO setting error!\n"); in s5pc1xx_phy_control() 160 puts("MAX8998 LDO setting error!\n"); in s5pc1xx_phy_control() 169 puts("MAX8998 LDO setting error!\n"); in s5pc1xx_phy_control() 177 puts("MAX8998 LDO setting error!\n"); in s5pc1xx_phy_control()
|
/openbmc/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>;
|
/openbmc/u-boot/arch/arm/dts/ |
H A D | s5pc1xx-goni.dts | 44 max8998-pmic@66 { 45 compatible = "maxim,max8998";
|
H A D | exynos4210-universal_c210.dts | 77 max8998-pmic@66 { 78 compatible = "maxim,max8998";
|
/openbmc/u-boot/drivers/power/pmic/ |
H A D | max8998.c | 49 { .compatible = "maxim,max8998" },
|
H A D | Kconfig | 80 bool "Enable Driver Model for PMIC MAX8998" 84 for PMIC MAX8998. The driver implements read/write operations.
|
H A D | Makefile | 9 obj-$(CONFIG_DM_PMIC_MAX8998) += max8998.o
|