/linux/drivers/power/supply/ |
H A D | da9150-charger.c | 3 * DA9150 Charger Driver 42 static inline int da9150_charger_supply_online(struct da9150_charger *charger, in da9150_charger_supply_online() argument 46 val->intval = (psy == charger->supply_online) ? 1 : 0; in da9150_charger_supply_online() 51 /* Charger Properties */ 52 static int da9150_charger_vbus_voltage_now(struct da9150_charger *charger, in da9150_charger_vbus_voltage_now() argument 58 ret = iio_read_channel_processed(charger->vbus_chan, &v_val); in da9150_charger_vbus_voltage_now() 68 static int da9150_charger_ibus_current_avg(struct da9150_charger *charger, in da9150_charger_ibus_current_avg() argument 74 ret = iio_read_channel_processed(charger->ibus_chan, &i_val); in da9150_charger_ibus_current_avg() 84 static int da9150_charger_tjunc_temp(struct da9150_charger *charger, in da9150_charger_tjunc_temp() argument 90 ret = iio_read_channel_processed(charger->tjunc_chan, &t_val); in da9150_charger_tjunc_temp() [all …]
|
H A D | mp2629_charger.c | 3 * MP2629 battery charger driver 147 static int mp2629_read_adc(struct mp2629_charger *charger, in mp2629_read_adc() argument 154 ret = iio_read_channel_processed(charger->iiochan[ch], &chval); in mp2629_read_adc() 163 static int mp2629_get_prop(struct mp2629_charger *charger, in mp2629_get_prop() argument 170 ret = regmap_field_read(charger->regmap_fields[fld], &rval); in mp2629_get_prop() 179 static int mp2629_set_prop(struct mp2629_charger *charger, in mp2629_set_prop() argument 189 return regmap_field_write(charger->regmap_fields[fld], rval); in mp2629_set_prop() 192 static int mp2629_get_battery_capacity(struct mp2629_charger *charger, in mp2629_get_battery_capacity() argument 198 ret = mp2629_read_adc(charger, MP2629_BATT_VOLT, &vnow); in mp2629_get_battery_capacity() 202 ret = mp2629_get_prop(charger, CHARGE_VLIM, &vlim); in mp2629_get_battery_capacity() [all …]
|
H A D | max8997_charger.c | 46 POWER_SUPPLY_PROP_ONLINE, /* charger is active or not */ 49 /* Note that the charger control is done by a current regulator "CHARGER" */ 54 struct charger_data *charger = power_supply_get_drvdata(psy); in max8997_battery_get_property() local 55 struct i2c_client *i2c = charger->iodev->i2c; in max8997_battery_get_property() 100 struct charger_data *charger = in max8997_battery_extcon_evt_worker() local 102 struct extcon_dev *edev = charger->edev; in max8997_battery_extcon_evt_worker() 106 dev_dbg(charger->dev, "USB SDP charger is connected\n"); in max8997_battery_extcon_evt_worker() 109 dev_dbg(charger->dev, "USB DCP charger is connected\n"); in max8997_battery_extcon_evt_worker() 112 dev_dbg(charger->dev, "USB FAST charger is connected\n"); in max8997_battery_extcon_evt_worker() 115 dev_dbg(charger->dev, "USB SLOW charger is connected\n"); in max8997_battery_extcon_evt_worker() [all …]
|
H A D | cros_usbpd-charger.c | 3 * Power supply driver for ChromeOS EC based USB PD Charger. 26 #define DRV_NAME "cros-usbpd-charger" 42 struct charger_data *charger; member 82 return port->port_number >= port->charger->num_usbpd_ports; in cros_usbpd_charger_port_is_dedicated() 85 static int cros_usbpd_charger_ec_command(struct charger_data *charger, in cros_usbpd_charger_ec_command() argument 93 struct cros_ec_dev *ec_dev = charger->ec_dev; in cros_usbpd_charger_ec_command() 109 ret = cros_ec_cmd_xfer_status(charger->ec_device, msg); in cros_usbpd_charger_ec_command() 117 static int cros_usbpd_charger_get_num_ports(struct charger_data *charger) in cros_usbpd_charger_get_num_ports() argument 122 ret = cros_usbpd_charger_ec_command(charger, 0, in cros_usbpd_charger_get_num_ports() 131 static int cros_usbpd_charger_get_usbpd_num_ports(struct charger_data *charger) in cros_usbpd_charger_get_usbpd_num_ports() argument [all …]
|
H A D | twl6030_charger.c | 3 * TWL6030 charger 218 static int twl6030_config_cinlimit_reg(struct twl6030_charger_info *charger, in twl6030_config_cinlimit_reg() argument 223 } else if ((ua > 750000) && (ua <= 1500000) && charger->extended_current_range) { in twl6030_config_cinlimit_reg() 227 dev_err(charger->dev, "invalid input current limit\n"); in twl6030_config_cinlimit_reg() 241 static int twl6030_enable_usb(struct twl6030_charger_info *charger) in twl6030_enable_usb() argument 246 UA_TO_VICHRG(charger->binfo->constant_charge_current_max_ua)); in twl6030_enable_usb() 254 charger->input_current_limit = 500000; in twl6030_enable_usb() 255 ret = twl6030_config_cinlimit_reg(charger, charger->input_current_limit); in twl6030_enable_usb() 264 UV_TO_VOREG(charger->binfo->constant_charge_voltage_max_uv)); in twl6030_enable_usb() 272 if (charger->binfo->charge_term_current_ua != -EINVAL) { in twl6030_enable_usb() [all …]
|
H A D | cros_peripheral_charger.c | 3 * Power supply driver for ChromeOS EC based Peripheral Device Charger. 35 struct charger_data *charger; member 55 static int cros_pchg_ec_command(const struct charger_data *charger, in cros_pchg_ec_command() argument 63 struct cros_ec_dev *ec_dev = charger->ec_dev; in cros_pchg_ec_command() 79 ret = cros_ec_cmd_xfer_status(charger->ec_device, msg); in cros_pchg_ec_command() 89 static bool cros_pchg_cmd_ver_check(const struct charger_data *charger) in cros_pchg_cmd_ver_check() argument 96 ret = cros_pchg_ec_command(charger, 1, EC_CMD_GET_CMD_VERSIONS, in cros_pchg_cmd_ver_check() 99 dev_warn(charger->dev, in cros_pchg_cmd_ver_check() 108 static int cros_pchg_port_count(const struct charger_data *charger) in cros_pchg_port_count() argument 113 ret = cros_pchg_ec_command(charger, 0, EC_CMD_PCHG_COUNT, in cros_pchg_port_count() [all …]
|
H A D | max14577_charger.c | 3 // max14577_charger.c - Battery charger driver for the Maxim 14577/77836 17 struct power_supply *charger; member 60 * and the charger won't be charging although MBCHOSTEN is on) in max14577_get_charger_state() 78 /* Charger or USB-cable is connected */ in max14577_get_charger_state() 322 * Sets charger registers to proper and safe default values. 333 * Charger-Type Manual Detection, default off (set CHGTYPMAN to 0) in max14577_charger_reg_init() 334 * Charger-Detection Enable, default on (set CHGDETEN to 1) in max14577_charger_reg_init() 344 * Battery-Charger, default on in max14577_charger_reg_init() 392 /* Support property from charger */ 448 .name = "max14577-charger", [all …]
|
H A D | ab8500-bm.h | 24 * Charger / status register offfsets 35 * Charger / control register offfsets 52 * Charger / main control register offsets 61 * Charger / USB control register offsets 319 * @maxi_chg_curr_ua: Maximum charger current allowed in microampere 320 * @maxi_wait_cycles: cycles to wait before setting charger current 321 * @charger_curr_step_ua: delta between two charger current settings (uA) 347 * struct ab8500_bm_charger_parameters - Charger specific parameters 348 * @usb_volt_max_uv: maximum allowed USB charger voltage in uV 349 * @usb_curr_max_ua: maximum allowed USB charger current in uA [all …]
|
/linux/drivers/platform/x86/intel/ |
H A D | crystal_cove_charger.c | 3 * Driver for the external-charger IRQ pass-through function of the 35 struct crystal_cove_charger_data *charger = data; in crystal_cove_charger_irq() local 38 handle_nested_irq(charger->charger_irq); in crystal_cove_charger_irq() 41 regmap_write(charger->regmap, CHGRIRQ_REG, BIT(0)); in crystal_cove_charger_irq() 48 struct crystal_cove_charger_data *charger = irq_data_get_irq_chip_data(data); in crystal_cove_charger_irq_bus_lock() local 50 mutex_lock(&charger->buslock); in crystal_cove_charger_irq_bus_lock() 55 struct crystal_cove_charger_data *charger = irq_data_get_irq_chip_data(data); in crystal_cove_charger_irq_bus_sync_unlock() local 57 if (charger->mask != charger->new_mask) { in crystal_cove_charger_irq_bus_sync_unlock() 58 regmap_write(charger->regmap, MCHGRIRQ_REG, charger->new_mask); in crystal_cove_charger_irq_bus_sync_unlock() 59 charger->mask = charger->new_mask; in crystal_cove_charger_irq_bus_sync_unlock() [all …]
|
/linux/include/linux/power/ |
H A D | charger-manager.h | 6 * Charger Manager. 45 * @wq: the workqueue to control charger according to the state of 46 * charger cable. If charger cable is attached, enable charger. 47 * But if charger cable is detached, disable charger. 49 * (External Connector) when charger cable is attached/detached. 50 * @attached: the state of charger cable. 51 * true: the charger cable is attached 52 * false: the charger cable is detached 53 * @charger: the instance of struct charger_regulator. 54 * @cm: the Charger Manager representing the battery. [all …]
|
/linux/Documentation/power/ |
H A D | charger-manager.rst | 2 Charger Manager 7 Charger Manager provides in-kernel battery charger management that 12 Charger Manager is a platform_driver with power-supply-class entries. 13 An instance of Charger Manager (a platform-device created with Charger-Manager) 16 the system may need multiple instances of Charger Manager. 21 Charger Manager supports the following: 25 they may be activated at the same time. Each charger may have its 28 aggregates charger-related information from multiple sources and 43 Charger Manager provides a function "cm_suspend_again" that can be 48 that are used by Charger Manager. [all …]
|
/linux/Documentation/devicetree/bindings/mfd/ |
H A D | maxim,max14577.yaml | 17 includes voltage safeout regulators, charger and MicroUSB management IC. 20 includes voltage safeout and LDO regulators, charger, fuel-gauge and MicroUSB 37 charger: 59 - charger 69 charger: 72 const: maxim,max14577-charger 83 charger: 86 const: maxim,max77836-charger 123 CHARGER { 124 regulator-name = "CHARGER"; [all …]
|
H A D | da9150.txt | 1 Dialog Semiconductor DA9150 Combined Charger/Fuel-Gauge MFD bindings 8 da9150-charger : Battery Charger 23 - da9150-charger: See ../power/da9150-charger.txt 40 charger { 41 compatible = "dlg,da9150-charger";
|
/linux/include/linux/mfd/ |
H A D | rt5033-private.h | 57 /* RT5033 Charger state register */ 116 /* RT5033 charger property - model, manufacturer */ 117 #define RT5033_CHARGER_MODEL "RT5033WSC Charger" 121 * While RT5033 charger can limit the fast-charge current (as in CHGCTRL1 134 /* RT5033 charger minimum input voltage regulation */ 157 * RT5033 charger opa mode. RT5033 has two opa modes for OTG: charger mode 163 /* RT5033 charger termination enable */ 167 /* RT5033 charger CFO enable */ 171 /* RT5033 charger constant charge voltage (as in CHGCTRL2 register), uV */ 177 /* RT5033 charger pre-charge current limits (as in CHGCTRL4 register), uA */ [all …]
|
/linux/drivers/phy/ti/ |
H A D | phy-tusb1210.c | 46 /* TUSB1210 charger detection work states */ 185 dev_dbg(tusb->dev, "charger type: %d\n", type); in tusb1210_chg_det_set_type() 218 * Boards using a TUSB121x for charger-detection have 3 power_supply class devs: 220 * tusb1211-charger-detect(1) -> charger -> fuel-gauge 222 * To determine if an USB charger is connected to the board, the online prop of 223 * the charger psy needs to be read. Since the tusb1211-charger-detect psy is 228 * these boards and the charger psy is looked up by name from this list. 230 * (1) modelling the external USB charger 233 "bq24190-charger", 238 struct power_supply *charger = NULL; in tusb1210_get_online() local [all …]
|
/linux/Documentation/devicetree/bindings/power/supply/ |
H A D | cpcap-charger.yaml | 5 $id: http://devicetree.org/schemas/power/supply/cpcap-charger.yaml# 8 title: Motorola CPCAP PMIC charger 16 the Droid 4. This binding describes its battery charger 24 const: motorola,mapphone-cpcap-charger 28 - description: charger detection interrupt 30 - description: SE1 charger detection interrupt 31 - description: SE0 charger detection interrupt 68 Optionally CPCAP charger can have a companion wireless 87 charger { 88 compatible = "motorola,mapphone-cpcap-charger";
|
H A D | ti,twl6030-charger.yaml | 4 $id: http://devicetree.org/schemas/power/supply/ti,twl6030-charger.yaml# 7 title: TWL6030/32 BCI (Battery Charger Interface) 10 The battery charger needs to be configured to do any charging besides of 23 - const: ti,twl6030-charger 25 - const: ti,twl6032-charger 26 - const: ti,twl6030-charger 30 - description: Charger Control Interrupt 31 - description: Charger Fault Interrupt
|
H A D | lltc,lt3651-charger.yaml | 4 $id: http://devicetree.org/schemas/power/supply/lltc,lt3651-charger.yaml# 7 title: Analog Devices LT3651 Charger Power Supply 18 - lltc,lt3651-charger 19 - lltc,ltc3651-charger # deprecated, use lltc,lt3651-charger 39 charger { 40 compatible = "lltc,lt3651-charger";
|
H A D | sbs,sbs-charger.yaml | 4 $id: http://devicetree.org/schemas/power/supply/sbs,sbs-charger.yaml# 7 title: SBS compliant charger 13 Charger compatible with the smart battery system specifications 25 - sbs,sbs-charger 27 - const: sbs,sbs-charger 49 charger@9 { 50 compatible = "lltc,ltc4100", "sbs,sbs-charger";
|
H A D | charger-manager.yaml | 4 $id: http://devicetree.org/schemas/power/supply/charger-manager.yaml# 7 title: Charger Manager 13 Binding for the legacy charger manager driver. 18 const: charger-manager 33 description: name of the charger manager 58 - 3 # check presence via charger 116 description: name of charger regulator 129 description: name of charger cable 137 - FAST-CHARGER 138 - SLOW-CHARGER [all …]
|
H A D | richtek,rt5033-charger.yaml | 4 $id: http://devicetree.org/schemas/power/supply/richtek,rt5033-charger.yaml# 7 title: Richtek RT5033 PMIC Battery Charger 13 The battery charger of the multifunction device RT5033 has to be instantiated 14 under sub-node named "charger" using the following format. 18 const: richtek,rt5033-charger 40 threshold voltage, the charger is in pre-charge mode with pre-charge 63 charger { 64 compatible = "richtek,rt5033-charger";
|
H A D | ti,lp8727.yaml | 7 title: TI/National Semiconductor LP8727 Charger 34 charger-type: 69 lp8727: charger@27 { 76 /* AC charger: 5% EOC and 500mA charging current */ 78 charger-type = "ac"; 83 /* USB charger: 10% EOC and 400mA charging current */ 85 charger-type = "usb";
|
H A D | ltc4162-l.yaml | 8 title: Linear Technology (Analog Devices) LTC4162-L Charger 15 battery charger and PowerPath (TM) manager that seamlessly manages power 19 Specifications about the charger can be found at: 35 description: I2C address of the charger. 51 the charger is connected to an external supply. 66 charger: battery-charger@68 {
|
/linux/include/linux/mfd/wm8350/ |
H A D | supply.h | 15 * Charger registers 22 * R168 (0xA8) - Battery Charger Control 1 39 * R169 (0xA9) - Battery Charger Control 2 54 * R170 (0xAA) - Battery Charger Control 3 61 * Charger Interrupts 75 * Charger Policy 104 * Policy to control charger state machine. 108 /* charger state machine policy - set in machine driver */
|
/linux/Documentation/ABI/testing/ |
H A D | usb-charger-uevent | 1 What: Raise a uevent when a USB charger is inserted or removed 5 Description: There are two USB charger states: 10 There are five USB charger types: 13 USB_CHARGER_UNKNOWN_TYPE Charger type is unknown 23 USB charger is online:: 40 USB charger is offline::
|