platform/x86: msi-ec: Add MSI Raider A18 HX A9WJG EC firmware

Add support for EC firmware 182LIMS1.111, found on the
MSI Raider A18 HX A9WJG.

The out-of-tree msi-ec driver probes successfully on this
machine and exports the msi-ec platform device. Without this
entry, the in-tree driver rejects the EC firmware as
unsupported.

Tested on MSI Raider A18 HX A9WJG with BIOS E182LAMS.31A.

Signed-off-by: David Glushkov <david.glushkov@sntiq.com>
Link: https://patch.msgid.link/20260528183358.552782-1-david.glushkov@sntiq.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
This commit is contained in:
David Glushkov
2026-05-28 20:33:58 +02:00
committed by Ilpo Järvinen
parent 7bc99dff4d
commit 27ef0cdcdc

View File

@@ -1130,6 +1130,86 @@ static struct msi_ec_conf CONF13 __initdata = {
},
};
static const char * const ALLOWED_FW_14[] __initconst = {
"1824EMS1.108", // Raider 18 HX AI A2XWJG (MS-1824)
"182LIMS1.108", // Vector A18 HX A9WHG
"182LIMS1.111", // MSI Raider A18 HX A9WJG / Vector A18 HX A9WHG
"182KIMS1.113", // Raider A18 HX A7VIG
NULL
};
static struct msi_ec_conf CONF14 __initdata = {
.allowed_fw = ALLOWED_FW_14,
.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_TURBO_NAME, 0xc4 },
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, 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 = 0x80,
.rt_fan_speed_address = 0x89,
},
.leds = {
.micmute_led_address = 0x2c,
.mute_led_address = 0x2d,
.bit = 1,
},
.kbd_bl = {
.bl_mode_address = MSI_EC_ADDR_UNSUPP,
.bl_modes = { 0x00, 0x08 },
.max_mode = 1,
.bl_state_address = MSI_EC_ADDR_UNSUPP,
.state_base_value = 0x80,
.max_state = 3,
},
};
static struct msi_ec_conf *CONFIGS[] __initdata = {
&CONF0,
&CONF1,
@@ -1145,6 +1225,7 @@ static struct msi_ec_conf *CONFIGS[] __initdata = {
&CONF11,
&CONF12,
&CONF13,
&CONF14,
NULL
};