Hi, sorry for the delayed reply. Your patch doesn't seem to work, I still have the issue where the switch is in the wrong state after suspend/resume. And yes, it's been a while, and I believe the issues did exist during that time however it was easy to ignore/forget since I'm on X11 where libinput doesn't respond to tablet mode switches, so I neglected to report the issue for a while. Also, about the BIOS, I'm a little hesistant to update it since I don't have a battery. I have version A11 and the newest is A15, but Dell's update notes only mention security fixes, so maybe it doesn't matter. On 2023-10-17 22:05, AceLan Kao wrote: > Arnold Gozum <arngozum@xxxxxxxxx> 於 2023年10月18日 週三 上午8:53寫道: >> >> Hi, >> >> In Linux 5.11, Dell Inspiron 7352 was added to the >> dmi_switches_allow_list as it is a 2-in-1 which reports a chassis type >> 10 (actually it was me who submitted the patch). >> >> However, the tablet mode switch can be unreliable. Randomly, switch >> events stop being reported and SW_TABLET_MODE will by stuck at 1 or 0, >> which I have tested by running evtest while flipping the device to and >> from tablet mode. This is fixed after a reboot, or a suspend followed by >> unloading and reloading the intel-vbtn module. It can also sometimes be >> the case that upon resume, SW_TABLET_MODE does not reflect the actual >> state of the device, which is fixed by physically flipping the screen >> back and forth to update the state. >> >> Because of these issues, I think this model should be removed from the >> allow list, unless more investigation should be done. > Hi Arnold, > > It's been a long time since you submitted the patch. Did those issues > not occur during that time? > Have you tried updating the BIOS to see if it helps? > > From your description, I think calling VBDL might reset the status. > You might want to try it below. > > diff --git a/drivers/platform/x86/intel/vbtn.c > b/drivers/platform/x86/intel/vbtn.c > index 6fa1735ad7a49..681650f52ff22 100644 > --- a/drivers/platform/x86/intel/vbtn.c > +++ b/drivers/platform/x86/intel/vbtn.c > @@ -198,6 +198,8 @@ static void notify_handler(acpi_handle handle, u32 > event, void *context) > autorelease = val && (!ke_rel || ke_rel->type == KE_IGNORE); > > sparse_keymap_report_event(input_dev, event, val, autorelease); > + > + acpi_evaluate_object(handle, "VBDL", NULL, NULL); > } > > /* > >> >> Thanks, >> Arnold