On Fri, Nov 26, 2021 at 3:28 PM Henning Schild <henning.schild@xxxxxxxxxxx> wrote: > Am Tue, 30 Mar 2021 14:04:35 +0300 > schrieb Andy Shevchenko <andy.shevchenko@xxxxxxxxx>: > > On Mon, Mar 29, 2021 at 8:59 PM Henning Schild > > <henning.schild@xxxxxxxxxxx> wrote: ... > > > +static struct simatic_ipc_led simatic_ipc_leds_mem[] = { > > > + {0x500 + 0x1A0, "red:" LED_FUNCTION_STATUS "-1"}, > > > + {0x500 + 0x1A8, "green:" LED_FUNCTION_STATUS "-1"}, > > > + {0x500 + 0x1C8, "red:" LED_FUNCTION_STATUS "-2"}, > > > + {0x500 + 0x1D0, "green:" LED_FUNCTION_STATUS "-2"}, > > > + {0x500 + 0x1E0, "red:" LED_FUNCTION_STATUS "-3"}, > > > + {0x500 + 0x198, "green:" LED_FUNCTION_STATUS "-3"}, > > > + { } > > > +}; > > > > It seems to me like poking GPIO controller registers directly. This > > is not good. The question still remains: Can we simply register a > > GPIO (pin control) driver and use an LED GPIO driver with an > > additional board file that instantiates it? > > The short answer for v4 will be "No we can not!". The pinctrl drivers > do not currently probe on any of the devices and attempts to fix that > have failed or gut stuck. I tried to help out where i could and waited > for a long time. I see, unfortunately I have stuck with some other (more important tasks) and can't fulfil this, but I still consider it's no go for driver poking pin control registers directly. Lemme see if I can prioritize this for next week. > Now my take is to turn the order around. We go in like that and will > happily switch to pinctrl if that ever comes up on the machines. > Meaning P2SB series on top of this, no more delays please. I don't want to slip bad code into the kernel where we can avoid that. > We do use request_region so have a mutex in place. Meaning we really > only touch GPIO while pinctrl does not! I haven't got this. On Intel SoCs GPIO is a part of pin control registers. You can't touch GPIO without touching pin control. > I see no issue here, waited for a long time and now expect to be > allowed to get merged first. Okay, I have these questions / asks so far: 1) Can firmware be fixed in order to provide an ACPI table for the pin control devices? 2) Can you share firmware (BIOS ROM file I suppose) that I may flash on an Apollo Lake machine and see if I can reproduce the issue? 3) As may be a last resort, can you share (remotely) or even send to us the device in question to try? -- With Best Regards, Andy Shevchenko