Re: [PATCH] pinctrl: denverton: Fix probe of MFD-created platform device
Andy Shevchenko <[email protected]>
| Newsgroups | org.kernel.vger.linux-gpio,org.kernel.vger.linux-kernel |
|---|---|
| Organization | Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6 krs, Bertel Jungin Aukio 5, 02600 Espoo |
| Message-ID | <[email protected]> |
On Thu, Aug 27, 2026 at 08:42:58PM +0200, Radek Válko wrote: > The Denverton pinctrl device can be instantiated by the Intel LPC > driver as an MFD platform device named "denverton-pinctrl". > > On affected systems the platform device does not carry the INTC3000 > ACPI match data itself. As a result, intel_pinctrl_probe_by_hid() > fails to obtain the SoC data using device_get_match_data() and > returns -ENODATA. > > This results in: > > denverton-pinctrl denverton-pinctrl.0: > probe with driver denverton-pinctrl failed with error -61 > > Denverton has a single fixed intel_pinctrl_soc_data instance. Pass > dnv_soc_data directly to intel_pinctrl_probe() instead of requiring > firmware match data for the MFD-created platform device. > > Tested on an Intel Atom C3000 system with LPC/eSPI device 8086:19dc. > Before this change the Denverton pinctrl driver failed to probe and > no Denverton GPIO controller was registered. After the change, > denverton-pinctrl.0 registers with pinmux and pinconf support and > exposes 154 GPIO lines. Thanks for the report. Can you instead try to replace device_get_match_data() in intel_pinctrl_probe_by_hid() by intel_pinctrl_get_soc_data() in the way how it's done in intel_pinctrl_probe_by_uid()? -- With Best Regards, Andy Shevchenko