Unverified Commit 6c9ffa2a authored by Antheas Kapenekakis's avatar Antheas Kapenekakis Committed by Ilpo Järvinen
Browse files

power: supply: add inhibit-charge-awake to charge_behaviour



OneXPlayer devices have a charge inhibit feature that allows the user
to select between it being active always or only when the device is on.

Therefore, add attribute inhibit-charge-awake to charge_behaviour to
allow the user to select that charge should be paused only when the
device is awake.

Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Reviewed-by: default avatarThomas Weißschuh <linux@weissschuh.net>
Reviewed-by: default avatarDerek J. Clark <derekjohn.clark@gmail.com>
Signed-off-by: default avatarAntheas Kapenekakis <lkml@antheas.dev>
Link: https://lore.kernel.org/r/20250425111821.88746-14-lkml@antheas.dev


Reviewed-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
parent 38b30882
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -508,11 +508,12 @@ Description:
		Access: Read, Write

		Valid values:
			================ ====================================
			===================== ========================================
			auto:                 Charge normally, respect thresholds
			inhibit-charge:       Do not charge while AC is attached
			inhibit-charge-awake: inhibit-charge only when device is awake
			force-discharge:      Force discharge while AC is attached
			================ ====================================
			===================== ========================================

What:		/sys/class/power_supply/<supply_name>/technology
Date:		May 2007
+4 −3
Original line number Diff line number Diff line
@@ -140,6 +140,7 @@ static const char * const POWER_SUPPLY_SCOPE_TEXT[] = {
static const char * const POWER_SUPPLY_CHARGE_BEHAVIOUR_TEXT[] = {
	[POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO]			= "auto",
	[POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE]		= "inhibit-charge",
	[POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE_AWAKE]	= "inhibit-charge-awake",
	[POWER_SUPPLY_CHARGE_BEHAVIOUR_FORCE_DISCHARGE]		= "force-discharge",
};

+1 −0
Original line number Diff line number Diff line
@@ -214,6 +214,7 @@ static const struct power_supply_desc test_power_desc[] = {
		.property_is_writeable = test_power_battery_property_is_writeable,
		.charge_behaviours = BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO)
				   | BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE)
				   | BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE_AWAKE)
				   | BIT(POWER_SUPPLY_CHARGE_BEHAVIOUR_FORCE_DISCHARGE),
	},
	[TEST_USB] = {
+1 −0
Original line number Diff line number Diff line
@@ -212,6 +212,7 @@ enum power_supply_usb_type {
enum power_supply_charge_behaviour {
	POWER_SUPPLY_CHARGE_BEHAVIOUR_AUTO = 0,
	POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE,
	POWER_SUPPLY_CHARGE_BEHAVIOUR_INHIBIT_CHARGE_AWAKE,
	POWER_SUPPLY_CHARGE_BEHAVIOUR_FORCE_DISCHARGE,
};