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
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community

Reply via email to