[RFC PATCH 3.7.0-rc4 0/4] introduce of_simple_module_id_table macro

Grant Likely grant.likely at secretlab.ca
Wed Nov 21 03:45:31 EST 2012


On Fri, 16 Nov 2012 13:21:08 +0000, Srinivas KANDAGATLA <srinivas.kandagatla at st.com> wrote:
> From: Srinivas Kandagatla <srinivas.kandagatla at st.com>
> 
> This patch series introduces of_simple_module_id_table macro and as an example
> uses this macro in 3 files.
> 
> Most of the device tree supported drivers have of_device_id table setup with 
> single compatible entry, this use-case is very simple and common.
> 
> #ifdef CONFIG_OF
> static struct of_device_id xxx_of_match[] = {
> 	{ .compatible = "yyy,zzz" },
> 	{ },
> };
> MODULE_DEVICE_TABLE(of, xxx_of_match);
> #endif
> 
> This patch adds a macro for this simple type of device table.
> Other subsystems like pm, platform, have similar macros in kernel for
> simplest cases.
> Now the user can just replace the above code with
> 
> of_simple_module_id_table(xxx_of_match, "yyy,zzz");
> 
> There are more than 200+ hits for this type of pattern in the current kernel.

While I like the reduction in lines of source code, I'm not so fond of
the form. There is no easy way to extend the syntax for multiple
entries and it doesn't cover the frequently present .data field. Can you
think of a way to do this that can take a variable number of table
entries?

g.



More information about the devicetree-discuss mailing list