BeardOverflow / msi-ec

GNU General Public License v2.0
134 stars 41 forks source link

Titan GT77 HX #43

Open ChristianMayer opened 1 year ago

ChristianMayer commented 1 year ago

I've got a Titan GT77 HX 13VH-045 that I like to be supported, but it's not on the list of the tested devices.

Can I help somehow? E.g. read out some data? (Dual boot with Windows is available)? Is there a how to / manual somewhere of what I should follow?

davidrohr commented 11 months ago

I also have GT77 and would love seeing support for it, particularly now that msi-ec is in the vanilla kernel. If I can provide any dump of ec data to add support, please let me know.

blenheimears commented 1 month ago

Here's a preliminary configuration I came up with. I couldn't find the fan speed, temperatures, keyboard backlight, or other LEDs, but most other settings should work:

static const char *ALLOWED_FW_20[] __initconst = { "17Q2IMS1.10D", // MSI Titan GT77HX 13VH NULL };

static struct msi_ec_conf CONF20 __initdata = { .allowed_fw = ALLOWED_FW_20, .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 }, //eco works as expected (much slower, uses less power and lower fan speeds) { SM_COMFORT_NAME, 0xc1 }, //comfort, sport, and turbo all seem to be the same { SM_SPORT_NAME, 0xc0 }, { SM_TURBO_NAME, 0xc4 }, MSI_EC_MODE_NULL }, }, .super_battery = { .address = MSI_EC_ADDR_UNSUPP, .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 = MSI_EC_ADDR_UNKNOWN, .rt_fan_speed_address = MSI_EC_ADDR_UNKNOWN, .rt_fan_speed_base_min = 0x00, .rt_fan_speed_base_max = 0x96, .bs_fan_speed_address = MSI_EC_ADDR_UNKNOWN, .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_UNKNOWN, .mute_led_address = MSI_EC_ADDR_UNKNOWN, .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, }, };

glpnk commented 1 month ago

@blenheimears Hi, thanks for your draft config. Please send EC dump for collection.

blenheimears commented 1 month ago

Here's the EC dump:

 | _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _a _b _c _d _e _f

-----+------------------------------------------------ 0x0 | 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x1 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x2 | 00 00 00 00 00 00 00 00 0a 05 00 00 00 00 1b 5b 0x3 | 01 01 00 0d 00 00 50 81 6a 18 60 3b 71 02 c0 00 0x4 | 35 0c 5c 00 5e 18 00 00 44 16 e8 41 dc 0b f8 43 0x5 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x6 | 00 00 00 00 00 00 00 00 34 00 37 40 46 4c 52 58 0x7 | 64 19 19 19 23 37 41 46 50 00 0a 03 03 03 03 03 0x8 | 2b 00 34 3a 40 46 4c 52 64 00 00 1e 28 37 3c 46 0x9 | 50 5f 07 03 03 03 03 03 02 00 00 02 00 00 00 00 0xa | 31 37 51 32 49 4d 53 31 2e 31 30 44 31 30 31 36 0xb | 32 30 32 33 31 34 3a 33 38 3a 31 33 00 00 00 08 0xc | 00 00 06 31 00 00 00 00 01 4d 00 00 00 00 00 00 0xd | 00 00 c4 80 0d 00 04 bc 00 00 00 00 00 08 00 00 0xe | e2 00 00 5b 18 00 00 40 01 00 00 00 02 c6 00 00 0xf | 00 00 70 80 28 44 3a 00 44 3a 00 00 00 00 00 00