diff options
Diffstat (limited to 'sound/oss')
-rw-r--r-- | sound/oss/Kconfig | 13 | ||||
-rw-r--r-- | sound/oss/cs4232.c | 2 | ||||
-rw-r--r-- | sound/oss/forte.c | 5 | ||||
-rw-r--r-- | sound/oss/sb_ess.c | 28 | ||||
-rw-r--r-- | sound/oss/via82cxxx_audio.c | 7 |
5 files changed, 35 insertions, 20 deletions
diff --git a/sound/oss/Kconfig b/sound/oss/Kconfig index 3b8cdbca2636..f4980ca5c05c 100644 --- a/sound/oss/Kconfig +++ b/sound/oss/Kconfig | |||
@@ -493,6 +493,19 @@ config SOUND_CS4232 | |||
493 | See <file:Documentation/sound/oss/CS4232> for more information on | 493 | See <file:Documentation/sound/oss/CS4232> for more information on |
494 | configuring this card. | 494 | configuring this card. |
495 | 495 | ||
496 | config SOUND_SSCAPE | ||
497 | tristate "Ensoniq SoundScape support" | ||
498 | depends on SOUND_OSS | ||
499 | help | ||
500 | Answer Y if you have a sound card based on the Ensoniq SoundScape | ||
501 | chipset. Such cards are being manufactured at least by Ensoniq, Spea | ||
502 | and Reveal (Reveal makes also other cards). | ||
503 | |||
504 | If you compile the driver into the kernel, you have to add | ||
505 | "sscape=<io>,<irq>,<dma>,<mpuio>,<mpuirq>" to the kernel command | ||
506 | line. | ||
507 | |||
508 | |||
496 | config SOUND_VMIDI | 509 | config SOUND_VMIDI |
497 | tristate "Loopback MIDI device support" | 510 | tristate "Loopback MIDI device support" |
498 | depends on SOUND_OSS | 511 | depends on SOUND_OSS |
diff --git a/sound/oss/cs4232.c b/sound/oss/cs4232.c index c7f86f09c28d..80f6c08e26e7 100644 --- a/sound/oss/cs4232.c +++ b/sound/oss/cs4232.c | |||
@@ -405,7 +405,7 @@ static const struct pnp_device_id cs4232_pnp_table[] = { | |||
405 | 405 | ||
406 | MODULE_DEVICE_TABLE(pnp, cs4232_pnp_table); | 406 | MODULE_DEVICE_TABLE(pnp, cs4232_pnp_table); |
407 | 407 | ||
408 | static int cs4232_pnp_probe(struct pnp_dev *dev, const struct pnp_device_id *dev_id) | 408 | static int __init cs4232_pnp_probe(struct pnp_dev *dev, const struct pnp_device_id *dev_id) |
409 | { | 409 | { |
410 | struct address_info *isapnpcfg; | 410 | struct address_info *isapnpcfg; |
411 | 411 | ||
diff --git a/sound/oss/forte.c b/sound/oss/forte.c index 0294eec8ad90..44e578098d76 100644 --- a/sound/oss/forte.c +++ b/sound/oss/forte.c | |||
@@ -2035,8 +2035,9 @@ forte_probe (struct pci_dev *pci_dev, const struct pci_device_id *pci_id) | |||
2035 | 2035 | ||
2036 | pci_set_drvdata (pci_dev, chip); | 2036 | pci_set_drvdata (pci_dev, chip); |
2037 | 2037 | ||
2038 | printk (KERN_INFO PFX "FM801 chip found at 0x%04lX-0x%04lX IRQ %u\n", | 2038 | printk (KERN_INFO PFX "FM801 chip found at 0x%04lX-0x%16llX IRQ %u\n", |
2039 | chip->iobase, pci_resource_end (pci_dev, 0), chip->irq); | 2039 | chip->iobase, (unsigned long long)pci_resource_end (pci_dev, 0), |
2040 | chip->irq); | ||
2040 | 2041 | ||
2041 | /* Power it up */ | 2042 | /* Power it up */ |
2042 | if ((ret = forte_chip_init (chip)) == 0) | 2043 | if ((ret = forte_chip_init (chip)) == 0) |
diff --git a/sound/oss/sb_ess.c b/sound/oss/sb_ess.c index fae05fe3de43..180e95c87e3e 100644 --- a/sound/oss/sb_ess.c +++ b/sound/oss/sb_ess.c | |||
@@ -97,19 +97,19 @@ | |||
97 | * | 97 | * |
98 | * The documentation is an adventure: it's close but not fully accurate. I | 98 | * The documentation is an adventure: it's close but not fully accurate. I |
99 | * found out that after a reset some registers are *NOT* reset, though the | 99 | * found out that after a reset some registers are *NOT* reset, though the |
100 | * docs say the would be. Interresting ones are 0x7f, 0x7d and 0x7a. They are | 100 | * docs say the would be. Interesting ones are 0x7f, 0x7d and 0x7a. They are |
101 | * related to the Audio 2 channel. I also was suprised about the consequenses | 101 | * related to the Audio 2 channel. I also was surprised about the consequences |
102 | * of writing 0x00 to 0x7f (which should be done by reset): The ES1887 moves | 102 | * of writing 0x00 to 0x7f (which should be done by reset): The ES1887 moves |
103 | * into ES1888 mode. This means that it claims IRQ 11, which happens to be my | 103 | * into ES1888 mode. This means that it claims IRQ 11, which happens to be my |
104 | * ISDN adapter. Needless to say it no longer worked. I now understand why | 104 | * ISDN adapter. Needless to say it no longer worked. I now understand why |
105 | * after rebooting 0x7f already was 0x05, the value of my choice: the BIOS | 105 | * after rebooting 0x7f already was 0x05, the value of my choice: the BIOS |
106 | * did it. | 106 | * did it. |
107 | * | 107 | * |
108 | * Oh, and this is another trap: in ES1887 docs mixer register 0x70 is decribed | 108 | * Oh, and this is another trap: in ES1887 docs mixer register 0x70 is |
109 | * as if it's exactly the same as register 0xa1. This is *NOT* true. The | 109 | * described as if it's exactly the same as register 0xa1. This is *NOT* true. |
110 | * description of 0x70 in ES1869 docs is accurate however. | 110 | * The description of 0x70 in ES1869 docs is accurate however. |
111 | * Well, the assumption about ES1869 was wrong: register 0x70 is very much | 111 | * Well, the assumption about ES1869 was wrong: register 0x70 is very much |
112 | * like register 0xa1, except that bit 7 is allways 1, whatever you want | 112 | * like register 0xa1, except that bit 7 is always 1, whatever you want |
113 | * it to be. | 113 | * it to be. |
114 | * | 114 | * |
115 | * When using audio 2 mixer register 0x72 seems te be meaningless. Only 0xa2 | 115 | * When using audio 2 mixer register 0x72 seems te be meaningless. Only 0xa2 |
@@ -117,10 +117,10 @@ | |||
117 | * | 117 | * |
118 | * Software reset not being able to reset all registers is great! Especially | 118 | * Software reset not being able to reset all registers is great! Especially |
119 | * the fact that register 0x78 isn't reset is great when you wanna change back | 119 | * the fact that register 0x78 isn't reset is great when you wanna change back |
120 | * to single dma operation (simplex): audio 2 is still operation, and uses the | 120 | * to single dma operation (simplex): audio 2 is still operational, and uses |
121 | * same dma as audio 1: your ess changes into a funny echo machine. | 121 | * the same dma as audio 1: your ess changes into a funny echo machine. |
122 | * | 122 | * |
123 | * Received the new that ES1688 is detected as a ES1788. Did some thinking: | 123 | * Received the news that ES1688 is detected as a ES1788. Did some thinking: |
124 | * the ES1887 detection scheme suggests in step 2 to try if bit 3 of register | 124 | * the ES1887 detection scheme suggests in step 2 to try if bit 3 of register |
125 | * 0x64 can be changed. This is inaccurate, first I inverted the * check: "If | 125 | * 0x64 can be changed. This is inaccurate, first I inverted the * check: "If |
126 | * can be modified, it's a 1688", which lead to a correct detection | 126 | * can be modified, it's a 1688", which lead to a correct detection |
@@ -135,7 +135,7 @@ | |||
135 | * About recognition of ESS chips | 135 | * About recognition of ESS chips |
136 | * | 136 | * |
137 | * The distinction of ES688, ES1688, ES1788, ES1887 and ES1888 is described in | 137 | * The distinction of ES688, ES1688, ES1788, ES1887 and ES1888 is described in |
138 | * a (preliminary ??) datasheet on ES1887. It's aim is to identify ES1887, but | 138 | * a (preliminary ??) datasheet on ES1887. Its aim is to identify ES1887, but |
139 | * during detection the text claims that "this chip may be ..." when a step | 139 | * during detection the text claims that "this chip may be ..." when a step |
140 | * fails. This scheme is used to distinct between the above chips. | 140 | * fails. This scheme is used to distinct between the above chips. |
141 | * It appears however that some PnP chips like ES1868 are recognized as ES1788 | 141 | * It appears however that some PnP chips like ES1868 are recognized as ES1788 |
@@ -156,9 +156,9 @@ | |||
156 | * | 156 | * |
157 | * The existing ES1688 support didn't take care of the ES1688+ recording | 157 | * The existing ES1688 support didn't take care of the ES1688+ recording |
158 | * levels very well. Whenever a device was selected (recmask) for recording | 158 | * levels very well. Whenever a device was selected (recmask) for recording |
159 | * it's recording level was loud, and it couldn't be changed. The fact that | 159 | * its recording level was loud, and it couldn't be changed. The fact that |
160 | * internal register 0xb4 could take care of RECLEV, didn't work meaning until | 160 | * internal register 0xb4 could take care of RECLEV, didn't work meaning until |
161 | * it's value was restored every time the chip was reset; this reset the | 161 | * its value was restored every time the chip was reset; this reset the |
162 | * value of 0xb4 too. I guess that's what 4front also had (have?) trouble with. | 162 | * value of 0xb4 too. I guess that's what 4front also had (have?) trouble with. |
163 | * | 163 | * |
164 | * About ES1887 support: | 164 | * About ES1887 support: |
@@ -169,9 +169,9 @@ | |||
169 | * the latter case the recording volumes are 0. | 169 | * the latter case the recording volumes are 0. |
170 | * Now recording levels of inputs can be controlled, by changing the playback | 170 | * Now recording levels of inputs can be controlled, by changing the playback |
171 | * levels. Futhermore several devices can be recorded together (which is not | 171 | * levels. Futhermore several devices can be recorded together (which is not |
172 | * possible with the ES1688. | 172 | * possible with the ES1688). |
173 | * Besides the separate recording level control for each input, the common | 173 | * Besides the separate recording level control for each input, the common |
174 | * recordig level can also be controlled by RECLEV as described above. | 174 | * recording level can also be controlled by RECLEV as described above. |
175 | * | 175 | * |
176 | * Not only ES1887 have this recording mixer. I know the following from the | 176 | * Not only ES1887 have this recording mixer. I know the following from the |
177 | * documentation: | 177 | * documentation: |
diff --git a/sound/oss/via82cxxx_audio.c b/sound/oss/via82cxxx_audio.c index 1a921ee71aba..29a6e0cff79f 100644 --- a/sound/oss/via82cxxx_audio.c +++ b/sound/oss/via82cxxx_audio.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/fs.h> | 24 | #include <linux/fs.h> |
25 | #include <linux/mm.h> | 25 | #include <linux/mm.h> |
26 | #include <linux/pci.h> | 26 | #include <linux/pci.h> |
27 | #include <linux/poison.h> | ||
27 | #include <linux/init.h> | 28 | #include <linux/init.h> |
28 | #include <linux/interrupt.h> | 29 | #include <linux/interrupt.h> |
29 | #include <linux/proc_fs.h> | 30 | #include <linux/proc_fs.h> |
@@ -308,7 +309,7 @@ struct via_info { | |||
308 | unsigned sixchannel: 1; /* 8233/35 with 6 channel support */ | 309 | unsigned sixchannel: 1; /* 8233/35 with 6 channel support */ |
309 | unsigned volume: 1; | 310 | unsigned volume: 1; |
310 | 311 | ||
311 | int locked_rate : 1; | 312 | unsigned locked_rate : 1; |
312 | 313 | ||
313 | int mixer_vol; /* 8233/35 volume - not yet implemented */ | 314 | int mixer_vol; /* 8233/35 volume - not yet implemented */ |
314 | 315 | ||
@@ -3522,7 +3523,7 @@ err_out_have_mixer: | |||
3522 | 3523 | ||
3523 | err_out_kfree: | 3524 | err_out_kfree: |
3524 | #ifndef VIA_NDEBUG | 3525 | #ifndef VIA_NDEBUG |
3525 | memset (card, 0xAB, sizeof (*card)); /* poison memory */ | 3526 | memset (card, OSS_POISON_FREE, sizeof (*card)); /* poison memory */ |
3526 | #endif | 3527 | #endif |
3527 | kfree (card); | 3528 | kfree (card); |
3528 | 3529 | ||
@@ -3559,7 +3560,7 @@ static void __devexit via_remove_one (struct pci_dev *pdev) | |||
3559 | via_ac97_cleanup (card); | 3560 | via_ac97_cleanup (card); |
3560 | 3561 | ||
3561 | #ifndef VIA_NDEBUG | 3562 | #ifndef VIA_NDEBUG |
3562 | memset (card, 0xAB, sizeof (*card)); /* poison memory */ | 3563 | memset (card, OSS_POISON_FREE, sizeof (*card)); /* poison memory */ |
3563 | #endif | 3564 | #endif |
3564 | kfree (card); | 3565 | kfree (card); |
3565 | 3566 | ||