diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/oss/pss.c | 30 |
1 files changed, 7 insertions, 23 deletions
diff --git a/sound/oss/pss.c b/sound/oss/pss.c index ece428b2ba9f..16ed06950dc1 100644 --- a/sound/oss/pss.c +++ b/sound/oss/pss.c | |||
@@ -232,14 +232,12 @@ static int set_irq(pss_confdata * devc, int dev, int irq) | |||
232 | return 1; | 232 | return 1; |
233 | } | 233 | } |
234 | 234 | ||
235 | static int set_io_base(pss_confdata * devc, int dev, int base) | 235 | static void set_io_base(pss_confdata * devc, int dev, int base) |
236 | { | 236 | { |
237 | unsigned short tmp = inw(REG(dev)) & 0x003f; | 237 | unsigned short tmp = inw(REG(dev)) & 0x003f; |
238 | unsigned short bits = (base & 0x0ffc) << 4; | 238 | unsigned short bits = (base & 0x0ffc) << 4; |
239 | 239 | ||
240 | outw(bits | tmp, REG(dev)); | 240 | outw(bits | tmp, REG(dev)); |
241 | |||
242 | return 1; | ||
243 | } | 241 | } |
244 | 242 | ||
245 | static int set_dma(pss_confdata * devc, int dev, int dma) | 243 | static int set_dma(pss_confdata * devc, int dev, int dma) |
@@ -673,20 +671,12 @@ static void configure_nonsound_components(void) | |||
673 | 671 | ||
674 | /* Configure CDROM port */ | 672 | /* Configure CDROM port */ |
675 | 673 | ||
676 | if(pss_cdrom_port == -1) /* If cdrom port enablation wasn't requested */ | 674 | if (pss_cdrom_port == -1) { /* If cdrom port enablation wasn't requested */ |
677 | { | ||
678 | printk(KERN_INFO "PSS: CDROM port not enabled.\n"); | 675 | printk(KERN_INFO "PSS: CDROM port not enabled.\n"); |
679 | } | 676 | } else if (check_region(pss_cdrom_port, 2)) { |
680 | else if(check_region(pss_cdrom_port, 2)) | ||
681 | { | ||
682 | printk(KERN_ERR "PSS: CDROM I/O port conflict.\n"); | 677 | printk(KERN_ERR "PSS: CDROM I/O port conflict.\n"); |
683 | } | 678 | } else { |
684 | else if(!set_io_base(devc, CONF_CDROM, pss_cdrom_port)) | 679 | set_io_base(devc, CONF_CDROM, pss_cdrom_port); |
685 | { | ||
686 | printk(KERN_ERR "PSS: CDROM I/O port could not be set.\n"); | ||
687 | } | ||
688 | else /* CDROM port successfully configured */ | ||
689 | { | ||
690 | printk(KERN_INFO "PSS: CDROM I/O port set to 0x%x.\n", pss_cdrom_port); | 680 | printk(KERN_INFO "PSS: CDROM I/O port set to 0x%x.\n", pss_cdrom_port); |
691 | } | 681 | } |
692 | } | 682 | } |
@@ -758,10 +748,7 @@ static int __init probe_pss_mpu(struct address_info *hw_config) | |||
758 | printk(KERN_ERR "PSS: MPU I/O port conflict\n"); | 748 | printk(KERN_ERR "PSS: MPU I/O port conflict\n"); |
759 | return 0; | 749 | return 0; |
760 | } | 750 | } |
761 | if (!set_io_base(devc, CONF_MIDI, hw_config->io_base)) { | 751 | set_io_base(devc, CONF_MIDI, hw_config->io_base); |
762 | printk(KERN_ERR "PSS: MIDI base could not be set.\n"); | ||
763 | goto fail; | ||
764 | } | ||
765 | if (!set_irq(devc, CONF_MIDI, hw_config->irq)) { | 752 | if (!set_irq(devc, CONF_MIDI, hw_config->irq)) { |
766 | printk(KERN_ERR "PSS: MIDI IRQ allocation error.\n"); | 753 | printk(KERN_ERR "PSS: MIDI IRQ allocation error.\n"); |
767 | goto fail; | 754 | goto fail; |
@@ -1057,10 +1044,7 @@ static int __init probe_pss_mss(struct address_info *hw_config) | |||
1057 | release_region(hw_config->io_base, 4); | 1044 | release_region(hw_config->io_base, 4); |
1058 | return 0; | 1045 | return 0; |
1059 | } | 1046 | } |
1060 | if (!set_io_base(devc, CONF_WSS, hw_config->io_base)) { | 1047 | set_io_base(devc, CONF_WSS, hw_config->io_base); |
1061 | printk("PSS: WSS base not settable.\n"); | ||
1062 | goto fail; | ||
1063 | } | ||
1064 | if (!set_irq(devc, CONF_WSS, hw_config->irq)) { | 1048 | if (!set_irq(devc, CONF_WSS, hw_config->irq)) { |
1065 | printk("PSS: WSS IRQ allocation error.\n"); | 1049 | printk("PSS: WSS IRQ allocation error.\n"); |
1066 | goto fail; | 1050 | goto fail; |