Apple Tumbler and Snapper audio: looking for testers
Justin Hibbits
jrh29 at alumni.cwru.edu
Thu Oct 9 22:44:53 UTC 2008
Marco,
On Thu, Oct 09, 2008 at 11:40:55AM +0200, Marco Trillo wrote:
> Hi all,
>
> I've implemented audio output for the "Tumbler" and "Snapper" Apple
> I2S-based audio devices.
>
> The machine I have is a eMac G4, but these devices are found on a lot
> of G3 and G4 systems.
> In particular, all iMac G4's, all eMacs, all iBook G4's and most of
> PowerBook G4's have either "Tumbler" or "Snapper".
>
> The following is a more detailed list. Anyone interested in testing
> it? Below is more information on how to obtain it.
>
> Thanks a lot!
> PowerMacs:
> - "PowerMac3,4" PowerMac G4 "Digital audio" [tumbler]
> - "PowerMac3,5" PowerMac G4 "QuickSilver" [tumbler]
> - "PowerMac3,6" PowerMac G4 "Mirrored drive doors" [snapper]
>
> The driver can be obtained in the following tarball:
> <http://www.telefonica.net/web2/marco2z/fbsd/aoa1.tgz>
>
> It includes the "sound/" and "powermac/" subdirectories to include in
> the kernel, something like this:
> $ cp -R sound/macio /usr/src/sys/dev/sound/macio
> $ cp powermac/* /usr/src/sys/powerpc/powermac/
>
> In addition, the "patches/" subdirectory contains the following patches:
> - macio.patch to apply in /usr/src/sys/powerpc/powermac
> - files.patch to apply in /usr/src/sys/conf
> - generic.patch to apply in /usr/src/sys/powerpc/conf, for the GENERIC kernel.
>
> If you don't use the GENERIC kernel you can also enable it manually by
> including the following lines:
>
> device sound
> device davbus
> device i2s
I applied the patch, and got all the same output on my MDD as in your email, but
there is no /dev/pcm0. I do have a /dev/sndstat, and /dev/mixer0. The
following is the output of /dev/sndstat:
FreeBSD Audio Driver (newpcm: 32bit 2007061600/powerpc)
Installed devices:
pcm0: <i2s> at i2s [GIANT] (1p:1v/0r:0v channels default)
And my dmesg:
<snip>
pcm0: <i2s> mem 0x10000-0x10fff,0x8000-0x80ff,0x8100-0x81ff irq 30,1,2 on macio0
interrupting at irq 1
pcm0: [ITHREAD]
GPIO <headphone-mute>: addr 0x6f
interrupting at irq 61
pcm0: [ITHREAD]
GPIO <headphone-detect>: addr 0x67
GPIO <amp-mute>: addr 0x70
interrupting at irq 60
pcm0: [ITHREAD]
GPIO <line-output-detect>: addr 0x66
GPIO <audio-hw-reset>: addr 0x75
enabled outputs: SPEAKER
resetting codec
tumbler_write called without I2C?
pcm_getbuffersize returned 65536
aoa_dma_setprd: addr = 13434880, 32 slots
aoa_chan_setformat: format = 268435488
aoa_chan_setspeed: speed = 44100
aoa_chan_setformat: format = 268435488
aoa_chan_setblocksize: blocksz = 2048, dma->blksz = 2048
aoa_chan_setspeed: speed = 44100
aoa_chan_setformat: format = 268435488
aoa_chan_setblocksize: blocksz = 2048, dma->blksz = 2048
aoa_chan_setblocksize: blocksz = 2048, dma->blksz = 2048
aoa_chan_setspeed: speed = 44100
aoa_chan_setformat: format = 268435488
aoa_chan_setblocksize: blocksz = 2048, dma->blksz = 2048
kiic0: <Keywest I2C controller> mem 0x18000-0x18fff irq 26 on macio0
<snip>
pcm0: codec: <snapper> at address 6Ah on kiic0
0a: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0b: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0c: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0d: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0e: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0f: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
13: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
14: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
14: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
16: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
17: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
18: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
19: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01: 60
43: 02
02: 01 00 00 00 00 00
04: 00 00 00 00 00 00
05: 72
06: 72
07: 10 00 00 00 00 00 00 00 00
08: 10 00 00 00 00 00 00 00 00
21: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
22: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00
23: 00 00 00
24: 00 00 00
40: c2
<snip>
04: 00 5a d5 00 5a d5
Anything else you need to diagnose this?
- Justin
More information about the freebsd-ppc
mailing list