参照元

説明

引数

返り値

参考

実装

/**
 * 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;
        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;
#ifdef 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);
        dev_dbg(dev, "ASoC: Registered platform '%s'\n",
                platform->component.name);
        return 0;
}
EXPORT_SYMBOL_GPL(snd_soc_add_platform);

コメント


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-02-15 (月) 11:36:44