All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] platform/x86: msi-ec: add and fix EC configs
@ 2023-09-29 11:31 Nikita Kravets
  2023-09-29 11:31 ` [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config Nikita Kravets
  2023-09-29 11:31 ` [PATCH 2/2] platform/x86: msi-ec: Add more EC configs Nikita Kravets
  0 siblings, 2 replies; 6+ messages in thread
From: Nikita Kravets @ 2023-09-29 11:31 UTC (permalink / raw)
  To: platform-driver-x86
  Cc: Hans de Goede, Nikita Kravets, Aakash Singh, Jose Angel Pastrana

Hi!

This patch series adds EC configs for more firmware (patch 2)
and fixes a couple of issues with an existing configuration (patch 1)
in the msi-ec driver.

Cc: Aakash Singh <mail@singhaakash.dev>
Cc: Jose Angel Pastrana <japp0005@red.ujaen.es>

Nikita Kravets (2):
  platform/x86: msi-ec: Fix the 3rd config
  platform/x86: msi-ec: Add more EC configs

 drivers/platform/x86/msi-ec.c | 486 +++++++++++++++++++++++++++++++++-
 drivers/platform/x86/msi-ec.h |   4 +-
 2 files changed, 478 insertions(+), 12 deletions(-)

-- 
2.42.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config
  2023-09-29 11:31 [PATCH 0/2] platform/x86: msi-ec: add and fix EC configs Nikita Kravets
@ 2023-09-29 11:31 ` Nikita Kravets
  2023-09-29 16:07   ` Ilpo Järvinen
  2023-09-29 11:31 ` [PATCH 2/2] platform/x86: msi-ec: Add more EC configs Nikita Kravets
  1 sibling, 1 reply; 6+ messages in thread
From: Nikita Kravets @ 2023-09-29 11:31 UTC (permalink / raw)
  To: platform-driver-x86
  Cc: Hans de Goede, Nikita Kravets, Aakash Singh, Jose Angel Pastrana

Fix the charge control address of CONF3 and remove an incorrect firmware
version which turned out to be a BIOS firmware and not an EC firmware.

This patch also renames fn_super_swap to fn_win_swap for consistency
with the downstream version of the driver.

Cc: Aakash Singh <mail@singhaakash.dev>
Cc: Jose Angel Pastrana <japp0005@red.ujaen.es>
Signed-off-by: Nikita Kravets <teackot@gmail.com>
---
 drivers/platform/x86/msi-ec.c | 19 +++++++++----------
 drivers/platform/x86/msi-ec.h |  4 ++--
 2 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/drivers/platform/x86/msi-ec.c b/drivers/platform/x86/msi-ec.c
index f26a3121092f..3074aee878c1 100644
--- a/drivers/platform/x86/msi-ec.c
+++ b/drivers/platform/x86/msi-ec.c
@@ -58,7 +58,7 @@ static struct msi_ec_conf CONF0 __initdata = {
 		.block_address = 0x2f,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = 0xbf,
 		.bit     = 4,
 	},
@@ -138,7 +138,7 @@ static struct msi_ec_conf CONF1 __initdata = {
 		.block_address = 0x2f,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = 0xbf,
 		.bit     = 4,
 	},
@@ -215,7 +215,7 @@ static struct msi_ec_conf CONF2 __initdata = {
 		.block_address = 0x2f,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = 0xe8,
 		.bit     = 4,
 	},
@@ -276,14 +276,13 @@ static struct msi_ec_conf CONF2 __initdata = {
 
 static const char * const ALLOWED_FW_3[] __initconst = {
 	"1592EMS1.111",
-	"E1592IMS.10C",
 	NULL
 };
 
 static struct msi_ec_conf CONF3 __initdata = {
 	.allowed_fw = ALLOWED_FW_3,
 	.charge_control = {
-		.address      = 0xef,
+		.address      = 0xd7,
 		.offset_start = 0x8a,
 		.offset_end   = 0x80,
 		.range_min    = 0x8a,
@@ -294,7 +293,7 @@ static struct msi_ec_conf CONF3 __initdata = {
 		.block_address = 0x2f,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = 0xe8,
 		.bit     = 4,
 	},
@@ -372,7 +371,7 @@ static struct msi_ec_conf CONF4 __initdata = {
 		.block_address = 0x2f,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = MSI_EC_ADDR_UNKNOWN, // supported, but unknown
 		.bit     = 4,
 	},
@@ -451,7 +450,7 @@ static struct msi_ec_conf CONF5 __initdata = {
 		.block_address = 0x2f,
 		.bit           = 1,
 	},
-	.fn_super_swap = { // todo: reverse
+	.fn_win_swap = { // todo: reverse
 		.address = 0xbf,
 		.bit     = 4,
 	},
@@ -529,7 +528,7 @@ static struct msi_ec_conf CONF6 __initdata = {
 		.block_address = MSI_EC_ADDR_UNSUPP,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = 0xbf, // todo: reverse
 		.bit     = 4,
 	},
@@ -609,7 +608,7 @@ static struct msi_ec_conf CONF7 __initdata = {
 		.block_address = MSI_EC_ADDR_UNSUPP,
 		.bit           = 1,
 	},
-	.fn_super_swap = {
+	.fn_win_swap = {
 		.address = 0xbf, // needs testing
 		.bit     = 4,
 	},
diff --git a/drivers/platform/x86/msi-ec.h b/drivers/platform/x86/msi-ec.h
index be3533dc9cc6..086351217505 100644
--- a/drivers/platform/x86/msi-ec.h
+++ b/drivers/platform/x86/msi-ec.h
@@ -40,7 +40,7 @@ struct msi_ec_webcam_conf {
 	int bit;
 };
 
-struct msi_ec_fn_super_swap_conf {
+struct msi_ec_fn_win_swap_conf {
 	int address;
 	int bit;
 };
@@ -108,7 +108,7 @@ struct msi_ec_conf {
 
 	struct msi_ec_charge_control_conf charge_control;
 	struct msi_ec_webcam_conf         webcam;
-	struct msi_ec_fn_super_swap_conf  fn_super_swap;
+	struct msi_ec_fn_win_swap_conf    fn_win_swap;
 	struct msi_ec_cooler_boost_conf   cooler_boost;
 	struct msi_ec_shift_mode_conf     shift_mode;
 	struct msi_ec_super_battery_conf  super_battery;
-- 
2.42.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] platform/x86: msi-ec: Add more EC configs
  2023-09-29 11:31 [PATCH 0/2] platform/x86: msi-ec: add and fix EC configs Nikita Kravets
  2023-09-29 11:31 ` [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config Nikita Kravets
@ 2023-09-29 11:31 ` Nikita Kravets
  1 sibling, 0 replies; 6+ messages in thread
From: Nikita Kravets @ 2023-09-29 11:31 UTC (permalink / raw)
  To: platform-driver-x86
  Cc: Hans de Goede, Nikita Kravets, Aakash Singh, Jose Angel Pastrana

This patch adds configurations for new EC firmware from the downstream
version of the driver.

Cc: Aakash Singh <mail@singhaakash.dev>
Cc: Jose Angel Pastrana <japp0005@red.ujaen.es>
Signed-off-by: Nikita Kravets <teackot@gmail.com>
---
 drivers/platform/x86/msi-ec.c | 467 ++++++++++++++++++++++++++++++++++
 1 file changed, 467 insertions(+)

diff --git a/drivers/platform/x86/msi-ec.c b/drivers/platform/x86/msi-ec.c
index 3074aee878c1..f19504dbf164 100644
--- a/drivers/platform/x86/msi-ec.c
+++ b/drivers/platform/x86/msi-ec.c
@@ -667,6 +667,467 @@ static struct msi_ec_conf CONF7 __initdata = {
 	},
 };
 
+static const char * const ALLOWED_FW_8[] __initconst = {
+	"14F1EMS1.115",
+	NULL
+};
+
+static struct msi_ec_conf CONF8 __initdata = {
+	.allowed_fw = ALLOWED_FW_8,
+	.charge_control = {
+		.address      = 0xd7,
+		.offset_start = 0x8a,
+		.offset_end   = 0x80,
+		.range_min    = 0x8a,
+		.range_max    = 0xe4,
+	},
+	.webcam = {
+		.address       = 0x2e,
+		.block_address = MSI_EC_ADDR_UNSUPP,
+		.bit           = 1,
+	},
+	.fn_win_swap = {
+		.address = 0xe8,
+		.bit     = 4,
+	},
+	.cooler_boost = {
+		.address = 0x98,
+		.bit     = 7,
+	},
+	.shift_mode = {
+		.address = 0xd2,
+		.modes = {
+			{ SM_ECO_NAME,     0xc2 },
+			{ SM_COMFORT_NAME, 0xc1 },
+			{ SM_SPORT_NAME,   0xc0 },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.super_battery = {
+		.address = 0xeb,
+		.mask    = 0x0f,
+	},
+	.fan_mode = {
+		.address = 0xd4,
+		.modes = {
+			{ FM_AUTO_NAME,     0x0d },
+			{ FM_SILENT_NAME,   0x1d },
+			{ FM_BASIC_NAME,    0x4d },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.cpu = {
+		.rt_temp_address       = 0x68,
+		.rt_fan_speed_address  = 0x71,
+		.rt_fan_speed_base_min = 0x19,
+		.rt_fan_speed_base_max = 0x37,
+		.bs_fan_speed_address  = MSI_EC_ADDR_UNSUPP,
+		.bs_fan_speed_base_min = 0x00,
+		.bs_fan_speed_base_max = 0x0f,
+	},
+	.gpu = {
+		.rt_temp_address      = MSI_EC_ADDR_UNKNOWN,
+		.rt_fan_speed_address = MSI_EC_ADDR_UNKNOWN,
+	},
+	.leds = {
+		.micmute_led_address = MSI_EC_ADDR_UNSUPP,
+		.mute_led_address    = 0x2d,
+		.bit                 = 1,
+	},
+	.kbd_bl = {
+		.bl_mode_address  = MSI_EC_ADDR_UNKNOWN, // ?
+		.bl_modes         = { 0x00, 0x08 }, // ?
+		.max_mode         = 1, // ?
+		.bl_state_address = MSI_EC_ADDR_UNSUPP, // not functional
+		.state_base_value = 0x80,
+		.max_state        = 3,
+	},
+};
+
+static const char * const ALLOWED_FW_9[] __initconst = {
+	"14JKEMS1.104",
+	NULL
+};
+
+static struct msi_ec_conf CONF9 __initdata = {
+	.allowed_fw = ALLOWED_FW_9,
+	.charge_control = {
+		.address      = 0xef,
+		.offset_start = 0x8a,
+		.offset_end   = 0x80,
+		.range_min    = 0x8a,
+		.range_max    = 0xe4,
+	},
+	.webcam = {
+		.address       = 0x2e,
+		.block_address = 0x2f,
+		.bit           = 1,
+	},
+	.fn_win_swap = {
+		.address = 0xbf,
+		.bit     = 4,
+	},
+	.cooler_boost = {
+		.address = 0x98,
+		.bit     = 7,
+	},
+	.shift_mode = {
+		.address = 0xf2,
+		.modes = {
+			{ SM_ECO_NAME,     0xc2 },
+			{ SM_COMFORT_NAME, 0xc1 },
+			{ SM_SPORT_NAME,   0xc0 },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.super_battery = {
+		.address = MSI_EC_ADDR_UNSUPP, // unsupported or enabled by ECO shift
+		.mask    = 0x0f,
+	},
+	.fan_mode = {
+		.address = 0xf4,
+		.modes = {
+			{ FM_AUTO_NAME,     0x0d },
+			{ FM_SILENT_NAME,   0x1d },
+			{ FM_ADVANCED_NAME, 0x8d },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.cpu = {
+		.rt_temp_address       = 0x68,
+		.rt_fan_speed_address  = 0x71,
+		.rt_fan_speed_base_min = 0x00,
+		.rt_fan_speed_base_max = 0x96,
+		.bs_fan_speed_address  = MSI_EC_ADDR_UNSUPP,
+		.bs_fan_speed_base_min = 0x00,
+		.bs_fan_speed_base_max = 0x0f,
+	},
+	.gpu = {
+		.rt_temp_address      = MSI_EC_ADDR_UNSUPP,
+		.rt_fan_speed_address = MSI_EC_ADDR_UNSUPP,
+	},
+	.leds = {
+		.micmute_led_address = 0x2b,
+		.mute_led_address    = 0x2c,
+		.bit                 = 2,
+	},
+	.kbd_bl = {
+		.bl_mode_address  = MSI_EC_ADDR_UNSUPP, // not presented in MSI app
+		.bl_modes         = { 0x00, 0x08 },
+		.max_mode         = 1,
+		.bl_state_address = 0xf3,
+		.state_base_value = 0x80,
+		.max_state        = 3,
+	},
+};
+
+static const char * const ALLOWED_FW_10[] __initconst = {
+	"1582EMS1.107", // GF66 11UC
+	NULL
+};
+
+static struct msi_ec_conf CONF10 __initdata = {
+	.allowed_fw = ALLOWED_FW_10,
+	.charge_control = {
+		.address      = 0xd7,
+		.offset_start = 0x8a,
+		.offset_end   = 0x80,
+		.range_min    = 0x8a,
+		.range_max    = 0xe4,
+	},
+	.webcam = {
+		.address       = 0x2e,
+		.block_address = 0x2f,
+		.bit           = 1,
+	},
+	.fn_win_swap = {
+		.address = MSI_EC_ADDR_UNSUPP,
+		.bit     = 4,
+	},
+	.cooler_boost = {
+		.address = 0x98,
+		.bit     = 7,
+	},
+	.shift_mode = {
+		.address = 0xd2,
+		.modes = {
+			{ SM_ECO_NAME,     0xc2 },
+			{ SM_COMFORT_NAME, 0xc1 },
+			{ SM_SPORT_NAME,   0xc0 },
+			{ SM_TURBO_NAME,   0xc4 },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.super_battery = {
+		.address = 0xe5,
+		.mask    = 0x0f,
+	},
+	.fan_mode = {
+		.address = 0xd4,
+		.modes = {
+			{ FM_AUTO_NAME,     0x0d },
+			{ FM_SILENT_NAME,   0x1d },
+			{ FM_ADVANCED_NAME, 0x8d },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.cpu = {
+		.rt_temp_address       = 0x68,
+		.rt_fan_speed_address  = 0x71, // ?
+		.rt_fan_speed_base_min = 0x19,
+		.rt_fan_speed_base_max = 0x37,
+		.bs_fan_speed_address  = MSI_EC_ADDR_UNKNOWN, // ?
+		.bs_fan_speed_base_min = 0x00,
+		.bs_fan_speed_base_max = 0x0f,
+	},
+	.gpu = {
+		.rt_temp_address      = 0x80,
+		.rt_fan_speed_address = 0x89,
+	},
+	.leds = {
+		.micmute_led_address = 0x2c,
+		.mute_led_address    = 0x2d,
+		.bit                 = 1,
+	},
+	.kbd_bl = {
+		.bl_mode_address  = 0x2c,
+		.bl_modes         = { 0x00, 0x08 },
+		.max_mode         = 1,
+		.bl_state_address = 0xd3,
+		.state_base_value = 0x80,
+		.max_state        = 3,
+	},
+};
+
+static const char * const ALLOWED_FW_11[] __initconst = {
+	"16S6EMS1.111", // Prestige 15 a11scx
+	"1552EMS1.115", // Modern 15 a11m
+	NULL
+};
+
+static struct msi_ec_conf CONF11 __initdata = {
+	.allowed_fw = ALLOWED_FW_11,
+	.charge_control = {
+		.address      = 0xd7,
+		.offset_start = 0x8a,
+		.offset_end   = 0x80,
+		.range_min    = 0x8a,
+		.range_max    = 0xe4,
+	},
+	.webcam = {
+		.address       = 0x2e,
+		.block_address = MSI_EC_ADDR_UNKNOWN,
+		.bit           = 1,
+	},
+	.fn_win_swap = {
+		.address = 0xe8,
+		.bit     = 4,
+	},
+	.cooler_boost = {
+		.address = 0x98,
+		.bit     = 7,
+	},
+	.shift_mode = {
+		.address = 0xd2,
+		.modes = {
+			{ SM_ECO_NAME,     0xc2 },
+			{ SM_COMFORT_NAME, 0xc1 },
+			{ SM_SPORT_NAME,   0xc0 },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.super_battery = {
+		.address = 0xeb,
+		.mask = 0x0f,
+	},
+	.fan_mode = {
+		.address = 0xd4,
+		.modes = {
+			{ FM_AUTO_NAME,     0x0d },
+			{ FM_SILENT_NAME,   0x1d },
+			{ FM_ADVANCED_NAME, 0x4d },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.cpu = {
+		.rt_temp_address       = 0x68,
+		.rt_fan_speed_address  = MSI_EC_ADDR_UNSUPP,
+		.bs_fan_speed_address  = MSI_EC_ADDR_UNSUPP,
+	},
+	.gpu = {
+		.rt_temp_address      = MSI_EC_ADDR_UNSUPP,
+		.rt_fan_speed_address = MSI_EC_ADDR_UNSUPP,
+	},
+	.leds = {
+		.micmute_led_address = 0x2c,
+		.mute_led_address    = 0x2d,
+		.bit                 = 1,
+	},
+	.kbd_bl = {
+		.bl_mode_address  = MSI_EC_ADDR_UNKNOWN,
+		.bl_modes         = {}, // ?
+		.max_mode         = 1, // ?
+		.bl_state_address = 0xd3,
+		.state_base_value = 0x80,
+		.max_state        = 3,
+	},
+};
+
+static const char * const ALLOWED_FW_12[] __initconst = {
+	"16R6EMS1.104", // GF63 Thin 11UC
+	NULL
+};
+
+static struct msi_ec_conf CONF12 __initdata = {
+	.allowed_fw = ALLOWED_FW_12,
+	.charge_control = {
+		.address      = 0xd7,
+		.offset_start = 0x8a,
+		.offset_end   = 0x80,
+		.range_min    = 0x8a,
+		.range_max    = 0xe4,
+	},
+	.webcam = {
+		.address       = 0x2e,
+		.block_address = 0x2f,
+		.bit           = 1,
+	},
+	.fn_win_swap = {
+		.address = 0xe8,
+		.bit     = 4,
+	},
+	.cooler_boost = {
+		.address = 0x98,
+		.bit     = 7,
+	},
+	.shift_mode = {
+		.address = 0xd2,
+		.modes = {
+			{ SM_ECO_NAME,     0xc2 },
+			{ SM_COMFORT_NAME, 0xc1 },
+			{ SM_SPORT_NAME,   0xc0 },
+			{ SM_TURBO_NAME,   0xc4 },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.super_battery = {
+		.address = MSI_EC_ADDR_UNSUPP, // 0xeb
+		.mask    = 0x0f, // 00, 0f
+	},
+	.fan_mode = {
+		.address = 0xd4,
+		.modes = {
+			{ FM_AUTO_NAME,     0x0d },
+			{ FM_SILENT_NAME,   0x1d },
+			{ FM_ADVANCED_NAME, 0x8d },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.cpu = {
+		.rt_temp_address       = 0x68,
+		.rt_fan_speed_address  = 0x71,
+		.rt_fan_speed_base_min = 0x19,
+		.rt_fan_speed_base_max = 0x37,
+		.bs_fan_speed_address  = MSI_EC_ADDR_UNSUPP,
+		.bs_fan_speed_base_min = 0x00,
+		.bs_fan_speed_base_max = 0x0f,
+	},
+	.gpu = {
+		.rt_temp_address      = MSI_EC_ADDR_UNSUPP,
+		.rt_fan_speed_address = 0x89,
+	},
+	.leds = {
+		.micmute_led_address = MSI_EC_ADDR_UNSUPP,
+		.mute_led_address    = 0x2d,
+		.bit                 = 1,
+	},
+	.kbd_bl = {
+		.bl_mode_address  = MSI_EC_ADDR_UNKNOWN,
+		.bl_modes         = { 0x00, 0x08 },
+		.max_mode         = 1,
+		.bl_state_address = 0xd3,
+		.state_base_value = 0x80,
+		.max_state        = 3,
+	},
+};
+
+static const char * const ALLOWED_FW_13[] __initconst = {
+	"1594EMS1.109", // MSI Prestige 16 Studio A13VE
+	NULL
+};
+
+static struct msi_ec_conf CONF13 __initdata = {
+	.allowed_fw = ALLOWED_FW_13,
+	.charge_control = {
+		.address      = 0xd7,
+		.offset_start = 0x8a,
+		.offset_end   = 0x80,
+		.range_min    = 0x8a,
+		.range_max    = 0xe4,
+	},
+	.webcam = {
+		.address       = 0x2e,
+		.block_address = 0x2f,
+		.bit           = 1,
+	},
+	.fn_win_swap = {
+		.address = 0xe8,
+		.bit     = 4, // 0x00-0x10
+	},
+	.cooler_boost = {
+		.address = 0x98,
+		.bit     = 7,
+	},
+	.shift_mode = {
+		.address = 0xd2,
+		.modes = {
+			{ SM_ECO_NAME,     0xc2 }, // super battery
+			{ SM_COMFORT_NAME, 0xc1 }, // balanced
+			{ SM_TURBO_NAME,   0xc4 }, // extreme
+			MSI_EC_MODE_NULL
+		},
+	},
+	.super_battery = {
+		.address = MSI_EC_ADDR_UNSUPP,
+		.mask    = 0x0f, // 00, 0f
+	},
+	.fan_mode = {
+		.address = 0xd4,
+		.modes = {
+			{ FM_AUTO_NAME,     0x0d },
+			{ FM_SILENT_NAME,   0x1d },
+			{ FM_ADVANCED_NAME, 0x8d },
+			MSI_EC_MODE_NULL
+		},
+	},
+	.cpu = {
+		.rt_temp_address       = 0x68,
+		.rt_fan_speed_address  = 0x71, // 0x0-0x96
+		.rt_fan_speed_base_min = 0x00,
+		.rt_fan_speed_base_max = 0x96,
+		.bs_fan_speed_address  = MSI_EC_ADDR_UNSUPP,
+		.bs_fan_speed_base_min = 0x00,
+		.bs_fan_speed_base_max = 0x0f,
+	},
+	.gpu = {
+		.rt_temp_address      = 0x80,
+		.rt_fan_speed_address = 0x89,
+	},
+	.leds = {
+		.micmute_led_address = 0x2c,
+		.mute_led_address    = 0x2d,
+		.bit                 = 1,
+	},
+	.kbd_bl = {
+		.bl_mode_address  = 0x2c, // KB auto turn off
+		.bl_modes         = { 0x00, 0x08 }, // always on; off after 10 sec
+		.max_mode         = 1,
+		.bl_state_address = 0xd3,
+		.state_base_value = 0x80,
+		.max_state        = 3,
+	},
+};
+
 static struct msi_ec_conf *CONFIGS[] __initdata = {
 	&CONF0,
 	&CONF1,
@@ -676,6 +1137,12 @@ static struct msi_ec_conf *CONFIGS[] __initdata = {
 	&CONF5,
 	&CONF6,
 	&CONF7,
+	&CONF8,
+	&CONF9,
+	&CONF10,
+	&CONF11,
+	&CONF12,
+	&CONF13,
 	NULL
 };
 
-- 
2.42.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config
  2023-09-29 11:31 ` [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config Nikita Kravets
@ 2023-09-29 16:07   ` Ilpo Järvinen
  2023-10-04 13:47     ` Hans de Goede
  0 siblings, 1 reply; 6+ messages in thread
From: Ilpo Järvinen @ 2023-09-29 16:07 UTC (permalink / raw)
  To: Nikita Kravets, Hans de Goede
  Cc: platform-driver-x86, Aakash Singh, Jose Angel Pastrana


On Fri, 29 Sep 2023, Nikita Kravets wrote:

> Fix the charge control address of CONF3 and remove an incorrect firmware
> version which turned out to be a BIOS firmware and not an EC firmware.

Should there be a Fixes tag?

> This patch also renames fn_super_swap to fn_win_swap for consistency
> with the downstream version of the driver.

Please don't mix changes like this.

Hans, what do you think about the rename in this patch? (To me "super" 
sounds the normal terminology in Linux world so it feels a step 
backwards.)

-- 
 i.

> Cc: Aakash Singh <mail@singhaakash.dev>
> Cc: Jose Angel Pastrana <japp0005@red.ujaen.es>
> Signed-off-by: Nikita Kravets <teackot@gmail.com>
> ---
>  drivers/platform/x86/msi-ec.c | 19 +++++++++----------
>  drivers/platform/x86/msi-ec.h |  4 ++--
>  2 files changed, 11 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/platform/x86/msi-ec.c b/drivers/platform/x86/msi-ec.c
> index f26a3121092f..3074aee878c1 100644
> --- a/drivers/platform/x86/msi-ec.c
> +++ b/drivers/platform/x86/msi-ec.c
> @@ -58,7 +58,7 @@ static struct msi_ec_conf CONF0 __initdata = {
>  		.block_address = 0x2f,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = 0xbf,
>  		.bit     = 4,
>  	},
> @@ -138,7 +138,7 @@ static struct msi_ec_conf CONF1 __initdata = {
>  		.block_address = 0x2f,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = 0xbf,
>  		.bit     = 4,
>  	},
> @@ -215,7 +215,7 @@ static struct msi_ec_conf CONF2 __initdata = {
>  		.block_address = 0x2f,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = 0xe8,
>  		.bit     = 4,
>  	},
> @@ -276,14 +276,13 @@ static struct msi_ec_conf CONF2 __initdata = {
>  
>  static const char * const ALLOWED_FW_3[] __initconst = {
>  	"1592EMS1.111",
> -	"E1592IMS.10C",
>  	NULL
>  };
>  
>  static struct msi_ec_conf CONF3 __initdata = {
>  	.allowed_fw = ALLOWED_FW_3,
>  	.charge_control = {
> -		.address      = 0xef,
> +		.address      = 0xd7,
>  		.offset_start = 0x8a,
>  		.offset_end   = 0x80,
>  		.range_min    = 0x8a,
> @@ -294,7 +293,7 @@ static struct msi_ec_conf CONF3 __initdata = {
>  		.block_address = 0x2f,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = 0xe8,
>  		.bit     = 4,
>  	},
> @@ -372,7 +371,7 @@ static struct msi_ec_conf CONF4 __initdata = {
>  		.block_address = 0x2f,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = MSI_EC_ADDR_UNKNOWN, // supported, but unknown
>  		.bit     = 4,
>  	},
> @@ -451,7 +450,7 @@ static struct msi_ec_conf CONF5 __initdata = {
>  		.block_address = 0x2f,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = { // todo: reverse
> +	.fn_win_swap = { // todo: reverse
>  		.address = 0xbf,
>  		.bit     = 4,
>  	},
> @@ -529,7 +528,7 @@ static struct msi_ec_conf CONF6 __initdata = {
>  		.block_address = MSI_EC_ADDR_UNSUPP,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = 0xbf, // todo: reverse
>  		.bit     = 4,
>  	},
> @@ -609,7 +608,7 @@ static struct msi_ec_conf CONF7 __initdata = {
>  		.block_address = MSI_EC_ADDR_UNSUPP,
>  		.bit           = 1,
>  	},
> -	.fn_super_swap = {
> +	.fn_win_swap = {
>  		.address = 0xbf, // needs testing
>  		.bit     = 4,
>  	},
> diff --git a/drivers/platform/x86/msi-ec.h b/drivers/platform/x86/msi-ec.h
> index be3533dc9cc6..086351217505 100644
> --- a/drivers/platform/x86/msi-ec.h
> +++ b/drivers/platform/x86/msi-ec.h
> @@ -40,7 +40,7 @@ struct msi_ec_webcam_conf {
>  	int bit;
>  };
>  
> -struct msi_ec_fn_super_swap_conf {
> +struct msi_ec_fn_win_swap_conf {
>  	int address;
>  	int bit;
>  };
> @@ -108,7 +108,7 @@ struct msi_ec_conf {
>  
>  	struct msi_ec_charge_control_conf charge_control;
>  	struct msi_ec_webcam_conf         webcam;
> -	struct msi_ec_fn_super_swap_conf  fn_super_swap;
> +	struct msi_ec_fn_win_swap_conf    fn_win_swap;
>  	struct msi_ec_cooler_boost_conf   cooler_boost;
>  	struct msi_ec_shift_mode_conf     shift_mode;
>  	struct msi_ec_super_battery_conf  super_battery;
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config
  2023-09-29 16:07   ` Ilpo Järvinen
@ 2023-10-04 13:47     ` Hans de Goede
  2023-10-06 17:32       ` Nikita Kravets
  0 siblings, 1 reply; 6+ messages in thread
From: Hans de Goede @ 2023-10-04 13:47 UTC (permalink / raw)
  To: Ilpo Järvinen, Nikita Kravets
  Cc: platform-driver-x86, Aakash Singh, Jose Angel Pastrana

Hi Nikita, Ilpo,

Nikita, great to see that you are back to contributing to
the driver upstream.

On 9/29/23 18:07, Ilpo Järvinen wrote:
> 
> On Fri, 29 Sep 2023, Nikita Kravets wrote:
> 
>> Fix the charge control address of CONF3 and remove an incorrect firmware
>> version which turned out to be a BIOS firmware and not an EC firmware.
> 
> Should there be a Fixes tag?
> 
>> This patch also renames fn_super_swap to fn_win_swap for consistency
>> with the downstream version of the driver.
> 
> Please don't mix changes like this.
> 
> Hans, what do you think about the rename in this patch?

I agree with you that the config fixes and the rename should be 2 separate patches.

> (To me "super" 
> sounds the normal terminology in Linux world so it feels a step 
> backwards.)

win/super is used interchangeable in many places and only old Unix/X11
folks really know/expect the super name.

So I'm fine with the rename.

Also as Nikita mentions this keeps the code in sync with the out of
tree driver, which currently has many more features then the mainline
driver.

The plan is to upstream those features one by one (or a few at a time).

Given the situation with an out of tree driver + a mainline one
for now keeping the per laptop model config in sync (which is the
trickiest part to test) is a good idea IMHO.

So ack from me for doing the rename.

Regards,

Hans





^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config
  2023-10-04 13:47     ` Hans de Goede
@ 2023-10-06 17:32       ` Nikita Kravets
  0 siblings, 0 replies; 6+ messages in thread
From: Nikita Kravets @ 2023-10-06 17:32 UTC (permalink / raw)
  To: Hans de Goede, Ilpo Järvinen
  Cc: platform-driver-x86, Aakash Singh, Jose Angel Pastrana

Hi!

Thank you for the comments, I will send a modified patch series soon!

Regards,
Nikita

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-10-06 17:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-29 11:31 [PATCH 0/2] platform/x86: msi-ec: add and fix EC configs Nikita Kravets
2023-09-29 11:31 ` [PATCH 1/2] platform/x86: msi-ec: Fix the 3rd config Nikita Kravets
2023-09-29 16:07   ` Ilpo Järvinen
2023-10-04 13:47     ` Hans de Goede
2023-10-06 17:32       ` Nikita Kravets
2023-09-29 11:31 ` [PATCH 2/2] platform/x86: msi-ec: Add more EC configs Nikita Kravets

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.