charge_mode
if (sharpsl_pm.charge_mode == CHRG_ON)
if (sharpsl_pm.charge_mode == CHRG_ON) {
if (!sharpsl_pm.machinfo->batfull_irq && (sharpsl_pm.charge_mode == CHRG_ON)
sharpsl_pm.charge_mode = CHRG_ON;
sharpsl_pm.charge_mode = CHRG_OFF;
sharpsl_pm.charge_mode = CHRG_ERROR;
if (acin && (sharpsl_pm.charge_mode != CHRG_ON))
else if (sharpsl_pm.charge_mode == CHRG_ON)
if (sharpsl_pm.charge_mode == CHRG_ON)
sharpsl_pm.charge_mode = CHRG_DONE;
if (sharpsl_pm.charge_mode == CHRG_ON)
sharpsl_pm.charge_mode = CHRG_OFF;
if ((sharpsl_pm.charge_mode == CHRG_ON) && ((alarm_enable && ((alarm_time - RCNR) > (SHARPSL_BATCHK_TIME_SUSPEND + 30))) || !alarm_enable)) {
sharpsl_pm.charge_mode = CHRG_ERROR;
dev_dbg(sharpsl_pm.dev, "Charge Mode: %d\n", sharpsl_pm.charge_mode);
if (sharpsl_pm.charge_mode == CHRG_OFF) {
sharpsl_pm.charge_mode = CHRG_ON;
} else if (sharpsl_pm.charge_mode != CHRG_ON) {
sharpsl_pm.charge_mode = CHRG_ON;
sharpsl_pm.charge_mode = CHRG_DONE;
if (sharpsl_pm.charge_mode == CHRG_ON)
sharpsl_pm.charge_mode = CHRG_OFF;
int charge_mode;
sharpsl_pm.charge_mode = CHRG_OFF;
u16 info_flags, charge_mode, gesture_flags;
charge_mode = info_flags & GENMASK(dev_desc->charge_shift + 2,
charge_mode >>= dev_desc->charge_shift;
if (info_flags & dev_desc->kp_events->mask && charge_mode > 2) {
ASUS_ATTR_GROUP_ENUM_INT_RO(charge_mode, "charge_mode", ASUS_WMI_DEVID_CHARGE_MODE, "0;1;2\n",
static DEVICE_ATTR_RO(charge_mode);
static int charge_mode_to_psp_val(enum charge_mode mode)