linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Merge of dmasound back-port and BK 2.4.1p4 dmasound driver
@ 2001-01-16  7:01 Iain Sandoe
  0 siblings, 0 replies; 2+ messages in thread
From: Iain Sandoe @ 2001-01-16  7:01 UTC (permalink / raw)
  To: linuxppc-dev, linux-audio-dev, linux-m68k


Hi,

For anyone who wants it, there's a merge of the changes I made doing the
back-port code and the latest BK 2.4.x Linux PPC kernel. (2.4.1pre4 tested).

I'm not working on the back-port any more... just 2.4.x.

-----

For some reason...  this seems a lot more stable than the 'stock' version.
IMHO this is probably a Bad Thing (tm) because it likely means there is some
subtle bug floating around in there still :-(  ... I didn't touch the dbdma
or IRQ code... so I shouldn't have made any improvement...

-----

Linked from the usual place ;-)
http://www.drfruitcake.com/linux/linuxppc.html

-----

It's not an amazingly big deal... but... some people may find it useful (it
makes some of the user-land apps less fragile by being more forthcoming
about the hardware capabilities).

I would be particularly interested to hear if the Pismo has decided that
byte-swapping is a Good Thing under 2.4.1 ;-)

------

 + fixes SND_DSP_GETFMTS to OSS spec.
 + fixes SND_DSP_GETCAPS to return actual info for the machine
 + fixes a crash if translations were called which were not present
 + tries to be more flexible about determining the AWACS/Screamer sample
rates
 + amp enable is conditional upon perch now rather than CUDA
 + requests the true AWACS regs size on ioremap (won't make a difference
methinks - but).

 + cosmetic changes to the output (/dev/sndstat is more informative about
the capabilities of the hardware now).

 + changes to the build mechanism to allow the way forward for more PMac
models (and I sincerely hope without breaking other arch support).

=======  Arch-specific things...

The translation tables are now built separately and the latest makefile
should support the "one-size-fits-all" concept as well as "this is my arch
module only".

I've added a CONFIG_DMASOUND_RECORD so that people who don't want to build
in record code (for machines that don't have it) can leave it out...

... but, if you leave it in, then you only need to make one version of
dmaosund_core.o to support each arch (i.e. ppc/m68k).

=========

as always...

.... tested on PPC (PMac) [g3/beige, Lombard, 9600/233]

.... not even built for other archs...

ciao,
Iain.

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread
* Re: [PATCH] Merge of dmasound back-port and BK 2.4.1p4 dmasound driver
@ 2001-01-20 12:12 Jiri Masik
  0 siblings, 0 replies; 2+ messages in thread
From: Jiri Masik @ 2001-01-20 12:12 UTC (permalink / raw)
  To: linuxppc-dev


Hi Iain,

thanks for the new version of dmasound. I went through the tests with
stest you suggest and all passed well on my pismo. However I had one
kernel oops which is listed below if you can find any useful info from
it. I tried with more recent ksymoops, the warnings about reliability
are still there and the report is different.
cheers
        Jiri

PowerMac (AWACS rev 3 [screamer]) DMA sound driver:
Hardware supported formats: [signed 16 bit BE]
Hardware supports the following sample rates:
44100 22050
current settings:
sound.format = 0x20 (signed 16 bit BE)(Phys: signed 16 bit BE)
  sound.speed = 44100Hz (phys. 44100Hz)
  sound.stereo = 0x1 (stereo)
  write_sq.block_size = 16384 write_sq.max_count = 4
  write_sq.max_active = 2
  write_sq.count = 2 write_sq.rear_size = 16384
  write_sq.active = 2 write_sq.syncing = 0
  read_sq.block_size = 16384 read_sq.max_count = 0 read_sq.max_active
= 2
  read_sq.count = 0 read_sq.rear_size = 0
  read_sq.active = 0 read_sq.syncing = 0

Linux version 2.4.1-pre8 (root@pceple53) (gcc version 2.95.3 20010101
(prerelease)) #1 Fri Jan 19 21:25:45 CET 2001

ksymoops 2.3.4 on ppc 2.4.1-pre8.  Options used
     -V (default)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.4.1-pre8/ (default)
     -m /boot/System.map-2.4.1-pre8 (specified)

Warning (compare_maps): mismatch on symbol xchg_u32  , ksyms_base says c000c2e8, System.map says c0006874.  Ignoring ksyms_base entry
Warning (compare_maps): mismatch on symbol awacs_device_id  , dmasound_pmac says c581be48, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c168.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol bs_val  , dmasound_pmac says c581be1c, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c13c.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol has_iic  , dmasound_pmac says c581be50, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c170.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol has_perch  , dmasound_pmac says c581be4c, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c16c.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol is_burgundy  , dmasound_pmac says c581be44, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c164.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol is_screamer  , dmasound_pmac says c581be40, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c160.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol needs_amp_switch_on  , dmasound_pmac says c581be54, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c581c174.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol dmasound_catchRadius  , dmasound_core says c5813770, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_core.o says c5813794.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_core.o entry
Warning (compare_maps): mismatch on symbol entry_lock  , hfs says c590638c, /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o says c5906c90.  Ignoring /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o entry
Warning (compare_maps): mismatch on symbol hfs_version  , hfs says c5906390, /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o says c5906c94.  Ignoring /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o entry
Jan 19 22:48:43 pceple53 kernel: Oops: kernel access of bad area, sig: 11
Jan 19 22:48:43 pceple53 kernel: NIP: C58183DC XER: 00000000 LR: C58183B0 SP: C3747E00 REGS: c3747d50 TRAP: 0300
Using defaults from ksymoops -t elf32-powerpc -a powerpc:common
Jan 19 22:48:43 pceple53 kernel: MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
Jan 19 22:48:43 pceple53 kernel: TASK = c3746000[1213] 'plaympeg' Last syscall: 54
Jan 19 22:48:43 pceple53 kernel: last math c3746000 last altivec 00000000
Jan 19 22:48:43 pceple53 kernel: GPR00: 00000004 C3747E00 C3746000 C370F6A0 C01C0000 00002030 00000000 C5810000
Jan 19 22:48:43 pceple53 kernel: GPR08: C5813B7C 00000000 00000000 00000000 02000000 1001B510 00000000 00000000
Jan 19 22:48:43 pceple53 kernel: GPR16: 00000000 00000000 00000000 10010000 00009032 03747E80 00000000 C00042B0
Jan 19 22:48:43 pceple53 kernel: GPR24: C0003FE0 10002DB8 7FFFF268 00000002 C5813B20 C5810000 7FFFEE38 C370F6A0
Jan 19 22:48:43 pceple53 kernel: Call backtrace:
Jan 19 22:48:43 pceple53 kernel: C0644760 C58116DC C5812524 C004D760 C000403C 0FED6814 0FF0FBEC
Jan 19 22:48:43 pceple53 kernel: 0FF1008C 0FF0CC6C 0FF90734 0FF8A96C 0FF898EC 0FF89718 0FF8FE7C
Jan 19 22:48:43 pceple53 kernel: 10002690 0FD5CCC8 00000000
Warning (Oops_read): Code line not seen, dumping what data is available

>>NIP; c58183dc <[dmasound_pmac]PMacReadSqSetup+60/154>   <=====
Trace; c0644760 <_end+3fab70/55c4470>
Trace; c58116dc <[dmasound_core]sq_setup+70/80>
Trace; c5812524 <[dmasound_core]sq_ioctl+660/740>
Trace; c004d760 <sys_ioctl+268/28c>
Trace; c000403c <ret_from_syscall_1+0/b4>
Trace; 0fed6814 Before first symbol
Trace; 0ff0fbec Before first symbol
Trace; 0ff1008c Before first symbol
Trace; 0ff0cc6c Before first symbol
Trace; 0ff90734 Before first symbol
Trace; 0ff8a96c Before first symbol
Trace; 0ff898ec Before first symbol
Trace; 0ff89718 Before first symbol
Trace; 0ff8fe7c Before first symbol
Trace; 10002690 Before first symbol
Trace; 0fd5ccc8 Before first symbol
Trace; 00000000 Before first symbol


12 warnings issued.  Results may not be reliable.

ksymoops 2.3.7 on ppc 2.4.1-pre8.  Options used
     -V (default)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.4.1-pre8/ (default)
     -m /boot/System.map-2.4.1-pre8 (specified)

Warning (compare_maps): mismatch on symbol xchg_u32  , ksyms_base says c000c2e8, System.map says c0006874.  Ignoring ksyms_base entry
Warning (compare_maps): mismatch on symbol entry_lock  , hfs says c591c38c, /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o says c591cc90.  Ignoring /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o entry
Warning (compare_maps): mismatch on symbol hfs_version  , hfs says c591c390, /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o says c591cc94.  Ignoring /lib/modules/2.4.1-pre8/kernel/fs/hfs/hfs.o entry
Warning (compare_maps): mismatch on symbol awacs_device_id  , dmasound_pmac says c5902e48, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c5903168.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol bs_val  , dmasound_pmac says c5902e1c, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c590313c.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol has_iic  , dmasound_pmac says c5902e50, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c5903170.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol has_perch  , dmasound_pmac says c5902e4c, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c590316c.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol is_burgundy  , dmasound_pmac says c5902e44, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c5903164.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol is_screamer  , dmasound_pmac says c5902e40, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c5903160.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol needs_amp_switch_on  , dmasound_pmac says c5902e54, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o says c5903174.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_pmac.o entry
Warning (compare_maps): mismatch on symbol dmasound_catchRadius  , dmasound_core says c58fa770, /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_core.o says c58fa794.  Ignoring /lib/modules/2.4.1-pre8/kernel/drivers/sound/dmasound/dmasound_core.o entry
Jan 19 22:48:43 pceple53 kernel: Oops: kernel access of bad area, sig: 11
Jan 19 22:48:43 pceple53 kernel: NIP: C58183DC XER: 00000000 LR: C58183B0 SP: C3747E00 REGS: c3747d50 TRAP: 0300
Using defaults from ksymoops -t elf32-powerpc -a powerpc:common
Jan 19 22:48:43 pceple53 kernel: MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
Jan 19 22:48:43 pceple53 kernel: TASK = c3746000[1213] 'plaympeg' Last syscall: 54
Jan 19 22:48:43 pceple53 kernel: last math c3746000 last altivec 00000000
Jan 19 22:48:43 pceple53 kernel: GPR00: 00000004 C3747E00 C3746000 C370F6A0 C01C0000 00002030 00000000 C5810000
Jan 19 22:48:43 pceple53 kernel: GPR08: C5813B7C 00000000 00000000 00000000 02000000 1001B510 00000000 00000000
Jan 19 22:48:43 pceple53 kernel: GPR16: 00000000 00000000 00000000 10010000 00009032 03747E80 00000000 C00042B0
Jan 19 22:48:43 pceple53 kernel: GPR24: C0003FE0 10002DB8 7FFFF268 00000002 C5813B20 C5810000 7FFFEE38 C370F6A0
Jan 19 22:48:43 pceple53 kernel: Call backtrace:
Jan 19 22:48:43 pceple53 kernel: C0644760 C58116DC C5812524 C004D760 C000403C 0FED6814 0FF0FBEC
Jan 19 22:48:43 pceple53 kernel: 0FF1008C 0FF0CC6C 0FF90734 0FF8A96C 0FF898EC 0FF89718 0FF8FE7C
Jan 19 22:48:43 pceple53 kernel: 10002690 0FD5CCC8 00000000
Warning (Oops_read): Code line not seen, dumping what data is available

>>NIP; c58183dc <_end+55ce7ec/56ab470>   <=====
Trace; c0644760 <_end+3fab70/56ab470>
Trace; c58116dc <_end+55c7aec/56ab470>
Trace; c5812524 <_end+55c8934/56ab470>
Trace; c004d760 <sys_ioctl+268/28c>
Trace; c000403c <ret_from_syscall_1+0/b4>
Trace; 0fed6814 Before first symbol
Trace; 0ff0fbec Before first symbol
Trace; 0ff1008c Before first symbol
Trace; 0ff0cc6c Before first symbol
Trace; 0ff90734 Before first symbol
Trace; 0ff8a96c Before first symbol
Trace; 0ff898ec Before first symbol
Trace; 0ff89718 Before first symbol
Trace; 0ff8fe7c Before first symbol
Trace; 10002690 Before first symbol
Trace; 0fd5ccc8 Before first symbol
Trace; 00000000 Before first symbol


12 warnings issued.  Results may not be reliable.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-01-20 12:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-01-16  7:01 [PATCH] Merge of dmasound back-port and BK 2.4.1p4 dmasound driver Iain Sandoe
  -- strict thread matches above, loose matches on Subject: below --
2001-01-20 12:12 Jiri Masik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).