Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 62045
b: refs/heads/master
c: 621887a
h: refs/heads/master
i:
  62043: 4f04ac4
v: v3
  • Loading branch information
Takashi Iwai authored and Jaroslav Kysela committed Jul 20, 2007
1 parent 980ebb7 commit b5bbe1f
Show file tree
Hide file tree
Showing 9 changed files with 343 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0ba7962b9f06c02dd1af93002e8d757805d16758
refs/heads/master: 621887aee9c7b4b613c12b82b83df7e56877f303
7 changes: 6 additions & 1 deletion trunk/Documentation/sound/alsa/ALSA-Configuration.txt
Original file line number Diff line number Diff line change
Expand Up @@ -467,7 +467,12 @@ Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed.
above explicitly.

The power-management is supported.


Module snd-cs5530
_________________

Module for Cyrix/NatSemi Geode 5530 chip.

Module snd-cs5535audio
----------------------

Expand Down
1 change: 1 addition & 0 deletions trunk/include/sound/sb.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ enum sb_hw_type {
SB_HW_ALS100, /* Avance Logic ALS100 chip */
SB_HW_ALS4000, /* Avance Logic ALS4000 chip */
SB_HW_DT019X, /* Diamond Tech. DT-019X / Avance Logic ALS-007 */
SB_HW_CS5530, /* Cyrix/NatSemi 5530 VSA1 */
};

#define SB_OPEN_PCM 0x01
Expand Down
10 changes: 10 additions & 0 deletions trunk/sound/isa/sb/sb16_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -563,6 +563,11 @@ static int snd_sb16_playback_open(struct snd_pcm_substream *substream)
__open_ok:
if (chip->hardware == SB_HW_ALS100)
runtime->hw.rate_max = 48000;
if (chip->hardware == SB_HW_CS5530) {
runtime->hw.buffer_bytes_max = 32 * 1024;
runtime->hw.periods_min = 2;
runtime->hw.rate_min = 44100;
}
if (chip->mode & SB_RATE_LOCK)
runtime->hw.rate_min = runtime->hw.rate_max = chip->locked_rate;
chip->playback_substream = substream;
Expand Down Expand Up @@ -633,6 +638,11 @@ static int snd_sb16_capture_open(struct snd_pcm_substream *substream)
__open_ok:
if (chip->hardware == SB_HW_ALS100)
runtime->hw.rate_max = 48000;
if (chip->hardware == SB_HW_CS5530) {
runtime->hw.buffer_bytes_max = 32 * 1024;
runtime->hw.periods_min = 2;
runtime->hw.rate_min = 44100;
}
if (chip->mode & SB_RATE_LOCK)
runtime->hw.rate_min = runtime->hw.rate_max = chip->locked_rate;
chip->capture_substream = substream;
Expand Down
5 changes: 4 additions & 1 deletion trunk/sound/isa/sb/sb_common.c
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ static int snd_sbdsp_probe(struct snd_sb * chip)
minor = version & 0xff;
snd_printdd("SB [0x%lx]: DSP chip found, version = %i.%i\n",
chip->port, major, minor);

switch (chip->hardware) {
case SB_HW_AUTO:
switch (major) {
Expand Down Expand Up @@ -168,6 +168,9 @@ static int snd_sbdsp_probe(struct snd_sb * chip)
case SB_HW_DT019X:
str = "(DT019X/ALS007)";
break;
case SB_HW_CS5530:
str = "16 (CS5530)";
break;
default:
return -ENODEV;
}
Expand Down
3 changes: 3 additions & 0 deletions trunk/sound/isa/sb/sb_mixer.c
Original file line number Diff line number Diff line change
Expand Up @@ -821,6 +821,7 @@ int snd_sbmixer_new(struct snd_sb *chip)
break;
case SB_HW_16:
case SB_HW_ALS100:
case SB_HW_CS5530:
if ((err = snd_sbmixer_init(chip,
snd_sb16_controls,
ARRAY_SIZE(snd_sb16_controls),
Expand Down Expand Up @@ -950,6 +951,7 @@ void snd_sbmixer_suspend(struct snd_sb *chip)
break;
case SB_HW_16:
case SB_HW_ALS100:
case SB_HW_CS5530:
save_mixer(chip, sb16_saved_regs, ARRAY_SIZE(sb16_saved_regs));
break;
case SB_HW_ALS4000:
Expand All @@ -975,6 +977,7 @@ void snd_sbmixer_resume(struct snd_sb *chip)
break;
case SB_HW_16:
case SB_HW_ALS100:
case SB_HW_CS5530:
restore_mixer(chip, sb16_saved_regs, ARRAY_SIZE(sb16_saved_regs));
break;
case SB_HW_ALS4000:
Expand Down
10 changes: 10 additions & 0 deletions trunk/sound/pci/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,16 @@ config SND_CS46XX_NEW_DSP

This works better than the old code, so say Y.

config SND_CS5530
tristate "CS5530 Audio"
depends on SND && ISA_DMA_API
select SND_SB16
help
Say Y here to include support for audio on Cyrix/NatSemi CS5530 chips.

To compile this driver as a module, choose M here: the module
will be called snd-cs5530.

config SND_CS5535AUDIO
tristate "CS5535/CS5536 Audio"
depends on SND && X86 && !X86_64
Expand Down
2 changes: 2 additions & 0 deletions trunk/sound/pci/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ snd-azt3328-objs := azt3328.o
snd-bt87x-objs := bt87x.o
snd-cmipci-objs := cmipci.o
snd-cs4281-objs := cs4281.o
snd-cs5530-objs := cs5530.o
snd-ens1370-objs := ens1370.o
snd-ens1371-objs := ens1371.o
snd-es1938-objs := es1938.o
Expand All @@ -36,6 +37,7 @@ obj-$(CONFIG_SND_AZT3328) += snd-azt3328.o
obj-$(CONFIG_SND_BT87X) += snd-bt87x.o
obj-$(CONFIG_SND_CMIPCI) += snd-cmipci.o
obj-$(CONFIG_SND_CS4281) += snd-cs4281.o
obj-$(CONFIG_SND_CS5530) += snd-cs5530.o
obj-$(CONFIG_SND_ENS1370) += snd-ens1370.o
obj-$(CONFIG_SND_ENS1371) += snd-ens1371.o
obj-$(CONFIG_SND_ES1938) += snd-es1938.o
Expand Down
Loading

0 comments on commit b5bbe1f

Please sign in to comment.