Jim Morris escreveu: > Cesar Eduardo Barros wrote: >> Jim Morris escreveu: >>> One thing that may help, is if someone could provide a mapping of the >>> wolfson registers as documented in the WM8753L pdf to the alsa >>> controls. Someone had to have written the code that twiddles the >>> registers in that chip, and would know which also control matches >>> which register. >> That would be sound/soc/codecs/wm8753.c and >> sound/soc/s3c24xx/neo1973_gta02_wm8753.c on the kernel source code. Take >> a look: >> >> http://git.openmoko.org/?p=kernel.git;a=blob;f=sound/soc/codecs/wm8753.c;hb=stable >> >> >> http://git.openmoko.org/?p=kernel.git;a=blob;f=sound/soc/s3c24xx/neo1973_gta02_wm8753.c;hb=stable >> >> >> >> The mapping is there, you only have to find out how it's described. >> > > Thanks for the pointers. Thats 2,000 lines of code that is about as clear as > mud! (and I've written > audio drivers before). > > There is no mention of Bluetooth in these drivers, and no indication how to > switch into bluetooth mode.
That's because the Bluetooth is in another chip. For that, you need the full schematics: http://downloads.openmoko.org/schematics/GTA02/Schematics_Freerunner-GTA02_A5-A7cumulative_public_RC0.pdf The very first diagram (page 2) shows how the chips fit together. There you can see how the bluetooth chip is connected to the codec: the PCM pins. There seems to be a comment saying something about "BT Codec DAI" on neo1973_gta02_wm8753.c, which seems related. So, you just need to find out: - How to switch bluetooth audio I/O to these PCM pins (should be something in the HCI-USB standard). - How to route within the codec between the PCM pins and the pins which are connected to the GSM chip (these pins are also shown in the diagram). A possible hint: back when trying to find out why the GTA01 used too much power when off, we had to find how to turn off the audio amp (another chip). I saw a concept called a "scenario", which is some sort of predefined audio routing on the kernel. So perhaps you just have to find the correct scenario and how to select it. On neo1973_wm8753.c, it's the "Neo Mode" control; for some very strange reason, there's no equivalent on neo1973_gta02_wm8753.c, however the defines are still there in the top of the file! > I really don't see how we are supposed to figure this stuff out, without any > help from Openmoko. With the schematics. That's one of the reasons they were released. With them, the detailed datasheet for the chips, and the kernel source code, you can do a lot. -- Cesar Eduardo Barros [EMAIL PROTECTED] [EMAIL PROTECTED] _______________________________________________ Openmoko community mailing list [email protected] http://lists.openmoko.org/mailman/listinfo/community

