7d2aae1e88
The recent change for a new sysfs tree with card* object breaks the /sys/class/sound tree if CONFIG_SYSFS_DEPRECATED is enabled. The device in each entry doesn't point the correct device object: /sys/class/sound ... |-- pcmC0D0c | |-- dev | |-- device -> ../../../class/sound/card0 | |-- pcm_class | |-- power | | `-- wakeup | |-- subsystem -> ../../../class/sound | `-- uevent Also, this change breaks some drivers (like sound/arm/*) referring card->dev directly to obtain the device object for memory handling. This patch reverts the semantics of card->dev to the former version, which points to a real device object. The card* object is stored in a new card->card_dev field, instead. The device parent is chosen either card->dev or card->card_dev according to CONFIG_SYSFS_DEPRECATED to keep the tree compatibility. Also, card* isn't created if CONFIG_SYSFS_DEPRECATED is enabled. The reason of card* object is a root of all beloing devices, and it makes little sense if each sound device points to the real device object directly. Signed-off-by: Takashi Iwai <tiwai@suse.de> Acked-by: Monty Montgomery <xiphmont@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
||
---|---|---|
.. | ||
ac97_codec.h | ||
ad1816a.h | ||
ad1848.h | ||
ainstr_fm.h | ||
ainstr_gf1.h | ||
ainstr_iw.h | ||
ainstr_simple.h | ||
ak4xxx-adda.h | ||
ak4114.h | ||
ak4117.h | ||
ak4531_codec.h | ||
asequencer.h | ||
asound.h | ||
asound_fm.h | ||
asoundef.h | ||
control.h | ||
core.h | ||
cs46xx.h | ||
cs46xx_dsp_scb_types.h | ||
cs46xx_dsp_spos.h | ||
cs46xx_dsp_task_types.h | ||
cs4231.h | ||
cs8403.h | ||
cs8427.h | ||
driver.h | ||
emu10k1.h | ||
emu10k1_synth.h | ||
emu8000.h | ||
emu8000_reg.h | ||
emux_legacy.h | ||
emux_synth.h | ||
es1688.h | ||
gus.h | ||
hdsp.h | ||
hdspm.h | ||
hwdep.h | ||
i2c.h | ||
info.h | ||
initval.h | ||
Kbuild | ||
memalloc.h | ||
minors.h | ||
mixer_oss.h | ||
mpu401.h | ||
opl3.h | ||
opl4.h | ||
pcm-indirect.h | ||
pcm.h | ||
pcm_oss.h | ||
pcm_params.h | ||
rawmidi.h | ||
sb.h | ||
sb16_csp.h | ||
seq_device.h | ||
seq_instr.h | ||
seq_kernel.h | ||
seq_midi_emul.h | ||
seq_midi_event.h | ||
seq_oss.h | ||
seq_oss_legacy.h | ||
seq_virmidi.h | ||
sfnt_info.h | ||
snd_wavefront.h | ||
soundfont.h | ||
sscape_ioctl.h | ||
tea575x-tuner.h | ||
tea6330t.h | ||
timer.h | ||
tlv.h | ||
trident.h | ||
typedefs.h | ||
uda1341.h | ||
util_mem.h | ||
version.h | ||
vx_core.h | ||
wavefront.h | ||
wavefront_fx.h | ||
ymfpci.h |