diff options
Diffstat (limited to 'sound/pci/au88x0/au88x0_a3d.c')
-rw-r--r-- | sound/pci/au88x0/au88x0_a3d.c | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/sound/pci/au88x0/au88x0_a3d.c b/sound/pci/au88x0/au88x0_a3d.c index d215f393ea64..649849e540d3 100644 --- a/sound/pci/au88x0/au88x0_a3d.c +++ b/sound/pci/au88x0/au88x0_a3d.c | |||
@@ -593,24 +593,23 @@ static int Vort3DRend_Initialize(vortex_t * v, unsigned short mode) | |||
593 | static int vortex_a3d_register_controls(vortex_t * vortex); | 593 | static int vortex_a3d_register_controls(vortex_t * vortex); |
594 | static void vortex_a3d_unregister_controls(vortex_t * vortex); | 594 | static void vortex_a3d_unregister_controls(vortex_t * vortex); |
595 | /* A3D base support init/shudown */ | 595 | /* A3D base support init/shudown */ |
596 | static void vortex_Vort3D(vortex_t * v, int en) | 596 | static void __devinit vortex_Vort3D_enable(vortex_t * v) |
597 | { | 597 | { |
598 | int i; | 598 | int i; |
599 | if (en) { | 599 | |
600 | Vort3DRend_Initialize(v, XT_HEADPHONE); | 600 | Vort3DRend_Initialize(v, XT_HEADPHONE); |
601 | for (i = 0; i < NR_A3D; i++) { | 601 | for (i = 0; i < NR_A3D; i++) { |
602 | vortex_A3dSourceHw_Initialize(v, i % 4, i >> 2); | 602 | vortex_A3dSourceHw_Initialize(v, i % 4, i >> 2); |
603 | a3dsrc_ZeroStateA3D(&(v->a3d[0])); | 603 | a3dsrc_ZeroStateA3D(&(v->a3d[0])); |
604 | } | ||
605 | } else { | ||
606 | vortex_XtalkHw_Disable(v); | ||
607 | } | 604 | } |
608 | /* Register ALSA controls */ | 605 | /* Register ALSA controls */ |
609 | if (en) { | 606 | vortex_a3d_register_controls(v); |
610 | vortex_a3d_register_controls(v); | 607 | } |
611 | } else { | 608 | |
612 | vortex_a3d_unregister_controls(v); | 609 | static void vortex_Vort3D_disable(vortex_t * v) |
613 | } | 610 | { |
611 | vortex_XtalkHw_Disable(v); | ||
612 | vortex_a3d_unregister_controls(v); | ||
614 | } | 613 | } |
615 | 614 | ||
616 | /* Make A3D subsystem connections. */ | 615 | /* Make A3D subsystem connections. */ |
@@ -855,7 +854,7 @@ static struct snd_kcontrol_new vortex_a3d_kcontrol __devinitdata = { | |||
855 | }; | 854 | }; |
856 | 855 | ||
857 | /* Control (un)registration. */ | 856 | /* Control (un)registration. */ |
858 | static int vortex_a3d_register_controls(vortex_t * vortex) | 857 | static int __devinit vortex_a3d_register_controls(vortex_t * vortex) |
859 | { | 858 | { |
860 | struct snd_kcontrol *kcontrol; | 859 | struct snd_kcontrol *kcontrol; |
861 | int err, i; | 860 | int err, i; |