[PATCH V2 2/2] mfd: stmpe: Extend DT support in stmpe driver

Lee Jones lee.jones at linaro.org
Sat Nov 24 02:43:11 EST 2012


On Fri, 23 Nov 2012, Viresh Kumar wrote:

> On 23 November 2012 15:06, Lee Jones <lee.jones at linaro.org> wrote:
> > On Fri, 23 Nov 2012, Viresh Kumar wrote:
> >>       pdev = platform_device_alloc(cell->name, id + cell->id);
> >>
> >> This is required when we have multiple instances of MFD device present
> >> on board. How do you want me to handle this ?
> >
> > There are lots of examples of this already. I have to leave something
> > to the imagination, or I'll be requesting a cut of your salary. :D
> 
> My manager already reduced my salary by 20% after reading this mail :(

Ah, Good. 

Tell your manager I'll send my offshore bank details over soon. :)

> Ok, this is what my understanding of whole this is. Platform devices are
> named like:
> - pdev-name: if id passed in pdev.id is -1
> - pdev-name.0[1|2|...]: if id passed is 0[1|2|...]
> - pdev-name.<dynamically allocated by kernel>: if id passed is -2
> 
> Now, we don't declare cell->id fields and they are currently zero and so
> value is passed from pdata->id field. So, for example with multiple instances
> of stmpe on a board, we have:
> 
> - stmpe-0: //Name just for reference...
>    - stmpe-gpio.0
>    - stmpe-ts.0
> - stmpe-1:
>    - stmpe-gpio.1
>    - stmpe-ts.1
> - stmpe-2:
>    - stmpe-gpio.2
>    - stmpe-ts.2
> 
> I main idea is to distinguish various instances of sub modules, like stmpe-gpio.
> And this works well with non-DT support we have currently.

Yes, when !DT, then passing ID is no problem.

> With DT, i am not sure how should we pass id field to mfd_add_devices(). If
> we pass it -1, then multiple instances will have same name: "stmpe-gpio"

No, in DT devices named as part of the hiearchy, so you'd have:

soc-u9500/i2c at 80004000/stmpe1601 at 40/stmpe_keypad
soc-u9500/i2c at 80004000/stmpe1601 at 41/stmpe_keypad
... etc

The only time we need to be concerned is if one stmpe device can
handle more than one keypad, gpio controller, etc. Which I don't
think is the case.

> Sorry, for my lack of knowledge. Don't send another mail with salary cut
> suggestion as that will make it -40% in total ;)

Ah, I promise I'll spend it wisely. :)

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog


More information about the devicetree-discuss mailing list