On Fri, 23 Nov 2012, Viresh Kumar wrote: > On 23 November 2012 15:06, Lee Jones <lee.jo...@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@80004000/stmpe1601@40/stmpe_keypad soc-u9500/i2c@80004000/stmpe1601@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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/