RE: [PATCH V1 04/10] watchdog: da9061: watchdog driver (RFC)

From: Steve Twiss
Date: Sat Oct 08 2016 - 02:34:28 EST


On 08 October 2016 01:22, Guenter Roeck wrote:
> On 10/07/2016 04:35 PM, Dmitry Torokhov wrote:
> > On Fri, Oct 07, 2016 at 06:01:23PM +0000, Steve Twiss wrote:
> >> On 07 October 2016 18:02, Guenter Roeck wrote:
> >>
> >>>> On 06 October 2016 19:49, Guenter Roeck wrote:
> >>>>> On Thu, Oct 06, 2016 at 04:28:14PM +0000, Steve Twiss wrote:
> >>>>>> I am using the compatible string to pick a different configuration .data block:
> >>>>>> { .compatible = "dlg,da9062-watchdog", .data = &da9062_watchdog_info },
> >>>>>> { .compatible = "dlg,da9061-watchdog", .data = &da9061_watchdog_info },
> >>>>>>
> >>>>>> But, it is just my opinion to keep the "name" different.
> >>>>>> This will not be my decision if accepted into the Linux kernel, but I would like to
> >>>>>> at least be consistent for DA9061 and DA9062 so ... is this an issue?
> >>>>>
> >>>>> FWIW the driver doesn't really need to be updated in the first place.
> >>>>> A compatible statement listing both da9061 and da9062 would do it.
> >>>>
> >>>> I will make the changes you requested: deprecate the existing compatibility
> >>>> for da9062-watchdog and make a new compatibility string which combines both
> >>>> da9061 and da9062.
> >>>>
> >>> That is not what I asked for.
> >>
> >> Ok. Did you mean separate compatible statements with data sections pointing at
> >> the same structure?
> >>
> >> Like this:
> >> { .compatible = "dlg,da9062-watchdog", .data = &da9062_watchdog_info },
> >> { .compatible = "dlg,da9061-watchdog", .data = &da9062_watchdog_info },
> >>
> >> So this would be the only change needed in the device driver.
> >
> > If there is no change in IP block then I do not see why we need to
> > introduce new names at all. The dts can specify fallback compatible
> > stting. Note, it is called *compatible* not "model" or "device id" or
> > whatever. So you can just say in DTS:
> >
> > compatible = "dlg,da9061-watchdog", "dlg,da9062-watchdog";
> >
> > and leave the driver alone. That goes for input part as well. You only
> > need to add new compatible to the driver when it in fact is
> > *incompatible* with the existing blocks.
> >
> Yes, exactly.

Dmitry, Guenter,
Thanks for putting things straight on this.