* Andy Shevchenko andy.shevchenko@gmail.com [180618 08:25]:
On Sat, Jun 16, 2018 at 2:08 PM H. Nikolaus Schaller hns@goldelico.com wrote:
But it looks as if we still have duplicate assignments by deferred probing, i.e. some cleanup is missing (or is this intended behaviour?).
But I think the fundamental problem is that the same driver assigns multiple slots if probing is deferred.
Indeed.
I think there is a simple way to clean up pinctrl stuff on failed probe. See https://elixir.bootlin.com/linux/v4.18-rc1/source/drivers/base/dd.c#L416
We only bind pins, and do not perform any actions when failure happens later on.
Yup seems like a good approach. I'll take a look if we can just check if the function or group name already exists and return the existing selector in that case.
Regards,
Tony