Home
last modified time | relevance | path

Searched full:pmic (Results 1 – 25 of 1818) sorted by relevance

12345678910>>...73

/openbmc/u-boot/drivers/power/pmic/
H A DKconfig2 bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC)"
5 This config enables the driver-model PMIC support.
6 UCLASS_PMIC - designed to provide an I/O interface for PMIC devices.
7 For the multi-function PMIC devices, this can be used as parent I/O
10 - 'drivers/power/pmic/pmic-uclass.c'
11 - 'include/power/pmic.h'
35 bool "Enable support for the active-semi 8846 PMIC"
38 This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout
44 bool "Enable support for the Austria Micro Systems (AMS) AS7322 PMIC"
56 This config enables implementation of driver-model PMIC
[all …]
/openbmc/linux/drivers/regulator/
H A Dmax77620-regulator.c99 static int max77620_regulator_get_fps_src(struct max77620_regulator *pmic, in max77620_regulator_get_fps_src() argument
102 struct max77620_regulator_info *rinfo = pmic->rinfo[id]; in max77620_regulator_get_fps_src()
106 ret = regmap_read(pmic->rmap, rinfo->fps_addr, &val); in max77620_regulator_get_fps_src()
108 dev_err(pmic->dev, "Reg 0x%02x read failed %d\n", in max77620_regulator_get_fps_src()
116 static int max77620_regulator_set_fps_src(struct max77620_regulator *pmic, in max77620_regulator_set_fps_src() argument
119 struct max77620_regulator_info *rinfo = pmic->rinfo[id]; in max77620_regulator_set_fps_src()
134 ret = regmap_read(pmic->rmap, rinfo->fps_addr, &val); in max77620_regulator_set_fps_src()
136 dev_err(pmic->dev, "Reg 0x%02x read failed %d\n", in max77620_regulator_set_fps_src()
141 pmic->active_fps_src[id] = ret; in max77620_regulator_set_fps_src()
145 dev_err(pmic->dev, "Invalid FPS %d for regulator %d\n", in max77620_regulator_set_fps_src()
[all …]
H A Disl6271a-regulator.c23 /* PMIC details */
31 struct isl_pmic *pmic = rdev_get_drvdata(dev); in isl6271a_get_voltage_sel() local
34 mutex_lock(&pmic->mtx); in isl6271a_get_voltage_sel()
36 idx = i2c_smbus_read_byte(pmic->client); in isl6271a_get_voltage_sel()
38 dev_err(&pmic->client->dev, "Error getting voltage\n"); in isl6271a_get_voltage_sel()
40 mutex_unlock(&pmic->mtx); in isl6271a_get_voltage_sel()
47 struct isl_pmic *pmic = rdev_get_drvdata(dev); in isl6271a_set_voltage_sel() local
50 mutex_lock(&pmic->mtx); in isl6271a_set_voltage_sel()
52 err = i2c_smbus_write_byte(pmic->client, selector); in isl6271a_set_voltage_sel()
54 dev_err(&pmic->client->dev, "Error setting voltage\n"); in isl6271a_set_voltage_sel()
[all …]
H A Dtps65910-regulator.c391 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_set_mode() local
395 reg = pmic->get_ctrl_reg(id); in tps65910_set_mode()
416 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_get_mode() local
420 reg = pmic->get_ctrl_reg(id); in tps65910_get_mode()
514 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_get_voltage_sel() local
518 reg = pmic->get_ctrl_reg(id); in tps65910_get_voltage_sel()
557 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65911_get_voltage_sel() local
562 reg = pmic->get_ctrl_reg(id); in tps65911_get_voltage_sel()
634 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_set_voltage_sel() local
638 reg = pmic->get_ctrl_reg(id); in tps65910_set_voltage_sel()
[all …]
H A DKconfig130 signal AB8500 PMIC
159 tristate "AS3711 PMIC"
163 AS3711 PMIC
166 tristate "AMS AS3722 PMIC Regulators"
170 AS3722 PMIC. This will enable support for all the software
174 tristate "Actions Semi ATC260x PMIC Regulators"
190 tristate "X-POWERS AXP20X PMIC Regulators"
194 AXP20X PMIC.
209 This driver supports voltage regulators on ROHM BD71815 PMIC.
221 This driver supports voltage regulators on ROHM BD71828 PMIC.
[all …]
H A Dpalmas-regulator.c3 * Driver for Regulator part of Palmas PMIC Chips
442 struct palmas_pmic *pmic = rdev_get_drvdata(dev); in palmas_set_mode_smps() local
443 struct palmas_pmic_driver_data *ddata = pmic->palmas->pmic_ddata; in palmas_set_mode_smps()
448 ret = palmas_smps_read(pmic->palmas, rinfo->ctrl_addr, &reg); in palmas_set_mode_smps()
471 pmic->current_reg_mode[id] = reg & PALMAS_SMPS12_CTRL_MODE_ACTIVE_MASK; in palmas_set_mode_smps()
473 palmas_smps_write(pmic->palmas, rinfo->ctrl_addr, reg); in palmas_set_mode_smps()
476 pmic->desc[id].enable_val = pmic->current_reg_mode[id]; in palmas_set_mode_smps()
483 struct palmas_pmic *pmic = rdev_get_drvdata(dev); in palmas_get_mode_smps() local
487 reg = pmic->current_reg_mode[id] & PALMAS_SMPS12_CTRL_MODE_ACTIVE_MASK; in palmas_get_mode_smps()
505 struct palmas_pmic *pmic = rdev_get_drvdata(rdev); in palmas_smps_set_ramp_delay() local
[all …]
/openbmc/u-boot/include/power/
H A Dpmic.h45 struct pmic;
47 int (*fg_battery_check) (struct pmic *p, struct pmic *bat);
48 int (*fg_battery_update) (struct pmic *p, struct pmic *bat);
52 int (*chrg_type) (struct pmic *p);
53 int (*chrg_bat_present) (struct pmic *p);
54 int (*chrg_state) (struct pmic *p, int state, int current);
59 int (*battery_init) (struct pmic *bat, struct pmic *p1,
60 struct pmic *p2, struct pmic *p3);
61 int (*battery_charge) (struct pmic *bat);
63 struct pmic *chrg, *fg, *muic;
[all …]
/openbmc/linux/drivers/mfd/
H A Dhi655x-pmic.c3 * Device driver for MFD hi655x PMIC
16 #include <linux/mfd/hi655x-pmic.h>
35 .name = "hi655x-pmic",
94 struct hi655x_pmic *pmic; in hi655x_pmic_probe() local
98 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in hi655x_pmic_probe()
99 if (!pmic) in hi655x_pmic_probe()
101 pmic->dev = dev; in hi655x_pmic_probe()
107 pmic->regmap = devm_regmap_init_mmio_clk(dev, NULL, base, in hi655x_pmic_probe()
109 if (IS_ERR(pmic->regmap)) in hi655x_pmic_probe()
110 return PTR_ERR(pmic->regmap); in hi655x_pmic_probe()
[all …]
H A Dintel_soc_pmic_bxtwc.c3 * MFD core driver for Intel Broxton Whiskey Cove PMIC
21 /* PMIC device registers */
59 /* Whiskey Cove PMIC share same ACPI ID between different platforms */
293 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_read() local
295 if (!pmic) in regmap_ipc_byte_reg_read()
307 ret = intel_scu_ipc_dev_command(pmic->scu, PMC_PMIC_ACCESS, in regmap_ipc_byte_reg_read()
323 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_write() local
325 if (!pmic) in regmap_ipc_byte_reg_write()
338 return intel_scu_ipc_dev_command(pmic->scu, PMC_PMIC_ACCESS, in regmap_ipc_byte_reg_write()
343 /* sysfs interfaces to r/w PMIC registers, required by initial script */
[all …]
H A Dqcom-spmi-pmic.c15 #include <soc/qcom/qcom-spmi-pmic.h>
30 struct qcom_spmi_pmic pmic; member
67 { .compatible = "qcom,spmi-pmic", .data = N_USIDS(1) },
72 * A PMIC can be represented by multiple SPMI devices, but
73 * only the base PMIC device will contain a reference to
76 * This function takes a pointer to a pmic device and
77 * returns a pointer to the base PMIC device.
102 * number of USIDs in the PMIC array, e.g. for a PMIC with 2 USIDs in qcom_pmic_get_base_usid()
120 * If the base USID for this PMIC hasn't been in qcom_pmic_get_base_usid()
155 memcpy(&ctx->pmic, &base_ctx->pmic, sizeof(ctx->pmic)); in pmic_spmi_get_base_revid()
[all …]
H A Dintel_soc_pmic_chtdc_ti.c3 * Device access for Dollar Cove TI PMIC
110 struct intel_soc_pmic *pmic; in chtdc_ti_probe() local
113 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in chtdc_ti_probe()
114 if (!pmic) in chtdc_ti_probe()
117 i2c_set_clientdata(i2c, pmic); in chtdc_ti_probe()
119 pmic->regmap = devm_regmap_init_i2c(i2c, &chtdc_ti_regmap_config); in chtdc_ti_probe()
120 if (IS_ERR(pmic->regmap)) in chtdc_ti_probe()
121 return PTR_ERR(pmic->regmap); in chtdc_ti_probe()
122 pmic->irq = i2c->irq; in chtdc_ti_probe()
124 ret = devm_regmap_add_irq_chip(dev, pmic->regmap, pmic->irq, in chtdc_ti_probe()
[all …]
H A Dintel_soc_pmic_chtwc.c3 * MFD core driver for Intel Cherrytrail Whiskey Cove PMIC
7 * Based on various non upstream patches to support the CHT Whiskey Cove PMIC:
22 /* PMIC device registers */
30 /* Whiskey Cove PMIC share same ACPI ID between different platforms */
191 struct intel_soc_pmic *pmic; in cht_wc_probe() local
198 return dev_err_probe(dev, -ENODEV, "Failed to get PMIC hardware revision\n"); in cht_wc_probe()
200 return dev_err_probe(dev, -ENODEV, "Invalid PMIC hardware revision: %llu\n", hrv); in cht_wc_probe()
205 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in cht_wc_probe()
206 if (!pmic) in cht_wc_probe()
211 pmic->cht_wc_model = (long)id->driver_data; in cht_wc_probe()
[all …]
H A Dintel_soc_pmic_mrfld.c3 * Device access for Basin Cove PMIC
23 * Firmware on the systems with Basin Cove PMIC services Level 1 IRQs
77 struct intel_soc_pmic *pmic = context; in bcove_ipc_byte_reg_read() local
81 ret = intel_scu_ipc_dev_ioread8(pmic->scu, reg, &ipc_out); in bcove_ipc_byte_reg_read()
92 struct intel_soc_pmic *pmic = context; in bcove_ipc_byte_reg_write() local
95 return intel_scu_ipc_dev_iowrite8(pmic->scu, reg, ipc_in); in bcove_ipc_byte_reg_write()
109 struct intel_soc_pmic *pmic; in bcove_probe() local
113 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in bcove_probe()
114 if (!pmic) in bcove_probe()
117 pmic->scu = devm_intel_scu_ipc_dev_get(dev); in bcove_probe()
[all …]
H A Dintel_soc_pmic_crc.c3 * Device access for Crystal Cove PMIC
171 struct intel_soc_pmic *pmic; in crystal_cove_i2c_probe() local
179 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in crystal_cove_i2c_probe()
180 if (!pmic) in crystal_cove_i2c_probe()
183 i2c_set_clientdata(i2c, pmic); in crystal_cove_i2c_probe()
185 pmic->regmap = devm_regmap_init_i2c(i2c, config->regmap_config); in crystal_cove_i2c_probe()
186 if (IS_ERR(pmic->regmap)) in crystal_cove_i2c_probe()
187 return PTR_ERR(pmic->regmap); in crystal_cove_i2c_probe()
189 pmic->irq = i2c->irq; in crystal_cove_i2c_probe()
191 ret = devm_regmap_add_irq_chip(dev, pmic->regmap, pmic->irq, in crystal_cove_i2c_probe()
[all …]
H A Dhi6421-pmic-core.c3 * Device driver for Hi6421 PMIC
16 #include <linux/mfd/hi6421-pmic.h>
39 .compatible = "hisilicon,hi6421-pmic",
43 .compatible = "hisilicon,hi6421v530-pmic",
52 struct hi6421_pmic *pmic; in hi6421_pmic_probe() local
64 pmic = devm_kzalloc(&pdev->dev, sizeof(*pmic), GFP_KERNEL); in hi6421_pmic_probe()
65 if (!pmic) in hi6421_pmic_probe()
72 pmic->regmap = devm_regmap_init_mmio_clk(&pdev->dev, NULL, base, in hi6421_pmic_probe()
74 if (IS_ERR(pmic->regmap)) { in hi6421_pmic_probe()
76 PTR_ERR(pmic->regmap)); in hi6421_pmic_probe()
[all …]
/openbmc/u-boot/drivers/power/
H A DKconfig5 source "drivers/power/pmic/Kconfig"
10 prompt "Select Sunxi PMIC Variant"
18 bool "board without a pmic"
20 Select this for boards which do not use a PMIC.
23 bool "axp152 pmic support"
28 Select this to enable support for the axp152 pmic found on most
32 bool "axp209 pmic support"
37 Select this to enable support for the axp209 pmic found on most
41 bool "axp221 / axp223 pmic support"
46 Select this to enable support for the axp221/axp223 pmic found on most
[all …]
H A Dpower_core.c16 #include <power/pmic.h>
20 int check_reg(struct pmic *p, u32 reg) in check_reg()
31 int pmic_set_output(struct pmic *p, u32 reg, int out, int on) in pmic_set_output()
49 struct pmic *pmic_alloc(void) in pmic_alloc()
51 struct pmic *p; in pmic_alloc()
61 debug("%s: new pmic struct: 0x%p\n", __func__, p); in pmic_alloc()
66 struct pmic *pmic_get(const char *s) in pmic_get()
68 struct pmic *p; in pmic_get()
72 debug("%s: pmic %s -> 0x%p\n", __func__, p->name, p); in pmic_get()
81 static int pmic_dump(struct pmic *p) in pmic_dump()
[all …]
/openbmc/u-boot/doc/driver-model/
H A Dpmic-framework.txt8 PMIC framework based on Driver Model
13 3. Pmic uclass
18 This is an introduction to driver-model multi uclass PMIC IC's support.
20 - UCLASS_PMIC - basic uclass type for PMIC I/O, which provides common
22 - UCLASS_REGULATOR - additional uclass type for specific PMIC features,
27 - drivers/power/pmic/pmic-uclass.c
28 - include/power/pmic.h
39 The Power Management Integrated Circuits (PMIC) are used in embedded systems
43 The single PMIC can provide various functions by single or multiple interfaces,
49 | BUS 0 | Multi interface PMIC IC |--> LDO out 1
[all …]
/openbmc/linux/Documentation/devicetree/bindings/mfd/
H A Dsamsung,s5m8767.yaml14 Management IC (PMIC).
21 const: samsung,s5m8767-pmic
39 s5m8767,pmic-buck2-dvs-voltage:
47 s5m8767,pmic-buck3-dvs-voltage:
55 s5m8767,pmic-buck4-dvs-voltage:
63 s5m8767,pmic-buck-ds-gpios:
70 s5m8767,pmic-buck2-uses-gpio-dvs:
74 s5m8767,pmic-buck3-uses-gpio-dvs:
78 s5m8767,pmic-buck4-uses-gpio-dvs:
82 s5m8767,pmic-buck-default-dvs-idx:
[all …]
H A Dmax8998.txt8 PMIC sub-block
11 The PMIC sub-block contains a number of voltage and current regulators,
20 - reg: Specifies the i2c slave address of the pmic block. It should be 0x66.
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 …]
H A Dhisilicon,hi655x.txt1 Hisilicon Hi655x Power Management Integrated Circuit (PMIC)
3 The hardware layout for access PMIC Hi655x from AP SoC Hi6220.
4 Between PMIC Hi655x and Hi6220, the physical signal channel is SSI.
15 - compatible: Should be "hisilicon,hi655x-pmic".
16 - reg: Base address of PMIC on Hi6220 SoC.
18 - pmic-gpios: The GPIO used by PMIC IRQ.
26 pmic: pmic@f8000000 {
27 compatible = "hisilicon,hi655x-pmic";
31 pmic-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
/openbmc/linux/Documentation/devicetree/bindings/regulator/
H A Dmaxim,max8997.yaml22 const: maxim,max8997-pmic
33 max8997,pmic-buck1-dvs-voltage:
40 If none of max8997,pmic-buck[1/2/5]-uses-gpio-dvs optional property is
41 specified, the max8997,pmic-buck[1/2/5]-dvs-voltage property should
45 max8997,pmic-buck2-dvs-voltage:
52 If none of max8997,pmic-buck[1/2/5]-uses-gpio-dvs optional property is
53 specified, the max8997,pmic-buck[1/2/5]-dvs-voltage property should
57 max8997,pmic-buck5-dvs-voltage:
64 If none of max8997,pmic-buck[1/2/5]-uses-gpio-dvs optional property is
65 specified, the max8997,pmic-buck[1/2/5]-dvs-voltage property should
[all …]
/openbmc/linux/drivers/acpi/pmic/
H A DKconfig4 bool "PMIC (Power Management Integrated Circuit) operation region support"
7 region of the PMIC chip. The operation region can be used
9 PMIC chip.
14 bool "ACPI operation region support for Bay Trail Crystal Cove PMIC"
18 version of the Crystal Cove PMIC.
21 bool "ACPI operation region support for Cherry Trail Crystal Cove PMIC"
25 version of the Crystal Cove PMIC.
28 bool "ACPI operation region support for XPower AXP288 PMIC"
31 This config adds ACPI operation region support for XPower AXP288 PMIC.
34 bool "ACPI operation region support for BXT WhiskeyCove PMIC"
[all …]
/openbmc/u-boot/drivers/power/regulator/
H A DKconfig10 - 'include/power/pmic.h'
12 - 'drivers/power/pmic/pmic-uclass.c'
13 - 'drivers/power/pmic/regulator-uclass.c'
16 for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_dev()
24 code space can be saved by accessing the PMIC registers directly.
32 Enable support for the regulator functions of the ACT8846 PMIC. The
34 by the PMIC device. This driver is controlled by a device tree node
44 done using direct register writes to the PMIC.
129 Enable support for the regulator functions of the RK8XX PMIC. The
131 by the PMIC device. This driver is controlled by a device tree node
[all …]
/openbmc/linux/Documentation/devicetree/bindings/rtc/
H A Drtc-mt6397.txt1 Device-Tree bindings for MediaTek PMIC based RTC
3 MediaTek PMIC based RTC is an independent function of MediaTek PMIC that works
5 with PMIC wrapper bus which is a common resource shared with the other
6 functions found on the same PMIC.
8 For MediaTek PMIC MFD bindings, see:
11 For MediaTek PMIC wrapper bus bindings, see:
16 "mediatek,mt6323-rtc": for MT6323 PMIC
17 "mediatek,mt6358-rtc": for MT6358 PMIC
18 "mediatek,mt6366-rtc", "mediatek,mt6358-rtc": for MT6366 PMIC
19 "mediatek,mt6397-rtc": for MT6397 PMIC
[all …]

12345678910>>...73