*参照元 [#m7653eec]
#backlinks

*説明 [#a6ae4c3e]
-パス: [[linux-4.4.1/sound/soc/soc-core.c]]

-FIXME: これは何?
--説明


**引数 [#db15ec6c]
-struct device *dev
--
--[[linux-4.4.1/device]]
-const struct snd_soc_component_driver *cmpnt_drv
--
--[[linux-4.4.1/snd_soc_component_driver]]
-struct snd_soc_dai_driver *dai_drv
--
--[[linux-4.4.1/snd_soc_dai_driver]]
-int num_dai
--


**返り値 [#y671ec66]
-int
--


**参考 [#tdf76197]


*実装 [#a46d5a8f]
 int snd_soc_register_component(struct device *dev,
                                const struct snd_soc_component_driver *cmpnt_drv,
                                struct snd_soc_dai_driver *dai_drv,
                                int num_dai)
 {
         struct snd_soc_component *cmpnt;
         int ret;
 
-
--[[linux-4.4.1/snd_soc_component]]

         cmpnt = kzalloc(sizeof(*cmpnt), GFP_KERNEL);
         if (!cmpnt) {
                 dev_err(dev, "ASoC: Failed to allocate memory\n");
                 return -ENOMEM;
         }
 
-
--[[linux-4.4.1/kzalloc()]]
--[[linux-4.4.1/dev_err()]]

         ret = snd_soc_component_initialize(cmpnt, cmpnt_drv, dev);
         if (ret)
                 goto err_free;
 
-
--cmpnt->dev に dev が代入される。
--[[linux-4.4.1/snd_soc_component_initialize()]]

         cmpnt->ignore_pmdown_time = true;
         cmpnt->registered_as_component = true;
 
         ret = snd_soc_register_dais(cmpnt, dai_drv, num_dai, true);
         if (ret < 0) {
                 dev_err(dev, "ASoC: Failed to register DAIs: %d\n", ret);
                 goto err_cleanup;
         }
 
-
--[[linux-4.4.1/snd_soc_register_dais()]]

         snd_soc_component_add(cmpnt);
 
-
--[[linux-4.4.1/snd_soc_component_add()]]

         return 0;
 
 err_cleanup:
         snd_soc_component_cleanup(cmpnt);
-
--[[linux-4.4.1/snd_soc_component_cleanup()]]

 err_free:
         kfree(cmpnt);
         return ret;
-
--[[linux-4.4.1/kfree()]]

 }
 EXPORT_SYMBOL_GPL(snd_soc_register_component);
-
--[[linux-4.4.1/EXPORT_SYMBOL_GPL()]]


*コメント [#b2b35ed6]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS