| /kernel/linux/linux-6.6/drivers/mfd/ |
| D | rohm-bd71828.c | 1 // SPDX-License-Identifier: GPL-2.0-only 14 #include <linux/mfd/rohm-bd71815.h> 15 #include <linux/mfd/rohm-bd71828.h> 16 #include <linux/mfd/rohm-generic.h> 24 .gpio = -1, 31 .name = "bd71828-pwrkey", 35 DEFINE_RES_IRQ_NAMED(BD71815_INT_RTC0, "bd71815-rtc-alm-0"), 36 DEFINE_RES_IRQ_NAMED(BD71815_INT_RTC1, "bd71815-rtc-alm-1"), 37 DEFINE_RES_IRQ_NAMED(BD71815_INT_RTC2, "bd71815-rtc-alm-2"), 41 DEFINE_RES_IRQ_NAMED(BD71828_INT_RTC0, "bd71828-rtc-alm-0"), [all …]
|
| /kernel/linux/linux-5.10/drivers/power/supply/ |
| D | tosa_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Battery and Power Management code for the Sharp SL-6000x 17 #include <asm/mach-types.h> 30 bool (*is_present)(struct tosa_bat *bat); 50 static unsigned long tosa_read_bat(struct tosa_bat *bat) in tosa_read_bat() argument 54 if (bat->gpio_bat < 0 || bat->adc_bat < 0) in tosa_read_bat() 58 gpio_set_value(bat->gpio_bat, 1); in tosa_read_bat() 60 value = wm97xx_read_aux_adc(dev_get_drvdata(bat->psy->dev.parent), in tosa_read_bat() 61 bat->adc_bat); in tosa_read_bat() 62 gpio_set_value(bat->gpio_bat, 0); in tosa_read_bat() [all …]
|
| D | rx51_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Nokia RX-51 battery driver 18 struct power_supply *bat; member 39 * This conversion formula was extracted from maemo program bsi-read 43 int voltage = rx51_battery_read_adc(di->channel_vbat); in rx51_battery_read_voltage() 46 dev_err(di->dev, "Could not read ADC: %d\n", voltage); in rx51_battery_read_voltage() 54 * Temperature look-up tables 55 * TEMP = (1/(t1 + 1/298) - 273.15) 57 * Formula is based on experimental data, RX-51 CAL data, maemo program bme 63 * Usage: TEMP = rx51_temp_table1[RAW] [all …]
|
| D | twl4030_madc_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 57 return (madc_read(bt->channel_ichg) > 0) ? 1 : 0; in twl4030_madc_bat_get_charging_status() 62 return madc_read(bt->channel_vbat); in twl4030_madc_bat_get_voltage() 67 return madc_read(bt->channel_ichg) * 1000; in twl4030_madc_bat_get_current() 72 return madc_read(bt->channel_temp) * 10; in twl4030_madc_bat_get_temp() 75 static int twl4030_madc_bat_voltscale(struct twl4030_madc_battery *bat, in twl4030_madc_bat_voltscale() argument 82 if (twl4030_madc_bat_get_charging_status(bat)) in twl4030_madc_bat_voltscale() 83 calibration = bat->pdata->charging; in twl4030_madc_bat_voltscale() 85 calibration = bat->pdata->discharging; in twl4030_madc_bat_voltscale() 93 /* interval found - interpolate within range */ in twl4030_madc_bat_voltscale() [all …]
|
| D | ds2760_battery.c | 5 * 2004-2007 Matt Reimer 111 struct power_supply *bat; member 127 mutex_lock(&sl->master->bus_mutex); in w1_ds2760_io() 134 count = DS2760_DATA_SIZE - addr; in w1_ds2760_io() 138 w1_write_8(sl->master, W1_DS2760_READ_DATA); in w1_ds2760_io() 139 w1_write_8(sl->master, addr); in w1_ds2760_io() 140 count = w1_read_block(sl->master, buf, count); in w1_ds2760_io() 142 w1_write_8(sl->master, W1_DS2760_WRITE_DATA); in w1_ds2760_io() 143 w1_write_8(sl->master, addr); in w1_ds2760_io() 144 w1_write_block(sl->master, buf, count); in w1_ds2760_io() [all …]
|
| D | collie_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Battery and Power Management code for the Sharp SL-5x00 19 #include <asm/mach-types.h> 33 bool (*is_present)(struct collie_bat *bat); 52 static unsigned long collie_read_bat(struct collie_bat *bat) in collie_read_bat() argument 56 if (bat->gpio_bat < 0 || bat->adc_bat < 0) in collie_read_bat() 59 gpio_set_value(bat->gpio_bat, 1); in collie_read_bat() 62 value = ucb1x00_adc_read(ucb, bat->adc_bat, UCB_SYNC); in collie_read_bat() 64 gpio_set_value(bat->gpio_bat, 0); in collie_read_bat() 66 value = value * 1000000 / bat->adc_bat_divider; in collie_read_bat() [all …]
|
| D | da9052-battery.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 185 static int da9052_read_chgend_current(struct da9052_battery *bat, in da9052_read_chgend_current() argument 190 if (bat->status == POWER_SUPPLY_STATUS_DISCHARGING) in da9052_read_chgend_current() 191 return -EINVAL; in da9052_read_chgend_current() 193 ret = da9052_reg_read(bat->da9052, DA9052_ICHG_END_REG); in da9052_read_chgend_current() 202 static int da9052_read_chg_current(struct da9052_battery *bat, int *current_mA) in da9052_read_chg_current() argument 206 if (bat->status == POWER_SUPPLY_STATUS_DISCHARGING) in da9052_read_chg_current() 207 return -EINVAL; in da9052_read_chg_current() 209 ret = da9052_reg_read(bat->da9052, DA9052_ICHG_AV_REG); in da9052_read_chg_current() 218 static int da9052_bat_check_status(struct da9052_battery *bat, int *status) in da9052_bat_check_status() argument [all …]
|
| D | axp288_fuel_gauge.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * axp288_fuel_gauge.c - Xpower AXP288 PMIC Fuel Gauge Driver 5 * Copyright (C) 2016-2017 Hans de Goede <hdegoede@redhat.com> 116 struct power_supply *bat; member 144 ret = regmap_read(info->regmap, reg, &val); in fuel_gauge_reg_readb() 145 if (ret == -EBUSY) in fuel_gauge_reg_readb() 152 dev_err(&info->pdev->dev, "Error reading reg 0x%02x err: %d\n", reg, ret); in fuel_gauge_reg_readb() 163 ret = regmap_write(info->regmap, reg, (unsigned int)val); in fuel_gauge_reg_writeb() 166 dev_err(&info->pdev->dev, "Error writing reg 0x%02x err: %d\n", reg, ret); in fuel_gauge_reg_writeb() 176 ret = regmap_bulk_read(info->regmap, reg, buf, 2); in fuel_gauge_read_15bit_word() [all …]
|
| D | ds2781_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * 1-wire client/driver for the Maxim/Dallas DS2781 Stand-Alone Fuel Gauge IC 21 /* Current unit measurement in uA for a 1 milli-ohm sense resistor */ 23 /* Charge unit measurement in uAh for a 1 milli-ohm sense resistor */ 26 #define DS2781_USER_EEPROM_SIZE (DS2781_EEPROM_BLOCK0_END - \ 29 #define DS2781_PARAM_EEPROM_SIZE (DS2781_EEPROM_BLOCK1_END - \ 34 struct power_supply *bat; member 56 return w1_ds2781_io(dev_info->w1_dev, buf, addr, count, io); in ds2781_battery_io() 112 ret = ds2781_store_eeprom(dev_info->w1_dev, reg); in ds2781_save_eeprom() 116 ret = ds2781_recall_eeprom(dev_info->w1_dev, reg); in ds2781_save_eeprom() [all …]
|
| /kernel/linux/linux-6.6/drivers/power/supply/ |
| D | rx51_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Nokia RX-51 battery driver 18 struct power_supply *bat; member 39 * This conversion formula was extracted from maemo program bsi-read 43 int voltage = rx51_battery_read_adc(di->channel_vbat); in rx51_battery_read_voltage() 46 dev_err(di->dev, "Could not read ADC: %d\n", voltage); in rx51_battery_read_voltage() 54 * Temperature look-up tables 55 * TEMP = (1/(t1 + 1/298) - 273.15) 57 * Formula is based on experimental data, RX-51 CAL data, maemo program bme 63 * Usage: TEMP = rx51_temp_table1[RAW] [all …]
|
| D | acer_a500_battery.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Copyright 2020 GRATE-driver project. 42 [REG_TEMPERATURE] = EC_DATA(0x0a, TEMP), 63 static bool a500_battery_update_capacity(struct a500_battery *bat) in a500_battery_update_capacity() argument 68 err = regmap_read(bat->regmap, ec_data[REG_CAPACITY].reg, &capacity); in a500_battery_update_capacity() 75 if (bat->capacity != capacity) { in a500_battery_update_capacity() 76 bat->capacity = capacity; in a500_battery_update_capacity() 83 static int a500_battery_get_status(struct a500_battery *bat) in a500_battery_get_status() argument 85 if (bat->capacity < 100) { in a500_battery_get_status() 86 if (power_supply_am_i_supplied(bat->psy)) in a500_battery_get_status() [all …]
|
| D | twl4030_madc_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 57 return (madc_read(bt->channel_ichg) > 0) ? 1 : 0; in twl4030_madc_bat_get_charging_status() 62 return madc_read(bt->channel_vbat); in twl4030_madc_bat_get_voltage() 67 return madc_read(bt->channel_ichg) * 1000; in twl4030_madc_bat_get_current() 72 return madc_read(bt->channel_temp) * 10; in twl4030_madc_bat_get_temp() 75 static int twl4030_madc_bat_voltscale(struct twl4030_madc_battery *bat, in twl4030_madc_bat_voltscale() argument 82 if (twl4030_madc_bat_get_charging_status(bat)) in twl4030_madc_bat_voltscale() 83 calibration = bat->pdata->charging; in twl4030_madc_bat_voltscale() 85 calibration = bat->pdata->discharging; in twl4030_madc_bat_voltscale() 93 /* interval found - interpolate within range */ in twl4030_madc_bat_voltscale() [all …]
|
| D | ds2760_battery.c | 5 * 2004-2007 Matt Reimer 111 struct power_supply *bat; member 127 mutex_lock(&sl->master->bus_mutex); in w1_ds2760_io() 134 count = DS2760_DATA_SIZE - addr; in w1_ds2760_io() 138 w1_write_8(sl->master, W1_DS2760_READ_DATA); in w1_ds2760_io() 139 w1_write_8(sl->master, addr); in w1_ds2760_io() 140 count = w1_read_block(sl->master, buf, count); in w1_ds2760_io() 142 w1_write_8(sl->master, W1_DS2760_WRITE_DATA); in w1_ds2760_io() 143 w1_write_8(sl->master, addr); in w1_ds2760_io() 144 w1_write_block(sl->master, buf, count); in w1_ds2760_io() [all …]
|
| D | collie_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Battery and Power Management code for the Sharp SL-5x00 21 #include <asm/mach-types.h> 35 bool (*is_present)(struct collie_bat *bat); 54 static unsigned long collie_read_bat(struct collie_bat *bat) in collie_read_bat() argument 58 if (!bat->gpio_bat || bat->adc_bat < 0) in collie_read_bat() 61 gpiod_set_value(bat->gpio_bat, 1); in collie_read_bat() 64 value = ucb1x00_adc_read(ucb, bat->adc_bat, UCB_SYNC); in collie_read_bat() 66 gpiod_set_value(bat->gpio_bat, 0); in collie_read_bat() 68 value = value * 1000000 / bat->adc_bat_divider; in collie_read_bat() [all …]
|
| D | da9052-battery.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 185 static int da9052_read_chgend_current(struct da9052_battery *bat, in da9052_read_chgend_current() argument 190 if (bat->status == POWER_SUPPLY_STATUS_DISCHARGING) in da9052_read_chgend_current() 191 return -EINVAL; in da9052_read_chgend_current() 193 ret = da9052_reg_read(bat->da9052, DA9052_ICHG_END_REG); in da9052_read_chgend_current() 202 static int da9052_read_chg_current(struct da9052_battery *bat, int *current_mA) in da9052_read_chg_current() argument 206 if (bat->status == POWER_SUPPLY_STATUS_DISCHARGING) in da9052_read_chg_current() 207 return -EINVAL; in da9052_read_chg_current() 209 ret = da9052_reg_read(bat->da9052, DA9052_ICHG_AV_REG); in da9052_read_chg_current() 218 static int da9052_bat_check_status(struct da9052_battery *bat, int *status) in da9052_bat_check_status() argument [all …]
|
| D | ds2781_battery.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * 1-wire client/driver for the Maxim/Dallas DS2781 Stand-Alone Fuel Gauge IC 21 /* Current unit measurement in uA for a 1 milli-ohm sense resistor */ 23 /* Charge unit measurement in uAh for a 1 milli-ohm sense resistor */ 26 #define DS2781_USER_EEPROM_SIZE (DS2781_EEPROM_BLOCK0_END - \ 29 #define DS2781_PARAM_EEPROM_SIZE (DS2781_EEPROM_BLOCK1_END - \ 34 struct power_supply *bat; member 56 return w1_ds2781_io(dev_info->w1_dev, buf, addr, count, io); in ds2781_battery_io() 112 ret = ds2781_store_eeprom(dev_info->w1_dev, reg); in ds2781_save_eeprom() 116 ret = ds2781_recall_eeprom(dev_info->w1_dev, reg); in ds2781_save_eeprom() [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/power/supply/ |
| D | sc27xx-fg.txt | 4 - compatible: Should be one of the following: 5 "sprd,sc2720-fgu", 6 "sprd,sc2721-fgu", 7 "sprd,sc2723-fgu", 8 "sprd,sc2730-fgu", 9 "sprd,sc2731-fgu". 10 - reg: The address offset of fuel gauge unit. 11 - battery-detect-gpios: GPIO for battery detection. 12 - io-channels: Specify the IIO ADC channels to get temperature and charge voltage. 13 - io-channel-names: Should be "bat-temp" or "charge-vol". [all …]
|
| D | qcom_smbb.txt | 1 Qualcomm Switch-Mode Battery Charger and Boost 4 - compatible: 8 - "qcom,pm8941-charger" 10 - reg: 12 Value type: <prop-encoded-array> 15 - interrupts: 17 Value type: <prop-encoded-array> 21 - charge done 22 - charge fast mode 23 - charge trickle mode [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/power/supply/ |
| D | sc27xx-fg.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/supply/sc27xx-fg.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Sebastian Reichel <sre@kernel.org> 13 - $ref: power-supply.yaml# 18 - sprd,sc2720-fgu 19 - sprd,sc2721-fgu 20 - sprd,sc2723-fgu 21 - sprd,sc2730-fgu [all …]
|
| D | qcom,pm8941-charger.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/supply/qcom,pm8941-charger.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Switch-Mode Battery Charger and Boost 10 - Sebastian Reichel <sre@kernel.org> 15 - qcom,pm8226-charger 16 - qcom,pm8941-charger 23 - description: charge done 24 - description: charge fast mode [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/qcom/ |
| D | pm8226.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 2 #include <dt-bindings/iio/qcom,spmi-vadc.h> 3 #include <dt-bindings/input/linux-event-codes.h> 4 #include <dt-bindings/interrupt-controller/irq.h> 5 #include <dt-bindings/spmi/spmi.h> 8 thermal-zones { 9 pm8226-thermal { 10 polling-delay-passive = <100>; 11 polling-delay = <0>; 12 thermal-sensors = <&pm8226_temp>; [all …]
|
| D | pm8941.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/iio/qcom,spmi-vadc.h> 3 #include <dt-bindings/interrupt-controller/irq.h> 4 #include <dt-bindings/spmi/spmi.h> 8 thermal-zones { 9 pm8941-thermal { 10 polling-delay-passive = <100>; 11 polling-delay = <0>; 12 thermal-sensors = <&pm8941_temp>; 40 compatible = "qcom,pm8941", "qcom,spmi-pmic"; [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| D | qcom-pm8941.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/iio/qcom,spmi-vadc.h> 3 #include <dt-bindings/interrupt-controller/irq.h> 4 #include <dt-bindings/spmi/spmi.h> 9 compatible = "qcom,pm8941", "qcom,spmi-pmic"; 11 #address-cells = <1>; 12 #size-cells = <0>; 15 compatible = "qcom,pm8941-rtc"; 18 reg-names = "rtc", "alarm"; 23 compatible = "qcom,pm8941-pwrkey"; [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/boot/dts/sprd/ |
| D | sc2731.dtsi | 6 * SPDX-License-Identifier: (GPL-2.0+ OR MIT) 13 spi-max-frequency = <26000000>; 15 interrupt-controller; 16 #interrupt-cells = <1>; 17 #address-cells = <1>; 18 #size-cells = <0>; 21 compatible = "sprd,sc2731-charger"; 23 monitored-battery = <&bat>; 26 led-controller@200 { 27 compatible = "sprd,sc2731-bltc"; [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/boot/dts/sprd/ |
| D | sc2731.dtsi | 6 * SPDX-License-Identifier: (GPL-2.0+ OR MIT) 13 spi-max-frequency = <26000000>; 15 interrupt-controller; 16 #interrupt-cells = <1>; 17 #address-cells = <1>; 18 #size-cells = <0>; 21 compatible = "sprd,sc2731-charger"; 23 monitored-battery = <&bat>; 26 led-controller@200 { 27 compatible = "sprd,sc2731-bltc"; [all …]
|