Hi there! I'm trying to modify msi_wmi driver to get it work with mediakeys on my MSI GE60 laptop. By default, I get "Unknown event received" message. For now, I diagnosed that event, that every key press produces has 0x03 ( ACPI_TYPE_BUFFER?) type, instead of 0x01 (ACPI_TYPE_INTEGER) which in-kernel msi_wmi module wants. Further diagnostic with that code: 232 › } else if (obj && obj->type == ACPI_TYPE_BUFFER) { 233 › › int eventcode = obj->integer.value; 234 › › pr_info("Eventcode: 0x%x\n", eventcode); 235 › › key = sparse_keymap_entry_from_scancode(msi_wmi_input_dev, 236 › › › › eventcode); 237 › › if (!key) { 238 › › › pr_info("Unknown key pressed - %x\n", eventcode); 239 › › › goto msi_wmi_notify_exit; 240 › › } 241 242 › › pr_info("%d\n",key->type); 243 › } else 244 › › pr_info("Unknown event received\n"); (only patched part) Gives me following info: Wen I press on any of media-keys — I get the same eventcode (and every time I get if(!key) error. Moreover, evencode value changes in time (something about 4 seconds), so, if I'll press some key many times, eventcode value will be changed after 4s, but it will not change if I press another mediakeys. Can anybody advice me, why can I experience such behaviour? And is it a way to get mediakeys working without patching DSDT (last time I did that I brake my bluetooth module in that way, that even rfkill was unable to enable it :P)? -- Best regsrds, mva
Attachment:
signature.asc
Description: This is a digitally signed message part.