On Wed, 7 Jan 2015 15:41:38 +0000 Russell King - ARM Linux linux@arm.linux.org.uk wrote:
On Wed, Jan 07, 2015 at 03:10:47PM +0000, Andrew Jackson wrote:
On 01/07/15 10:51, Jean-Francois Moine wrote:
diff --git a/drivers/gpu/drm/i2c/Kconfig b/drivers/gpu/drm/i2c/Kconfig index 22c7ed6..24fc975 100644 --- a/drivers/gpu/drm/i2c/Kconfig +++ b/drivers/gpu/drm/i2c/Kconfig @@ -28,6 +28,7 @@ config DRM_I2C_SIL164 config DRM_I2C_NXP_TDA998X tristate "NXP Semiconductors TDA998X HDMI encoder" default m if DRM_TILCDC
select SND_SOC_TDA998X
Do you need this since sound/soc/codecs/Kconfig conditionally brings in the CODEC driver?
For SND_SOC_ALL_CODECS only.
More importantly, it's broken, because it'll cause Kconfig to complain if you enable DRM_I2C_NXP_TDA998X, but have ASoC disabled.
Moreover, if you decide you want the sound and ASoC built as a module, but want to build in DRM and TDA998x support (so you can get video output working on boot before initramfs/rootfs), Kconfig may well complain.
select SND_SOC_TDA998X if SND_SOC
should work in all cases.
+static int __init tda998x_codec_init(void) +{
return 0;
+} +static void __exit tda998x_codec_exit(void) +{ +} +module_init(tda998x_codec_init); +module_exit(tda998x_codec_exit);
There's no need for these if they remain as the above. Modules can have both init/exit functions, or neither, and they are still unloadable. Only modules which provide only an init function get locked in on load.
Thanks.