Re: Simple MFD driver example

From: Laszlo Papp
Date: Mon Dec 16 2013 - 09:01:01 EST


Well, if you ask me the MFD subsystem is underdocumented, and there is
some inconsistency between the drivers. It is hard to take any of them
as a starting point, at least for me. Currently, I wrote a simple one
from scratch which I will post soon.

On Mon, Dec 16, 2013 at 8:25 AM, Lee Jones <lee.jones@xxxxxxxxxx> wrote:
>> I have been trying to write about 50-100 LOC for 1-2 weeks now. I have
>> a fairly simple use case for MFD where I need to have gpio and hwmon
>> functionality for a GPIO.
>>
>> I read the mfd drivers inside and out by now, but it looks a bit
>> inconsistent to me. I am not sure what to follow etc. The
>> documentation seems to be virtually missing which makes my life and
>> involvement even more difficult. :(
>>
>> May I ask for some pointer how to do all this? It would be nice to see
>> a minimal example where the parent does not do anything else than just
>> enumerating the sub-device drivers. Is that possible with an empty
>> probe callback?
>>
>> If I understand the regmap correctly (again, it is possible I do not),
>> then I would not need this. But in general, it is really hard to deal
>> with the linux kernel in this regard when basic documentations are
>> missing.
>>
>> I hope this would change over time for the posterity. It is a pity
>> that contributors do not join probably due to this. It is a bit
>> chaotic, but I hope it can be changed in the future.
>>
>> Apologies for my frustration...
>
> Due to the nature of the MFD subsystem, there isn't a simple use-case
> which you can use as a template. It's completely dependent on the
> device you are trying to enable. There are lots of well written
> drivers in the subsystem that you can use as good examples though.
>
> Which device are you trying to write a driver for? Is there a
> datasheet you can point to?
>
> NB: When emailing subsystem maintainers for help, please don't forget
> to CC the relevant Mailing Lists. All lists can be found in the
> MAINTAINERS file, which is parsed by <kernel>/scripts/get_maintainer.pl.
>
> --
> Lee Jones
> Linaro STMicroelectronics Landing Team Lead
> Linaro.org â Open source software for ARM SoCs
> Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/