diff --git a/docs/supported_devices.md b/docs/supported_devices.md index bd086cd..4fc7d7b 100644 --- a/docs/supported_devices.md +++ b/docs/supported_devices.md @@ -17,6 +17,7 @@ | GF63 Thin 11UC | 16R6EMS1 | Issues:
- [#72](https://github.com/BeardOverflow/msi-ec/issues/72)
- [#114](https://github.com/BeardOverflow/msi-ec/issues/114)
PRs:
- [#74](https://github.com/BeardOverflow/msi-ec/pull/74),
- [#117](https://github.com/BeardOverflow/msi-ec/pull/117) | 12 | ✔️ Battery thresholds
✔️ Webcam toggle
✔️ Webcam block
✔️ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
❌ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | | GF75 Thin 9SC | 17F2EMS1 | PRs:
- [#22](https://github.com/BeardOverflow/msi-ec/pull/22) | 1 | ✔️ Battery thresholds
✔️ Webcam toggle
✔️ Webcam block
✔️ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
✔️ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | | Katana GF66 11UC / 11UD | 1582EMS1 | PRs:
- [#39](https://github.com/BeardOverflow/msi-ec/pull/39) | 10 | ✔️ Battery thresholds
✔️ Webcam toggle
✔️ Webcam block
❌ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
✔️ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | +| Katana GF66 11UE / 11UG | 1581EMS1 | Issues:
- [#38](https://github.com/BeardOverflow/msi-ec/issues/38)
PRs:
- [#129](https://github.com/BeardOverflow/msi-ec/pull/129) | 20 | ✔️ Battery thresholds
✔️ Webcam toggle
✔️ Webcam block
✔️ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
✔️ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | | Katana 17 B11UCX | 17L2EMS1 | PRs:
- [#97](https://github.com/BeardOverflow/msi-ec/pull/97) | 14 | ✔️ Battery thresholds
✔️ Webcam toggle
✔️ Webcam block
✔️ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
✔️ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | | Prestige 14 A10SC | 14C1EMS1 | PRs:
- [#22](https://github.com/BeardOverflow/msi-ec/pull/22) | 0 | ✔️ Battery thresholds
✔️ Webcam toggle
✔️ Webcam block
✔️ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
✔️ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | | Prestige 15 A11SCX | 16S6EMS1 | PRs:
- [#40](https://github.com/BeardOverflow/msi-ec/pull/40) | 11 | ✔️ Battery thresholds
✔️ Webcam toggle
❌ Webcam block
✔️ Fn <-> Win
✔️ Cooler boost
✔️ Shift mode
✔️ Fan mode
✔️ Mic mute LED
✔️ Sound mute LED
✔️ Keyboard backlight intensity | diff --git a/msi-ec.c b/msi-ec.c index 854018c..f0e71a6 100644 --- a/msi-ec.c +++ b/msi-ec.c @@ -1656,6 +1656,85 @@ static struct msi_ec_conf CONF19 __initdata = { }, }; +static const char *ALLOWED_FW_20[] __initconst = { + "1581EMS1.107", // GF66 11UE & GF66 11UG + NULL +}; + +static struct msi_ec_conf CONF20 __initdata = { + .allowed_fw = ALLOWED_FW_20, + .charge_control = { // tested + .address = 0xd7, + .offset_start = 0x8a, + .offset_end = 0x80, + .range_min = 0x8a, + .range_max = 0xe4, + }, + .webcam = { // tested + .address = 0x2e, + .block_address = 0x2f, + .bit = 1, + }, + .fn_win_swap = { // tested + .address = 0xe8, + .bit = 4, + .invert = true, + }, + .cooler_boost = { // tested + .address = 0x98, + .bit = 7, + }, + .shift_mode = { // tested + .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 = { // tested + .address = 0xeb, + .mask = 0x0f, + }, + .fan_mode = { // tested + .address = 0xd4, + .modes = { + { FM_AUTO_NAME, 0x0d }, + { FM_SILENT_NAME, 0x1d }, + { FM_ADVANCED_NAME, 0x8d }, + MSI_EC_MODE_NULL + }, + }, + .cpu = { + .rt_temp_address = 0x68, // tested + .rt_fan_speed_address = 0xc9, // tested + .rt_fan_speed_base_min = 0x00, // ! observed on machine (0x35 when fans was at min), but not working ! + .rt_fan_speed_base_max = 0x96, // ! ^ (0x56 with fans on cooler boost) ! + .bs_fan_speed_address = MSI_EC_ADDR_UNSUPP, // reason: no such setting in the "MSI Center", checked in version 2.0.35 + .bs_fan_speed_base_min = 0x00, + .bs_fan_speed_base_max = 0x0f, + }, + .gpu = { + .rt_temp_address = 0x80, // tested + .rt_fan_speed_address = 0xcb, // ! observed the file reporting over 100% fan speed, which should not be possible ! + }, + .leds = { // tested + .micmute_led_address = 0x2c, + .mute_led_address = 0x2d, + .bit = 1, + }, + .kbd_bl = { // tested + .bl_mode_address = MSI_EC_ADDR_UNSUPP, // reason: no such setting in the "MSI Center", checked in version 2.0.35 + .bl_modes = { 0x00, 0x08 }, + .max_mode = 1, + .bl_state_address = 0xd3, + .state_base_value = 0x80, + .max_state = 3, + }, +}; + static struct msi_ec_conf *CONFIGURATIONS[] __initdata = { &CONF0, &CONF1, @@ -1677,6 +1756,7 @@ static struct msi_ec_conf *CONFIGURATIONS[] __initdata = { &CONF17, &CONF18, &CONF19, + &CONF20, NULL };