power_supply: Add power supply type "Charge Pump"

Introduce a new power supply type "Charge Pump" under the power_supply
class. Also, add power supply properties corresponding to power supply
type charge pump.

Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: Ib51bfd7c69b549cad4a254bd0c3f50629ea211a3
This commit is contained in:
shengfei Xu 2022-06-11 06:43:47 +00:00 committed by Tao Huang
parent 560bc18d7e
commit 18e0f4ff9f
2 changed files with 76 additions and 0 deletions

View File

@ -57,6 +57,9 @@ static const char * const POWER_SUPPLY_TYPE_TEXT[] = {
[POWER_SUPPLY_TYPE_USB_PD_DRP] = "USB_PD_DRP",
[POWER_SUPPLY_TYPE_APPLE_BRICK_ID] = "BrickID",
[POWER_SUPPLY_TYPE_WIRELESS] = "Wireless",
#if defined(CONFIG_NO_GKI)
[POWER_SUPPLY_TYPE_CHARGE_PUMP] = "Charge_Pump",
#endif
};
static const char * const POWER_SUPPLY_USB_TYPE_TEXT[] = {
@ -208,6 +211,41 @@ static struct power_supply_attr power_supply_attrs[] = {
POWER_SUPPLY_ATTR(MANUFACTURE_YEAR),
POWER_SUPPLY_ATTR(MANUFACTURE_MONTH),
POWER_SUPPLY_ATTR(MANUFACTURE_DAY),
#if defined(CONFIG_NO_GKI)
/* Charge pump properties */
POWER_SUPPLY_ATTR(CP_ALARM_STATUS),
POWER_SUPPLY_ATTR(CP_BAT_OVP_ALARM),
POWER_SUPPLY_ATTR(CP_BAT_OCP_ALARM),
POWER_SUPPLY_ATTR(CP_BAT_UCP_ALARM),
POWER_SUPPLY_ATTR(CP_BUS_OVP_ALARM),
POWER_SUPPLY_ATTR(CP_BUS_OCP_ALARM),
POWER_SUPPLY_ATTR(CP_BAT_THERM_ALARM),
POWER_SUPPLY_ATTR(CP_BUS_THERM_ALARM),
POWER_SUPPLY_ATTR(CP_DIE_THERM_ALARM),
POWER_SUPPLY_ATTR(CP_FAULT_STATUS),
POWER_SUPPLY_ATTR(CP_BAT_OVP_FAULT),
POWER_SUPPLY_ATTR(CP_BAT_OCP_FAULT),
POWER_SUPPLY_ATTR(CP_BUS_OVP_FAULT),
POWER_SUPPLY_ATTR(CP_BUS_OCP_FAULT),
POWER_SUPPLY_ATTR(CP_BAT_THERM_FAULT),
POWER_SUPPLY_ATTR(CP_BUS_THERM_FAULT),
POWER_SUPPLY_ATTR(CP_DIE_THERM_FAULT),
POWER_SUPPLY_ATTR(CP_VBUS_ERROR_STATUS),
POWER_SUPPLY_ATTR(CP_VBUS_HERROR_STATUS),
POWER_SUPPLY_ATTR(CP_VBUS_LERROR_STATUS),
POWER_SUPPLY_ATTR(CP_CHARGING_ENABLED),
POWER_SUPPLY_ATTR(CP_WDT_EN),
POWER_SUPPLY_ATTR(CP_VBUS),
POWER_SUPPLY_ATTR(CP_IBUS),
POWER_SUPPLY_ATTR(CP_SWITCHER_EN),
POWER_SUPPLY_ATTR(CP_BAT_TEMPERATURE),
POWER_SUPPLY_ATTR(CP_BUS_TEMPERATURE),
POWER_SUPPLY_ATTR(CP_DIE_TEMPERATURE),
POWER_SUPPLY_ATTR(CP_ISNS),
POWER_SUPPLY_ATTR(CP_TOGGLE_SWITCHER),
POWER_SUPPLY_ATTR(CP_IRQ_STATUS),
POWER_SUPPLY_ATTR(CP_ILIM),
#endif
/* Properties of type `const char *' */
POWER_SUPPLY_ATTR(MODEL_NAME),
POWER_SUPPLY_ATTR(MANUFACTURER),

View File

@ -174,6 +174,41 @@ enum power_supply_property {
POWER_SUPPLY_PROP_MANUFACTURE_YEAR,
POWER_SUPPLY_PROP_MANUFACTURE_MONTH,
POWER_SUPPLY_PROP_MANUFACTURE_DAY,
#if defined(CONFIG_NO_GKI)
/* Charge pump properties */
POWER_SUPPLY_PROP_CP_ALARM_STATUS,
POWER_SUPPLY_PROP_CP_BAT_OVP_ALARM,
POWER_SUPPLY_PROP_CP_BAT_OCP_ALARM,
POWER_SUPPLY_PROP_CP_BAT_UCP_ALARM,
POWER_SUPPLY_PROP_CP_BUS_OVP_ALARM,
POWER_SUPPLY_PROP_CP_BUS_OCP_ALARM,
POWER_SUPPLY_PROP_CP_BAT_THERM_ALARM,
POWER_SUPPLY_PROP_CP_BUS_THERM_ALARM,
POWER_SUPPLY_PROP_CP_DIE_THERM_ALARM,
POWER_SUPPLY_PROP_CP_FAULT_STATUS,
POWER_SUPPLY_PROP_CP_BAT_OVP_FAULT,
POWER_SUPPLY_PROP_CP_BAT_OCP_FAULT,
POWER_SUPPLY_PROP_CP_BUS_OVP_FAULT,
POWER_SUPPLY_PROP_CP_BUS_OCP_FAULT,
POWER_SUPPLY_PROP_CP_BAT_THERM_FAULT,
POWER_SUPPLY_PROP_CP_BUS_THERM_FAULT,
POWER_SUPPLY_PROP_CP_DIE_THERM_FAULT,
POWER_SUPPLY_PROP_CP_VBUS_ERROR_STATUS,
POWER_SUPPLY_PROP_CP_VBUS_HERROR_STATUS,
POWER_SUPPLY_PROP_CP_VBUS_LERROR_STATUS,
POWER_SUPPLY_PROP_CP_CHARGING_ENABLED,
POWER_SUPPLY_PROP_CP_WDT_EN,
POWER_SUPPLY_PROP_CP_VBUS,
POWER_SUPPLY_PROP_CP_IBUS,
POWER_SUPPLY_PROP_CP_SWITCHER_EN,
POWER_SUPPLY_PROP_CP_BAT_TEMPERATURE,
POWER_SUPPLY_PROP_CP_BUS_TEMPERATURE,
POWER_SUPPLY_PROP_CP_DIE_TEMPERATURE,
POWER_SUPPLY_PROP_CP_ISNS,
POWER_SUPPLY_PROP_CP_TOGGLE_SWITCHER,
POWER_SUPPLY_PROP_CP_IRQ_STATUS,
POWER_SUPPLY_PROP_CP_ILIM,
#endif
/* Properties of type `const char *' */
POWER_SUPPLY_PROP_MODEL_NAME,
POWER_SUPPLY_PROP_MANUFACTURER,
@ -194,6 +229,9 @@ enum power_supply_type {
POWER_SUPPLY_TYPE_USB_PD_DRP, /* PD Dual Role Port */
POWER_SUPPLY_TYPE_APPLE_BRICK_ID, /* Apple Charging Method */
POWER_SUPPLY_TYPE_WIRELESS, /* Wireless */
#if defined(CONFIG_NO_GKI)
POWER_SUPPLY_TYPE_CHARGE_PUMP, /* Charge Pump */
#endif
};
enum power_supply_usb_type {