[alsa-devel] [PATCH 11/19] ASoC: wm8776: Convert to module_i2c/spi_driver()

kbuild test robot lkp at intel.com
Tue Nov 15 18:51:18 CET 2016


Hi Kuninori,

[auto build test WARNING on v4.9-rc5]
[cannot apply to asoc/for-next next-20161115]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Kuninori-Morimoto/ASoC-Convert-to-module_i2c-spi_driver/20161116-005820
config: x86_64-randconfig-x014-201646 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All warnings (new ones prefixed by >>):

   In file included from sound/soc/codecs/wm8776.c:15:0:
   include/linux/module.h:130:27: error: redefinition of '__inittest'
     static inline initcall_t __inittest(void)  \
                              ^
   include/linux/device.h:1353:1: note: in expansion of macro 'module_init'
    module_init(__driver##_init); \
    ^~~~~~~~~~~
   include/linux/i2c.h:751:2: note: in expansion of macro 'module_driver'
     module_driver(__i2c_driver, i2c_add_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:547:1: note: in expansion of macro 'module_i2c_driver'
    module_i2c_driver(wm8776_i2c_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:130:27: note: previous definition of '__inittest' was here
     static inline initcall_t __inittest(void)  \
                              ^
   include/linux/device.h:1353:1: note: in expansion of macro 'module_init'
    module_init(__driver##_init); \
    ^~~~~~~~~~~
   include/linux/spi/spi.h:290:2: note: in expansion of macro 'module_driver'
     module_driver(__spi_driver, spi_register_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:498:1: note: in expansion of macro 'module_spi_driver'
    module_spi_driver(wm8776_spi_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:132:6: error: redefinition of 'init_module'
     int init_module(void) __attribute__((alias(#initfn)));
         ^
   include/linux/device.h:1353:1: note: in expansion of macro 'module_init'
    module_init(__driver##_init); \
    ^~~~~~~~~~~
   include/linux/i2c.h:751:2: note: in expansion of macro 'module_driver'
     module_driver(__i2c_driver, i2c_add_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:547:1: note: in expansion of macro 'module_i2c_driver'
    module_i2c_driver(wm8776_i2c_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:132:6: note: previous definition of 'init_module' was here
     int init_module(void) __attribute__((alias(#initfn)));
         ^
   include/linux/device.h:1353:1: note: in expansion of macro 'module_init'
    module_init(__driver##_init); \
    ^~~~~~~~~~~
   include/linux/spi/spi.h:290:2: note: in expansion of macro 'module_driver'
     module_driver(__spi_driver, spi_register_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:498:1: note: in expansion of macro 'module_spi_driver'
    module_spi_driver(wm8776_spi_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:136:27: error: redefinition of '__exittest'
     static inline exitcall_t __exittest(void)  \
                              ^
   include/linux/device.h:1358:1: note: in expansion of macro 'module_exit'
    module_exit(__driver##_exit);
    ^~~~~~~~~~~
   include/linux/i2c.h:751:2: note: in expansion of macro 'module_driver'
     module_driver(__i2c_driver, i2c_add_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:547:1: note: in expansion of macro 'module_i2c_driver'
    module_i2c_driver(wm8776_i2c_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:136:27: note: previous definition of '__exittest' was here
     static inline exitcall_t __exittest(void)  \
                              ^
   include/linux/device.h:1358:1: note: in expansion of macro 'module_exit'
    module_exit(__driver##_exit);
    ^~~~~~~~~~~
   include/linux/spi/spi.h:290:2: note: in expansion of macro 'module_driver'
     module_driver(__spi_driver, spi_register_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:498:1: note: in expansion of macro 'module_spi_driver'
    module_spi_driver(wm8776_spi_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:138:7: error: redefinition of 'cleanup_module'
     void cleanup_module(void) __attribute__((alias(#exitfn)));
          ^
   include/linux/device.h:1358:1: note: in expansion of macro 'module_exit'
    module_exit(__driver##_exit);
    ^~~~~~~~~~~
   include/linux/i2c.h:751:2: note: in expansion of macro 'module_driver'
     module_driver(__i2c_driver, i2c_add_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:547:1: note: in expansion of macro 'module_i2c_driver'
    module_i2c_driver(wm8776_i2c_driver);
    ^~~~~~~~~~~~~~~~~
   include/linux/module.h:138:7: note: previous definition of 'cleanup_module' was here
     void cleanup_module(void) __attribute__((alias(#exitfn)));
          ^
   include/linux/device.h:1358:1: note: in expansion of macro 'module_exit'
    module_exit(__driver##_exit);
    ^~~~~~~~~~~
   include/linux/spi/spi.h:290:2: note: in expansion of macro 'module_driver'
     module_driver(__spi_driver, spi_register_driver, \
     ^~~~~~~~~~~~~
>> sound/soc/codecs/wm8776.c:498:1: note: in expansion of macro 'module_spi_driver'
    module_spi_driver(wm8776_spi_driver);
    ^~~~~~~~~~~~~~~~~

vim +/module_i2c_driver +547 sound/soc/codecs/wm8776.c

   492			.name	= "wm8776",
   493			.of_match_table = wm8776_of_match,
   494		},
   495		.probe		= wm8776_spi_probe,
   496		.remove		= wm8776_spi_remove,
   497	};
 > 498	module_spi_driver(wm8776_spi_driver);
   499	#endif /* CONFIG_SPI_MASTER */
   500	
   501	#if IS_ENABLED(CONFIG_I2C)
   502	static int wm8776_i2c_probe(struct i2c_client *i2c,
   503				    const struct i2c_device_id *id)
   504	{
   505		struct wm8776_priv *wm8776;
   506		int ret;
   507	
   508		wm8776 = devm_kzalloc(&i2c->dev, sizeof(struct wm8776_priv),
   509				      GFP_KERNEL);
   510		if (wm8776 == NULL)
   511			return -ENOMEM;
   512	
   513		wm8776->regmap = devm_regmap_init_i2c(i2c, &wm8776_regmap);
   514		if (IS_ERR(wm8776->regmap))
   515			return PTR_ERR(wm8776->regmap);
   516	
   517		i2c_set_clientdata(i2c, wm8776);
   518	
   519		ret =  snd_soc_register_codec(&i2c->dev,
   520				&soc_codec_dev_wm8776, wm8776_dai, ARRAY_SIZE(wm8776_dai));
   521	
   522		return ret;
   523	}
   524	
   525	static int wm8776_i2c_remove(struct i2c_client *client)
   526	{
   527		snd_soc_unregister_codec(&client->dev);
   528		return 0;
   529	}
   530	
   531	static const struct i2c_device_id wm8776_i2c_id[] = {
   532		{ "wm8775", WM8775 },
   533		{ "wm8776", WM8776 },
   534		{ }
   535	};
   536	MODULE_DEVICE_TABLE(i2c, wm8776_i2c_id);
   537	
   538	static struct i2c_driver wm8776_i2c_driver = {
   539		.driver = {
   540			.name = "wm8776",
   541			.of_match_table = wm8776_of_match,
   542		},
   543		.probe =    wm8776_i2c_probe,
   544		.remove =   wm8776_i2c_remove,
   545		.id_table = wm8776_i2c_id,
   546	};
 > 547	module_i2c_driver(wm8776_i2c_driver);
   548	#endif
   549	
   550	MODULE_DESCRIPTION("ASoC WM8776 driver");

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 25588 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20161116/5993a144/attachment-0001.bin>


More information about the Alsa-devel mailing list