*参照元 [#s3a379e5] #backlinks *説明 [#p9ebccc3] -パス: [[linux-4.4.1/sound/soc/soc-core.c]] -FIXME: これは何? --説明 **引数 [#c4da5a60] -struct device *dev -- --[[linux-4.4.1/device]] -struct snd_soc_platform *platform -- --[[linux-4.4.1/snd_soc_platform]] -const struct snd_soc_platform_driver *platform_drv -- --[[linux-4.4.1/snd_soc_platform_driver]] **返り値 [#r42c47ae] -int -- **参考 [#p2fa106b] *実装 [#ae2e0638] /** * snd_soc_add_platform - Add a platform to the ASoC core * @dev: The parent device for the platform * @platform: The platform to add * @platform_drv: The driver for the platform */ int snd_soc_add_platform(struct device *dev, struct snd_soc_platform *platform, const struct snd_soc_platform_driver *platform_drv) { int ret; ret = snd_soc_component_initialize(&platform->component, &platform_drv->component_driver, dev); if (ret) return ret; - --[[linux-4.4.1/snd_soc_component_initialize()]] platform->dev = dev; platform->driver = platform_drv; if (platform_drv->probe) platform->component.probe = snd_soc_platform_drv_probe; if (platform_drv->remove) platform->component.remove = snd_soc_platform_drv_remove; - --[[linux-4.4.1/snd_soc_platform_drv_probe()]] --[[linux-4.4.1/snd_soc_platform_drv_remove()]] #ifdef CONFIG_DEBUG_FS - --[[linux-4.4.1/CONFIG_DEBUG_FS]] platform->component.debugfs_prefix = "platform"; #endif mutex_lock(&client_mutex); snd_soc_component_add_unlocked(&platform->component); list_add(&platform->list, &platform_list); mutex_unlock(&client_mutex); - --[[linux-4.4.1/mutex_lock()]] --[[linux-4.4.1/mutex_unlock()]] --[[linux-4.4.1/list_add()]] --[[linux-4.4.1/snd_soc_component_add_unlocked()]] dev_dbg(dev, "ASoC: Registered platform '%s'\n", platform->component.name); - --[[linux-4.4.1/dev_dbg()]] return 0; } EXPORT_SYMBOL_GPL(snd_soc_add_platform); - --[[linux-4.4.1/EXPORT_SYMBOL_GPL()]] *コメント [#u53733bb]