diff options
author | James Courtier-Dutton <James@superbug.co.uk> | 2005-11-11 22:45:23 (GMT) |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2006-01-03 11:16:08 (GMT) |
commit | 6ef7e8614c03f90ecb924938f5cc074af2723d35 (patch) | |
tree | 8dc01760c5d61e1b3f7b54cca7ab2bb63c02cc32 /sound/pci/emu10k1/emuproc.c | |
parent | e2b15f8f7dfc7a60ab89162502732120792a644f (diff) | |
download | linux-6ef7e8614c03f90ecb924938f5cc074af2723d35.tar.xz |
[ALSA] snd-emu10k1: Found some new registers to display in debug mode.
Modules: EMU10K1/EMU10K2 driver
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
Diffstat (limited to 'sound/pci/emu10k1/emuproc.c')
-rw-r--r-- | sound/pci/emu10k1/emuproc.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/sound/pci/emu10k1/emuproc.c b/sound/pci/emu10k1/emuproc.c index cc22707..6cdee58 100644 --- a/sound/pci/emu10k1/emuproc.c +++ b/sound/pci/emu10k1/emuproc.c @@ -445,7 +445,7 @@ static void snd_emu_proc_ptr_reg_read(snd_info_entry_t *entry, emu10k1_t *emu = entry->private_data; unsigned long value; int i,j; - if (offset+length > 0x80) { + if (offset+length > 0xa0) { snd_iprintf(buffer, "Input values out of range\n"); return; } @@ -472,7 +472,7 @@ static void snd_emu_proc_ptr_reg_write(snd_info_entry_t *entry, while (!snd_info_get_line(buffer, line, sizeof(line))) { if (sscanf(line, "%x %x %x", ®, &channel_id, &val) != 3) continue; - if ((reg < 0x80) && (reg >=0) && (val <= 0xffffffff) && (channel_id >=0) && (channel_id <= 3) ) + if ((reg < 0xa0) && (reg >=0) && (val <= 0xffffffff) && (channel_id >=0) && (channel_id <= 3) ) snd_ptr_write(emu, iobase, reg, channel_id, val); } } @@ -513,6 +513,12 @@ static void snd_emu_proc_ptr_reg_read20b(snd_info_entry_t *entry, { snd_emu_proc_ptr_reg_read(entry, buffer, 0x20, 0x40, 0x40, 4); } + +static void snd_emu_proc_ptr_reg_read20c(snd_info_entry_t *entry, + snd_info_buffer_t * buffer) +{ + snd_emu_proc_ptr_reg_read(entry, buffer, 0x20, 0x80, 0x20, 4); +} #endif static struct snd_info_entry_ops snd_emu10k1_proc_ops_fx8010 = { @@ -553,6 +559,12 @@ int __devinit snd_emu10k1_proc_init(emu10k1_t * emu) entry->c.text.write = snd_emu_proc_ptr_reg_write20; entry->mode |= S_IWUSR; } + if (! snd_card_proc_new(emu->card, "ptr_regs20c", &entry)) { + snd_info_set_text_ops(entry, emu, 65536, snd_emu_proc_ptr_reg_read20c); + entry->c.text.write_size = 64; + entry->c.text.write = snd_emu_proc_ptr_reg_write20; + entry->mode |= S_IWUSR; + } #endif if (! snd_card_proc_new(emu->card, "emu10k1", &entry)) |