Hi,
On Thu, Mar 27, 2014 at 11:46:10AM +0100, Alexander Aring wrote:
> Linux handle this #ifdef CONFIG_OF already in of.h
>
> A static struct declaration is an already zeroed memory space, so we
> don't need a #ifdef CONFIG_OF here and we should have a small codebase.
>
> if CONFIG_OF is not defined "of_match_ptr" will return NULL otherwise it
> returns the at86rf230_of_match pointer.
>
>
> static const struct of_device_id at86rf230_of_match[] = {
> { .compatible = "atmel,at86rf230", },
> { .compatible = "atmel,at86rf231", },
> { .compatible = "atmel,at86rf233", },
> { .compatible = "atmel,at86rf212", },
> { },
> };
> MODULE_DEVICE_TABLE(of, at86rf230_of_match);
>
> static const struct spi_device_id at86rf230_device_id[] = {
> { .name = "at86rf230", },
> { .name = "at86rf231", },
> { .name = "at86rf233", },
> { .name = "at86rf212", },
> { },
> };
> MODULE_DEVICE_TABLE(spi, at86rf230_device_id);
>
> static struct spi_driver at86rf230_driver = {
> .id_table = at86rf230_device_id,
> .driver = {
> .of_match_table = of_match_ptr(at86rf230_of_match),
> .name = "at86rf230",
> .owner = THIS_MODULE,
> },
> .probe = at86rf230_probe,
> .remove = at86rf230_remove,
> };
>
> Let me know if you are fine with that.
>
With this solution "modinfo at86rf230" prints:
filename:
/lib/modules/3.14.0-rc8-01856-g8652599/kernel/drivers/net/ieee802154/at86rf230.ko
license: GPL v2
description: AT86RF230 Transceiver Driver
srcversion: 046691C0B2230A291E98B63
alias: of:N*T*Catmel,at86rf212*
alias: of:N*T*Catmel,at86rf233*
alias: of:N*T*Catmel,at86rf231*
alias: of:N*T*Catmel,at86rf230*
alias: spi:at86rf212
alias: spi:at86rf233
alias: spi:at86rf231
alias: spi:at86rf230
depends:
intree: Y
vermagic: 3.14.0-rc8-01856-g8652599 mod_unload modversions ARMv6p2v8
and it should also work if we don't have CONFIG_OF enabled.
- Alex
------------------------------------------------------------------------------
_______________________________________________
Linux-zigbee-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel