On Tue, Aug 27, 2019 at 9:28 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > Another day; another DSDT bug we need to workaround... > > Since commit ca876c7483b6 ("gpiolib-acpi: make sure we trigger edge events > at least once on boot") we call _AEI edge handlers at boot. > > In some rare cases this causes problems. One example of this is the Minix > Neo Z83-4 mini PC, this device has a clear DSDT bug where it has some copy > and pasted code for dealing with Micro USB-B connector host/device role > switching, while the mini PC does not even have a micro-USB connector. > This code, which should not be there, messes with the DDC data pin from > the HDMI connector (switching it to GPIO mode) breaking HDMI support. > > To avoid problems like this, this commit adds a new > gpiolib_acpi.run_edge_events_on_boot kernel commandline option, which > allows disabling the running of _AEI edge event handlers at boot. > > The default value is -1/auto which uses a DMI based blacklist, the initial > version of this blacklist contains the Neo Z83-4 fixing the HDMI breakage. > > Cc: stable@xxxxxxxxxxxxxxx > Cc: Daniel Drake <drake@xxxxxxxxxxxx> > Cc: Ian W MORRISON <ianwmorrison@xxxxxxxxx> > Reported-by: Ian W MORRISON <ianwmorrison@xxxxxxxxx> > Suggested-by: Ian W MORRISON <ianwmorrison@xxxxxxxxx> > Fixes: ca876c7483b6 ("gpiolib-acpi: make sure we trigger edge events at least once on boot") > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > --- > Changes in v2: > - Use a module_param instead of __setup > - Do DMI check only once from a postcore_initcall Patch applied for fixes, thanks for working this out, sorry for slow reply. Yours, Linus Walleij