linux-2.6.33/snd_card_do_free()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#a49c044f]
#backlinks
*説明 [#ve567a4c]
-パス: [[linux-2.6.33/sound/core/init.c]]
-FIXME: これは何?
--説明
**引数 [#k9951e6b]
-struct snd_card *card
--
--[[linux-2.6.33/snd_card]]
**返り値 [#icfa6473]
-int
--成功ならば 0、失敗ならば 0 以外。
**参考 [#yc1fd927]
*実装 [#s47ad4a6]
/**
* snd_card_free - frees given soundcard structure
* @card: soundcard structure
*
* This function releases the soundcard structure and t...
* devices automatically. That is, you don't have to r...
* by yourself.
*
* Returns zero. Frees all associated devices and frees...
* interface associated to given soundcard.
*/
static int snd_card_do_free(struct snd_card *card)
{
#if defined(CONFIG_SND_MIXER_OSS) || defined(CONFIG_SND_...
-
--[[linux-2.6.33/CONFIG_SND_MIXER_OSS]]
-
--[[linux-2.6.33/CONFIG_SND_MIXER_OSS_MODULE]]
if (snd_mixer_oss_notify_callback)
snd_mixer_oss_notify_callback(card, SND_MIXER_OSS_NOTI...
-
--[[linux-2.6.33/snd_mixer_oss_notify_callback(global)]]
-
--[[linux-2.6.33/SND_MIXER_OSS_NOTIFY_FREE]]
#endif
if (snd_device_free_all(card, SNDRV_DEV_CMD_PRE) < 0) {
snd_printk(KERN_ERR "unable to free all devices (pre)\...
/* Fatal, but this situation should never occur */
}
-
--[[linux-2.6.33/snd_device_free_all()]]
-
--[[linux-2.6.33/SNDRV_DEV_CMD_PRE]]
-
--[[linux-2.6.33/snd_printk()]]
if (snd_device_free_all(card, SNDRV_DEV_CMD_NORMAL) < 0...
snd_printk(KERN_ERR "unable to free all devices (norma...
/* Fatal, but this situation should never occur */
}
-
--[[linux-2.6.33/SNDRV_DEV_CMD_NORMAL]]
if (snd_device_free_all(card, SNDRV_DEV_CMD_POST) < 0) {
snd_printk(KERN_ERR "unable to free all devices (post)...
/* Fatal, but this situation should never occur */
}
-
--[[linux-2.6.33/SNDRV_DEV_CMD_POST]]
if (card->private_free)
card->private_free(card);
snd_info_free_entry(card->proc_id);
if (snd_info_card_free(card) < 0) {
snd_printk(KERN_WARNING "unable to free card info\n");
/* Not fatal error */
}
kfree(card);
-
--[[linux-2.6.33/snd_info_free_entry()]]
-
--[[linux-2.6.33/snd_info_card_free()]]
-
--[[linux-2.6.33/kfree()]]
return 0;
}
*コメント [#rd434b61]
終了行:
*参照元 [#a49c044f]
#backlinks
*説明 [#ve567a4c]
-パス: [[linux-2.6.33/sound/core/init.c]]
-FIXME: これは何?
--説明
**引数 [#k9951e6b]
-struct snd_card *card
--
--[[linux-2.6.33/snd_card]]
**返り値 [#icfa6473]
-int
--成功ならば 0、失敗ならば 0 以外。
**参考 [#yc1fd927]
*実装 [#s47ad4a6]
/**
* snd_card_free - frees given soundcard structure
* @card: soundcard structure
*
* This function releases the soundcard structure and t...
* devices automatically. That is, you don't have to r...
* by yourself.
*
* Returns zero. Frees all associated devices and frees...
* interface associated to given soundcard.
*/
static int snd_card_do_free(struct snd_card *card)
{
#if defined(CONFIG_SND_MIXER_OSS) || defined(CONFIG_SND_...
-
--[[linux-2.6.33/CONFIG_SND_MIXER_OSS]]
-
--[[linux-2.6.33/CONFIG_SND_MIXER_OSS_MODULE]]
if (snd_mixer_oss_notify_callback)
snd_mixer_oss_notify_callback(card, SND_MIXER_OSS_NOTI...
-
--[[linux-2.6.33/snd_mixer_oss_notify_callback(global)]]
-
--[[linux-2.6.33/SND_MIXER_OSS_NOTIFY_FREE]]
#endif
if (snd_device_free_all(card, SNDRV_DEV_CMD_PRE) < 0) {
snd_printk(KERN_ERR "unable to free all devices (pre)\...
/* Fatal, but this situation should never occur */
}
-
--[[linux-2.6.33/snd_device_free_all()]]
-
--[[linux-2.6.33/SNDRV_DEV_CMD_PRE]]
-
--[[linux-2.6.33/snd_printk()]]
if (snd_device_free_all(card, SNDRV_DEV_CMD_NORMAL) < 0...
snd_printk(KERN_ERR "unable to free all devices (norma...
/* Fatal, but this situation should never occur */
}
-
--[[linux-2.6.33/SNDRV_DEV_CMD_NORMAL]]
if (snd_device_free_all(card, SNDRV_DEV_CMD_POST) < 0) {
snd_printk(KERN_ERR "unable to free all devices (post)...
/* Fatal, but this situation should never occur */
}
-
--[[linux-2.6.33/SNDRV_DEV_CMD_POST]]
if (card->private_free)
card->private_free(card);
snd_info_free_entry(card->proc_id);
if (snd_info_card_free(card) < 0) {
snd_printk(KERN_WARNING "unable to free card info\n");
/* Not fatal error */
}
kfree(card);
-
--[[linux-2.6.33/snd_info_free_entry()]]
-
--[[linux-2.6.33/snd_info_card_free()]]
-
--[[linux-2.6.33/kfree()]]
return 0;
}
*コメント [#rd434b61]
ページ名: