Messages in this thread | | | Subject | Re: [PATCH v2 1/6] gpio: exar: Fix passing in of parent PCI device | From | Jan Kiszka <> | Date | Sun, 21 May 2017 13:44:17 +0200 |
| |
On 2017-05-18 19:14, Andy Shevchenko wrote: > On Thu, May 18, 2017 at 5:59 PM, Jan Kiszka <jan.kiszka@siemens.com> wrote: >> This fixes reloading of the GPIO driver for the same platform device >> instance as created by the exar UART driver: First of all, the driver >> sets drvdata to its own value during probing and does not restore the >> original value on exit. But this won't help anyway as the core clears >> drvdata after the driver left. >> >> Use stable platform_data instead. > > Okay, basically what we are trying to do here is to reinvent part of > MFD framework. > > I'd like to hear Linus' and others opinions if it worth to use it instead. >
I've looked into MFD modeling, but it would only make sense if we break up the exar driver, change its xr17v35x part into a platform device and create a dual-cell MFD for the PCI device. I don't think that would be beneficial here. There are also dependencies between the UART part and the MPIOs, specifically during init. All that would create a lot of churn to the existing exar code.
I'm now passing the parent reference via device.parent instead of using platform data.
Jan
-- Siemens AG, Corporate Technology, CT RDA ITP SES-DE Corporate Competence Center Embedded Linux
| |