*参照元 [#j722b099] #backlinks *説明 [#d20764ad] -パス: [[linux-2.6.33/include/sound/soc.h]] -FIXME: これは何? --説明 **参考 [#w9c4bcc5] *実装 [#ze2d84bd] /* SoC Audio Codec */ struct snd_soc_codec { char *name; struct module *owner; struct mutex mutex; struct device *dev; struct snd_soc_device *socdev; - --[[linux-2.6.33/module]] - --[[linux-2.6.33/mutex]] - --[[linux-2.6.33/device]] - --[[linux-2.6.33/snd_soc_device]] struct list_head list; - --[[linux-2.6.33/list_head]] /* callbacks */ int (*set_bias_level)(struct snd_soc_codec *, enum snd_soc_bias_level level); - --[[linux-2.6.33/snd_soc_codec]] - --[[linux-2.6.33/snd_soc_bias_level]] /* runtime */ struct snd_card *card; struct snd_ac97 *ac97; /* for ad-hoc ac97 devices */ unsigned int active; unsigned int pcm_devs; void *private_data; - --[[linux-2.6.33/snd_card]] - --[[linux-2.6.33/snd_ac97]] /* codec IO */ void *control_data; /* codec control (i2c/3wire) data */ unsigned int (*read)(struct snd_soc_codec *, unsigned int); int (*write)(struct snd_soc_codec *, unsigned int, unsigned int); int (*display_register)(struct snd_soc_codec *, char *, size_t, unsigned int); int (*volatile_register)(unsigned int); int (*readable_register)(unsigned int); hw_write_t hw_write; unsigned int (*hw_read)(struct snd_soc_codec *, unsigned int); void *reg_cache; short reg_cache_size; short reg_cache_step; - --[[linux-2.6.33/hw_write_t]] /* dapm */ u32 pop_time; struct list_head dapm_widgets; struct list_head dapm_paths; enum snd_soc_bias_level bias_level; enum snd_soc_bias_level suspend_bias_level; struct delayed_work delayed_work; - --[[linux-2.6.33/delayed_work]] /* codec DAI's */ struct snd_soc_dai *dai; unsigned int num_dai; - --[[linux-2.6.33/snd_soc_dai]] #ifdef CONFIG_DEBUG_FS - --[[linux-2.6.33/CONFIG_DEBUG_FS]] struct dentry *debugfs_codec_root; struct dentry *debugfs_reg; struct dentry *debugfs_pop_time; struct dentry *debugfs_dapm; #endif - --[[linux-2.6.33/dentry]] }; *コメント [#k29c742a]