On Tue, May 11, 2010 at 06:23:48PM +0200, apatard@xxxxxxxxxxxx wrote: > + adapter = i2c_get_adapter(0); > + if (!adapter) > + return -ENODEV; > + > + cs42l51_client = i2c_new_device(i2c_get_adapter(0), i2c_board_info); > + i2c_put_adapter(adapter); > + if (!cs42l51_client) > + return -ENODEV; This should be in the arch/arm code. There's no reason to dynamically add this at runtime. > + ret = platform_device_add_resources(openrd_client_snd_device, > + kirkwood_audio_resources, > + ARRAY_SIZE(kirkwood_audio_resources)); > + if (ret) { > + printk(KERN_ERR "%s: Failed to add ressources\n", __func__); > + return ret; > + } > + > + ret = platform_device_add(openrd_client_snd_device); > + if (ret) { > + printk(KERN_ERR "%s: platform_device_add failed\n", __func__); > + platform_device_put(openrd_client_snd_device); > + } As I said when reviewing the CPU drivers these should be part of the setup of the I2S device in arch/arm. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel