On Sun, May 21, 2017 at 1:44 PM, Jan Kiszka <jan.kiszka@xxxxxxxxxxx> wrote: > On 2017-05-18 19:14, Andy Shevchenko wrote: >> On Thu, May 18, 2017 at 5:59 PM, Jan Kiszka <jan.kiszka@xxxxxxxxxxx> 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. Actually I am pretty much OK with either, there are gray areas in the device model and so it has to be sometimes. I'd just like Greg's ACK on this so I can merge the whole series through the GPIO tree. Incidentally, he is the device model maintainer so he might have some comments. Or be as tolerant as me. I don't know. Greg? Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html