Crud :(
I had asked them and they said that the hypervisor should allow for AC3 pass-through. In my inital review of the snd_ps3.c code, it looked like it was basically a data-pump, handling the DMA & interupts to move data from the passed in stream to the h/w (via the hypervisor). I also assumed that the iec bits (in headers in the SPDIF frames) were being set by higher levels in the software stack.
If the bits are being set by the hardware and/or hypervisor then I'll have to fall back to plan "B".
I've been programming for 20+ years, and have put kernel mods into production, but the last kernel hacking/device driver I did was in SYSV. I can forward changes/fixes to Geoff, for inclusion rolling things "upstream". I don't have direct access to inside information other than the source-code, but can forward the requests for more detailed info.
let me know if I can help GT
p.s. thanks for your time and patience.
On 7/5/07, Takashi Iwai tiwai@suse.de wrote:
At Wed, 04 Jul 2007 18:23:09 -0700, GT Bradley wrote:
right, For my Fedora install, these files are at /etc/alsa/cards, (although the iec958.conf) is in /etc/alsa/pcm).
The iec958.conf seems resonable, although I don't fully understand the syntax of the file, nor understand how the asoundrc file wires to /etc/alsa/... to the actual linux driver. It seems to pass through to
the default device (which is what I want)
using the system-config-soundcard utility, I do get surround sound, and is displays the card as PS3 whcih matches the output of aplay -l I've
tryed createing a /etc/alsa/cards/PS3.conf file as follows:
It seems that the current PS3 driver doesn't support the passthru properly yet. For AC3, you'd have to set up the IEC958 status bits, but the driver doesn't support it. Some receivers are robust that work even without non-audio bit, but many receivers require the proper status bits. I'll contact with SCE guys for fixing this issue.
Takashi