Re: Recommendations for a new MFD device driver?

From: Mark Brown
Date: Fri Feb 06 2015 - 06:54:36 EST


On Fri, Feb 06, 2015 at 11:10:06AM +0100, Sascha Hauer wrote:

> 1) Put it into the RTC device driver.
> 2) Put it into the .resource field of struct mfd_cell
> 3) Put it into the device tree using standard reg, interrupt properties and
> a) Let the RTC driver interpret these
> b) Let the MFD driver create resources in the .resource field of struct
> mfd_cell
> c) Let the MFD core create the resources

> I have a tendency to 3, but I'm afraid that the resource informations
> are duplicated too much in the device tree source files, because every
> user would have to carry a full description of the mfd device. Maybe
> that duplication could be reduced with some CPP magic, I don't know.

> Maybe this is a solved problem and I'm just not picking a good example
> from drivers/mfd.

The wm831x drivers take option 2 but are pre-DT, it still seems the most
sensible thing to me though - no need for the user to have to repeat
this information in every DT and easy to add new stuff if we need it.
You could use a .dtsi like we use for SoCs to reduce the duplication
required if you do decide to put things in the DT.

Attachment: signature.asc
Description: Digital signature