Signed-off-by: Andrew Morton --- Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl | 6 sound/pci/ali5451/ali5451.c | 2 sound/pci/als4000.c | 2 sound/pci/atiixp.c | 2 sound/pci/atiixp_modem.c | 2 sound/pci/au88x0/au88x0.c | 2 sound/pci/azt3328.c | 2 sound/pci/bt87x.c | 2 sound/pci/ca0106/ca0106_main.c | 2 sound/pci/cmipci.c | 159 +++++++++-- sound/pci/cs4281.c | 2 sound/pci/cs46xx/cs46xx.c | 2 sound/pci/emu10k1/emu10k1.c | 2 sound/pci/emu10k1/emu10k1x.c | 2 sound/pci/ens1370.c | 2 sound/pci/es1938.c | 2 sound/pci/es1968.c | 2 sound/pci/fm801.c | 2 sound/pci/hda/hda_intel.c | 2 sound/pci/ice1712/ice1712.c | 2 sound/pci/ice1712/ice1724.c | 2 sound/pci/intel8x0.c | 2 sound/pci/intel8x0m.c | 2 sound/pci/korg1212/korg1212.c | 2 sound/pci/maestro3.c | 2 sound/pci/mixart/mixart.c | 2 sound/pci/nm256/nm256.c | 2 sound/pci/rme32.c | 2 sound/pci/rme96.c | 2 sound/pci/rme9652/hdsp.c | 2 sound/pci/rme9652/rme9652.c | 2 sound/pci/sonicvibes.c | 2 sound/pci/trident/trident.c | 2 sound/pci/via82xx.c | 2 sound/pci/via82xx_modem.c | 2 sound/pci/vx222/vx222.c | 2 sound/pci/ymfpci/ymfpci.c | 2 37 files changed, 177 insertions(+), 58 deletions(-) diff -puN Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl~alsa-3113 Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl --- 25/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl 2005-05-11 21:15:47.000000000 -0700 @@ -371,7 +371,7 @@ create probe() callback. create remove() callback. create pci_driver table which contains the three pointers above. - create init() function just calling pci_module_init() to register the pci_driver table defined above. + create init() function just calling pci_register_driver() to register the pci_driver table defined above. create exit() function to call pci_unregister_driver() function. @@ -1198,7 +1198,7 @@ /* initialization of the module */ static int __init alsa_card_mychip_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } /* clean up the module */ @@ -1654,7 +1654,7 @@ 0) + if ((err = pci_register_driver(&driver)) > 0) return err; return 0; diff -puN sound/pci/cmipci.c~alsa-3113 sound/pci/cmipci.c --- 25/sound/pci/cmipci.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/cmipci.c 2005-05-11 21:15:47.000000000 -0700 @@ -519,40 +519,50 @@ inline static unsigned char snd_cmipci_r } /* bit operations for dword register */ -static void snd_cmipci_set_bit(cmipci_t *cm, unsigned int cmd, unsigned int flag) +static int snd_cmipci_set_bit(cmipci_t *cm, unsigned int cmd, unsigned int flag) { - unsigned int val; - val = inl(cm->iobase + cmd); + unsigned int val, oval; + val = oval = inl(cm->iobase + cmd); val |= flag; + if (val == oval) + return 0; outl(val, cm->iobase + cmd); + return 1; } -static void snd_cmipci_clear_bit(cmipci_t *cm, unsigned int cmd, unsigned int flag) +static int snd_cmipci_clear_bit(cmipci_t *cm, unsigned int cmd, unsigned int flag) { - unsigned int val; - val = inl(cm->iobase + cmd); + unsigned int val, oval; + val = oval = inl(cm->iobase + cmd); val &= ~flag; + if (val == oval) + return 0; outl(val, cm->iobase + cmd); + return 1; } -#if 0 // not used /* bit operations for byte register */ -static void snd_cmipci_set_bit_b(cmipci_t *cm, unsigned int cmd, unsigned char flag) +static int snd_cmipci_set_bit_b(cmipci_t *cm, unsigned int cmd, unsigned char flag) { - unsigned char val; - val = inb(cm->iobase + cmd); + unsigned char val, oval; + val = oval = inb(cm->iobase + cmd); val |= flag; + if (val == oval) + return 0; outb(val, cm->iobase + cmd); + return 1; } -static void snd_cmipci_clear_bit_b(cmipci_t *cm, unsigned int cmd, unsigned char flag) +static int snd_cmipci_clear_bit_b(cmipci_t *cm, unsigned int cmd, unsigned char flag) { - unsigned char val; - val = inb(cm->iobase + cmd); + unsigned char val, oval; + val = oval = inb(cm->iobase + cmd); val &= ~flag; + if (val == oval) + return 0; outb(val, cm->iobase + cmd); + return 1; } -#endif /* @@ -2250,8 +2260,8 @@ DEFINE_SWITCH_ARG(exchange_dac, CM_REG_M DEFINE_SWITCH_ARG(exchange_dac, CM_REG_MISC_CTRL, CM_XCHGDAC, CM_XCHGDAC, 0, 0); #endif DEFINE_BIT_SWITCH_ARG(fourch, CM_REG_MISC_CTRL, CM_N4SPK3D, 0, 0); -DEFINE_BIT_SWITCH_ARG(line_rear, CM_REG_MIXER1, CM_SPK4, 1, 0); -DEFINE_BIT_SWITCH_ARG(line_bass, CM_REG_LEGACY_CTRL, CM_LINE_AS_BASS, 0, 0); +// DEFINE_BIT_SWITCH_ARG(line_rear, CM_REG_MIXER1, CM_SPK4, 1, 0); +// DEFINE_BIT_SWITCH_ARG(line_bass, CM_REG_LEGACY_CTRL, CM_LINE_AS_BASS, 0, 0); // DEFINE_BIT_SWITCH_ARG(joystick, CM_REG_FUNCTRL1, CM_JYSTK_EN, 0, 0); /* now module option */ DEFINE_SWITCH_ARG(modem, CM_REG_MISC_CTRL, CM_FLINKON|CM_FLINKOFF, CM_FLINKON, 0, 0); @@ -2300,10 +2310,114 @@ static int snd_cmipci_spdout_enable_put( } +static int snd_cmipci_line_in_mode_info(snd_kcontrol_t *kcontrol, + snd_ctl_elem_info_t *uinfo) +{ + cmipci_t *cm = snd_kcontrol_chip(kcontrol); + static char *texts[3] = { "Line-In", "Rear Output", "Bass Output" }; + uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; + uinfo->count = 1; + uinfo->value.enumerated.items = cm->chip_version >= 39 ? 3 : 2; + if (uinfo->value.enumerated.item >= uinfo->value.enumerated.items) + uinfo->value.enumerated.item = uinfo->value.enumerated.items - 1; + strcpy(uinfo->value.enumerated.name, texts[uinfo->value.enumerated.item]); + return 0; +} + +static inline unsigned int get_line_in_mode(cmipci_t *cm) +{ + unsigned int val; + if (cm->chip_version >= 39) { + val = snd_cmipci_read(cm, CM_REG_LEGACY_CTRL); + if (val & CM_LINE_AS_BASS) + return 2; + } + val = snd_cmipci_read_b(cm, CM_REG_MIXER1); + if (val & CM_SPK4) + return 1; + return 0; +} + +static int snd_cmipci_line_in_mode_get(snd_kcontrol_t *kcontrol, + snd_ctl_elem_value_t *ucontrol) +{ + cmipci_t *cm = snd_kcontrol_chip(kcontrol); + + spin_lock_irq(&cm->reg_lock); + ucontrol->value.enumerated.item[0] = get_line_in_mode(cm); + spin_unlock_irq(&cm->reg_lock); + return 0; +} + +static int snd_cmipci_line_in_mode_put(snd_kcontrol_t *kcontrol, + snd_ctl_elem_value_t *ucontrol) +{ + cmipci_t *cm = snd_kcontrol_chip(kcontrol); + int change; + + spin_lock_irq(&cm->reg_lock); + if (ucontrol->value.enumerated.item[0] == 2) + change = snd_cmipci_set_bit(cm, CM_REG_LEGACY_CTRL, CM_LINE_AS_BASS); + else + change = snd_cmipci_clear_bit(cm, CM_REG_LEGACY_CTRL, CM_LINE_AS_BASS); + if (ucontrol->value.enumerated.item[0] == 1) + change |= snd_cmipci_set_bit_b(cm, CM_REG_MIXER1, CM_SPK4); + else + change |= snd_cmipci_clear_bit_b(cm, CM_REG_MIXER1, CM_SPK4); + spin_unlock_irq(&cm->reg_lock); + return change; +} + +static int snd_cmipci_mic_in_mode_info(snd_kcontrol_t *kcontrol, + snd_ctl_elem_info_t *uinfo) +{ + static char *texts[2] = { "Mic-In", "Center/LFE Output" }; + uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; + uinfo->count = 1; + uinfo->value.enumerated.items = 2; + if (uinfo->value.enumerated.item >= uinfo->value.enumerated.items) + uinfo->value.enumerated.item = uinfo->value.enumerated.items - 1; + strcpy(uinfo->value.enumerated.name, texts[uinfo->value.enumerated.item]); + return 0; +} + +static int snd_cmipci_mic_in_mode_get(snd_kcontrol_t *kcontrol, + snd_ctl_elem_value_t *ucontrol) +{ + cmipci_t *cm = snd_kcontrol_chip(kcontrol); + /* same bit as spdi_phase */ + spin_lock_irq(&cm->reg_lock); + ucontrol->value.enumerated.item[0] = + (snd_cmipci_read_b(cm, CM_REG_MISC) & CM_SPDIF_INVERSE) ? 1 : 0; + spin_unlock_irq(&cm->reg_lock); + return 0; +} + +static int snd_cmipci_mic_in_mode_put(snd_kcontrol_t *kcontrol, + snd_ctl_elem_value_t *ucontrol) +{ + cmipci_t *cm = snd_kcontrol_chip(kcontrol); + int change; + + spin_lock_irq(&cm->reg_lock); + if (ucontrol->value.enumerated.item[0]) + change = snd_cmipci_set_bit_b(cm, CM_REG_MISC, CM_SPDIF_INVERSE); + else + change = snd_cmipci_clear_bit_b(cm, CM_REG_MISC, CM_SPDIF_INVERSE); + spin_unlock_irq(&cm->reg_lock); + return change; +} + /* both for CM8338/8738 */ static snd_kcontrol_new_t snd_cmipci_mixer_switches[] __devinitdata = { DEFINE_MIXER_SWITCH("Four Channel Mode", fourch), - DEFINE_MIXER_SWITCH("Line-In As Rear", line_rear), + { + .name = "Line-In Mode", + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + .info = snd_cmipci_line_in_mode_info, + .get = snd_cmipci_line_in_mode_get, + .put = snd_cmipci_line_in_mode_put, + }, }; /* for non-multichannel chips */ @@ -2341,10 +2455,15 @@ static snd_kcontrol_new_t snd_cmipci_old /* only for model 039 or later */ static snd_kcontrol_new_t snd_cmipci_extra_mixer_switches[] __devinitdata = { - DEFINE_MIXER_SWITCH("Line-In As Bass", line_bass), DEFINE_MIXER_SWITCH("IEC958 In Select", spdif_in_sel2), DEFINE_MIXER_SWITCH("IEC958 In Phase Inverse", spdi_phase2), - DEFINE_MIXER_SWITCH("Mic As Center/LFE", spdi_phase), /* same bit as spdi_phase */ + { + .name = "Mic-In Mode", + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + .info = snd_cmipci_mic_in_mode_info, + .get = snd_cmipci_mic_in_mode_get, + .put = snd_cmipci_mic_in_mode_put, + } }; /* card control switches */ @@ -2944,7 +3063,7 @@ static struct pci_driver driver = { static int __init alsa_card_cmipci_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_cmipci_exit(void) diff -puN sound/pci/cs4281.c~alsa-3113 sound/pci/cs4281.c --- 25/sound/pci/cs4281.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/cs4281.c 2005-05-11 21:15:47.000000000 -0700 @@ -2124,7 +2124,7 @@ static struct pci_driver driver = { static int __init alsa_card_cs4281_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_cs4281_exit(void) diff -puN sound/pci/cs46xx/cs46xx.c~alsa-3113 sound/pci/cs46xx/cs46xx.c --- 25/sound/pci/cs46xx/cs46xx.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/cs46xx/cs46xx.c 2005-05-11 21:15:47.000000000 -0700 @@ -171,7 +171,7 @@ static struct pci_driver driver = { static int __init alsa_card_cs46xx_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_cs46xx_exit(void) diff -puN sound/pci/emu10k1/emu10k1.c~alsa-3113 sound/pci/emu10k1/emu10k1.c --- 25/sound/pci/emu10k1/emu10k1.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/emu10k1/emu10k1.c 2005-05-11 21:15:47.000000000 -0700 @@ -228,7 +228,7 @@ static struct pci_driver driver = { static int __init alsa_card_emu10k1_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_emu10k1_exit(void) diff -puN sound/pci/emu10k1/emu10k1x.c~alsa-3113 sound/pci/emu10k1/emu10k1x.c --- 25/sound/pci/emu10k1/emu10k1x.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/emu10k1/emu10k1x.c 2005-05-11 21:15:47.000000000 -0700 @@ -1627,7 +1627,7 @@ static int __init alsa_card_emu10k1x_ini { int err; - if ((err = pci_module_init(&driver)) > 0) + if ((err = pci_register_driver(&driver)) > 0) return err; return 0; diff -puN sound/pci/ens1370.c~alsa-3113 sound/pci/ens1370.c --- 25/sound/pci/ens1370.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/ens1370.c 2005-05-11 21:15:47.000000000 -0700 @@ -2401,7 +2401,7 @@ static struct pci_driver driver = { static int __init alsa_card_ens137x_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_ens137x_exit(void) diff -puN sound/pci/es1938.c~alsa-3113 sound/pci/es1938.c --- 25/sound/pci/es1938.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/es1938.c 2005-05-11 21:15:47.000000000 -0700 @@ -1761,7 +1761,7 @@ static struct pci_driver driver = { static int __init alsa_card_es1938_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_es1938_exit(void) diff -puN sound/pci/es1968.c~alsa-3113 sound/pci/es1968.c --- 25/sound/pci/es1968.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/es1968.c 2005-05-11 21:15:47.000000000 -0700 @@ -2795,7 +2795,7 @@ static struct pci_driver driver = { static int __init alsa_card_es1968_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_es1968_exit(void) diff -puN sound/pci/fm801.c~alsa-3113 sound/pci/fm801.c --- 25/sound/pci/fm801.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/fm801.c 2005-05-11 21:15:47.000000000 -0700 @@ -1469,7 +1469,7 @@ static struct pci_driver driver = { static int __init alsa_card_fm801_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_fm801_exit(void) diff -puN sound/pci/hda/hda_intel.c~alsa-3113 sound/pci/hda/hda_intel.c --- 25/sound/pci/hda/hda_intel.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/hda/hda_intel.c 2005-05-11 21:15:47.000000000 -0700 @@ -1439,7 +1439,7 @@ static struct pci_driver driver = { static int __init alsa_card_azx_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_azx_exit(void) diff -puN sound/pci/ice1712/ice1712.c~alsa-3113 sound/pci/ice1712/ice1712.c --- 25/sound/pci/ice1712/ice1712.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/ice1712/ice1712.c 2005-05-11 21:15:47.000000000 -0700 @@ -2748,7 +2748,7 @@ static struct pci_driver driver = { static int __init alsa_card_ice1712_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_ice1712_exit(void) diff -puN sound/pci/ice1712/ice1724.c~alsa-3113 sound/pci/ice1712/ice1724.c --- 25/sound/pci/ice1712/ice1724.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/ice1712/ice1724.c 2005-05-11 21:15:47.000000000 -0700 @@ -2328,7 +2328,7 @@ static struct pci_driver driver = { static int __init alsa_card_ice1724_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_ice1724_exit(void) diff -puN sound/pci/intel8x0.c~alsa-3113 sound/pci/intel8x0.c --- 25/sound/pci/intel8x0.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/intel8x0.c 2005-05-11 21:15:47.000000000 -0700 @@ -2849,7 +2849,7 @@ static struct pci_driver driver = { static int __init alsa_card_intel8x0_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_intel8x0_exit(void) diff -puN sound/pci/intel8x0m.c~alsa-3113 sound/pci/intel8x0m.c --- 25/sound/pci/intel8x0m.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/intel8x0m.c 2005-05-11 21:15:47.000000000 -0700 @@ -1452,7 +1452,7 @@ static struct pci_driver driver = { static int __init alsa_card_intel8x0m_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_intel8x0m_exit(void) diff -puN sound/pci/korg1212/korg1212.c~alsa-3113 sound/pci/korg1212/korg1212.c --- 25/sound/pci/korg1212/korg1212.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/korg1212/korg1212.c 2005-05-11 21:15:47.000000000 -0700 @@ -2541,7 +2541,7 @@ static struct pci_driver driver = { static int __init alsa_card_korg1212_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_korg1212_exit(void) diff -puN sound/pci/maestro3.c~alsa-3113 sound/pci/maestro3.c --- 25/sound/pci/maestro3.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/maestro3.c 2005-05-11 21:15:47.000000000 -0700 @@ -2702,7 +2702,7 @@ static struct pci_driver driver = { static int __init alsa_card_m3_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_m3_exit(void) diff -puN sound/pci/mixart/mixart.c~alsa-3113 sound/pci/mixart/mixart.c --- 25/sound/pci/mixart/mixart.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/mixart/mixart.c 2005-05-11 21:15:47.000000000 -0700 @@ -1431,7 +1431,7 @@ static struct pci_driver driver = { static int __init alsa_card_mixart_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_mixart_exit(void) diff -puN sound/pci/nm256/nm256.c~alsa-3113 sound/pci/nm256/nm256.c --- 25/sound/pci/nm256/nm256.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/nm256/nm256.c 2005-05-11 21:15:47.000000000 -0700 @@ -1645,7 +1645,7 @@ static struct pci_driver driver = { static int __init alsa_card_nm256_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_nm256_exit(void) diff -puN sound/pci/rme32.c~alsa-3113 sound/pci/rme32.c --- 25/sound/pci/rme32.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/rme32.c 2005-05-11 21:15:47.000000000 -0700 @@ -2031,7 +2031,7 @@ static struct pci_driver driver = { static int __init alsa_card_rme32_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_rme32_exit(void) diff -puN sound/pci/rme9652/hdsp.c~alsa-3113 sound/pci/rme9652/hdsp.c --- 25/sound/pci/rme9652/hdsp.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/rme9652/hdsp.c 2005-05-11 21:15:47.000000000 -0700 @@ -5194,7 +5194,7 @@ static struct pci_driver driver = { static int __init alsa_card_hdsp_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_hdsp_exit(void) diff -puN sound/pci/rme9652/rme9652.c~alsa-3113 sound/pci/rme9652/rme9652.c --- 25/sound/pci/rme9652/rme9652.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/rme9652/rme9652.c 2005-05-11 21:15:47.000000000 -0700 @@ -2664,7 +2664,7 @@ static struct pci_driver driver = { static int __init alsa_card_hammerfall_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_hammerfall_exit(void) diff -puN sound/pci/rme96.c~alsa-3113 sound/pci/rme96.c --- 25/sound/pci/rme96.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/rme96.c 2005-05-11 21:15:47.000000000 -0700 @@ -2437,7 +2437,7 @@ static struct pci_driver driver = { static int __init alsa_card_rme96_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_rme96_exit(void) diff -puN sound/pci/sonicvibes.c~alsa-3113 sound/pci/sonicvibes.c --- 25/sound/pci/sonicvibes.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/sonicvibes.c 2005-05-11 21:15:47.000000000 -0700 @@ -1522,7 +1522,7 @@ static struct pci_driver driver = { static int __init alsa_card_sonicvibes_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_sonicvibes_exit(void) diff -puN sound/pci/trident/trident.c~alsa-3113 sound/pci/trident/trident.c --- 25/sound/pci/trident/trident.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/trident/trident.c 2005-05-11 21:15:47.000000000 -0700 @@ -184,7 +184,7 @@ static struct pci_driver driver = { static int __init alsa_card_trident_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_trident_exit(void) diff -puN sound/pci/via82xx.c~alsa-3113 sound/pci/via82xx.c --- 25/sound/pci/via82xx.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/via82xx.c 2005-05-11 21:15:47.000000000 -0700 @@ -2349,7 +2349,7 @@ static struct pci_driver driver = { static int __init alsa_card_via82xx_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_via82xx_exit(void) diff -puN sound/pci/via82xx_modem.c~alsa-3113 sound/pci/via82xx_modem.c --- 25/sound/pci/via82xx_modem.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/via82xx_modem.c 2005-05-11 21:15:47.000000000 -0700 @@ -1233,7 +1233,7 @@ static struct pci_driver driver = { static int __init alsa_card_via82xx_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_via82xx_exit(void) diff -puN sound/pci/vx222/vx222.c~alsa-3113 sound/pci/vx222/vx222.c --- 25/sound/pci/vx222/vx222.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/vx222/vx222.c 2005-05-11 21:15:47.000000000 -0700 @@ -260,7 +260,7 @@ static struct pci_driver driver = { static int __init alsa_card_vx222_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_vx222_exit(void) diff -puN sound/pci/ymfpci/ymfpci.c~alsa-3113 sound/pci/ymfpci/ymfpci.c --- 25/sound/pci/ymfpci/ymfpci.c~alsa-3113 2005-05-11 21:15:47.000000000 -0700 +++ 25-akpm/sound/pci/ymfpci/ymfpci.c 2005-05-11 21:15:47.000000000 -0700 @@ -360,7 +360,7 @@ static struct pci_driver driver = { static int __init alsa_card_ymfpci_init(void) { - return pci_module_init(&driver); + return pci_register_driver(&driver); } static void __exit alsa_card_ymfpci_exit(void) _