WM8753

From Openmoko

(Difference between revisions)
Jump to: navigation, search
 
(13 intermediate revisions by 8 users not shown)
Line 2: Line 2:
 
* Product Homepage: http://www.wolfsonmicro.com/products/WM8753/
 
* Product Homepage: http://www.wolfsonmicro.com/products/WM8753/
 
* Data Sheet: [http://www.wolfsonmicro.com/uploads/documents/en/WM8753.pdf WM8753.pdf]
 
* Data Sheet: [http://www.wolfsonmicro.com/uploads/documents/en/WM8753.pdf WM8753.pdf]
* Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/asoc.patch
+
* Driver: http://git.openmoko.org/?p=kernel.git;a=tree;f=sound/soc/s3c24xx;hb=andy-tracking
  
 
== Neo FreeRunner ==
 
== Neo FreeRunner ==
Line 8: Line 8:
  
 
== Neo 1973 ==
 
== Neo 1973 ==
* Connected to: [[Samsung S3C2410AL-26]] IIS interface (PCM data), [[Samsung S3C2410AL-26]] I2C (Control)
+
* Connected to: [[Samsung S3C2410]] IIS interface (PCM data), [[Samsung S3C2410]] I2C (Control)
  
 
'''WM8753''' (also the '''Wolfson Codec''') is the "sound card" chip in the [[Neo1973 audio subsystem]]. It has a stereo ADC for recording and a stereo DAC for playback, plus a mono "voice" DAC.
 
'''WM8753''' (also the '''Wolfson Codec''') is the "sound card" chip in the [[Neo1973 audio subsystem]]. It has a stereo ADC for recording and a stereo DAC for playback, plus a mono "voice" DAC.
  
It's connected to the [[S3C2410]] IIS interface for PCM "hi-fi" data, and to the S3C2410 [[I2C]] interface for control. The PCM "voice" input and output is connected to the [[Bluetooth]] chip. The stereo output ("Audio Out": LOUT1 and ROUT1) is connected to [[LM4857]] stereo input (LIN and RIN) for amplification. MONO1 and MONO2 form "GSM Line Out"; RXP and RXN form "GSM Line In". MIC1 is "Headset Mic", and MIC2 is "Call Mic".
+
It's connected to the [[Samsung S3C2410]] IIS interface for PCM "hi-fi" data, and to the S3C2410 [[I2C]] interface for control.
  
The following output pins are not connected: LOUT2 and ROUT2, OUT3, OUT4. The following input pins are not connected: LINE1, LINE2.
+
The PCM "voice" input and output is connected to the [[Bluetooth]] chip.
 +
 
 +
The stereo output ("Audio Out": LOUT1 and ROUT1) is connected to [[LM4853]] stereo input (LIN and RIN) for amplification.
 +
 
 +
LOUT1 and ROUT1: speakers (mix to mono speaker inside LM4853 for GTA2), and headset speakers
 +
 
 +
LOUT2 and ROUT2:handset earpiece
 +
 
 +
MONO1 and MONO2 to "GSM Line Out";
 +
 
 +
RXP and RXN from "GSM Line In".  
 +
 
 +
MIC1 is "Headset Mic"
 +
 
 +
MIC2 is "Handset Mic".
 +
 
 +
VXDOUT: to PCM
 +
 
 +
DACDAT, ADCDAT: to cpu (for software use)
 +
 
 +
The following output pins are not connected:
 +
 +
OUT3, OUT4.
 +
 
 +
LINE1, LINE2 (factory test).
  
 
=== Routing ===
 
=== Routing ===
  
http://wolfson.co.uk/uploads/images/en/WM8753_BlockDiagram.gif
+
http://www.wolfsonmicro.com/images/uploads/block_diagrams/en/WM8753_BlockDiagram.gif
  
 
There are several sources connected via switches that can cut each source out:
 
There are several sources connected via switches that can cut each source out:
Line 49: Line 73:
  
 
==== Neo modes ====
 
==== Neo modes ====
 +
These modes are abstract definitions, which (atm) are represented by some *.state files in /usr/share/openmoko/scenarios, to feed to alsactl tool. There is no hardware or (at this moment) driver implementation of these modes, which in turn means you can easily create other operation modes, exploiting full feature set of Wolfson mixer chip.
  
 
* Off: all off.
 
* Off: all off.
Line 71: Line 96:
 
* [http://www.wolfsonmicro.com/uploads/documents/en/WM8753.pdf The WM8753 data sheet] (PDF)  
 
* [http://www.wolfsonmicro.com/uploads/documents/en/WM8753.pdf The WM8753 data sheet] (PDF)  
  
* asoc-* at [https://svn.openmoko.org/trunk/src/target/kernel/patches/ OpenMoko kernel patches]
+
* asoc-* at [https://svn.openmoko.org/trunk/src/target/kernel/patches/ Openmoko kernel patches]
  
 
[[Category:Neo1973 Hardware]]
 
[[Category:Neo1973 Hardware]]
 +
[[Category:Neo FreeRunner Hardware]]
 +
[[Category:Used chip]]
 +
[[Category:Audio]]
 +
[[Category:Headsets]]

Latest revision as of 16:03, 30 December 2010

Contents

[edit] Neo FreeRunner

[edit] Neo 1973

WM8753 (also the Wolfson Codec) is the "sound card" chip in the Neo1973 audio subsystem. It has a stereo ADC for recording and a stereo DAC for playback, plus a mono "voice" DAC.

It's connected to the Samsung S3C2410 IIS interface for PCM "hi-fi" data, and to the S3C2410 I2C interface for control.

The PCM "voice" input and output is connected to the Bluetooth chip.

The stereo output ("Audio Out": LOUT1 and ROUT1) is connected to LM4853 stereo input (LIN and RIN) for amplification.

LOUT1 and ROUT1: speakers (mix to mono speaker inside LM4853 for GTA2), and headset speakers

LOUT2 and ROUT2:handset earpiece

MONO1 and MONO2 to "GSM Line Out";

RXP and RXN from "GSM Line In".

MIC1 is "Headset Mic"

MIC2 is "Handset Mic".

VXDOUT: to PCM

DACDAT, ADCDAT: to cpu (for software use)

The following output pins are not connected:

OUT3, OUT4.

LINE1, LINE2 (factory test).

[edit] Routing

http://www.wolfsonmicro.com/images/uploads/block_diagrams/en/WM8753_BlockDiagram.gif

There are several sources connected via switches that can cut each source out:

  • "Left Mixer Left" and "Right Mixer Right Playback Switch" connect the stereo DAC for stereo mixing.
  • "Mono Mixer Left" and "Mono Mixer Right Playback Switch" connect the stereo DAC for mono mixing.
  • XXX bypass, sidetone, voice
From: Joerg Reisenweber <joerg@openmoko.org>
To: openmoko-devel@lists.openmoko.org
Date: Thu, 12 Jun 2008 15:48:58 +0200

LOUT2/ROUT2 is handset earpiece (aka receiver).
LOUT1/ROUT1 is routing to external amp, which there is switching between
headset-stereo and device-speaker-mono(GTA02)/stereo(GTA01) via
cpu-GPIO[HP_IN]. (what also is a function I expect to see in alsa-driver of
our "OEM-card", but surely NOT in WM8753-alsa-driver)

NC: OUT3 OUT4

MONO1, MONO2: differential output routing to mic analog in of GSM

and while I'm writing...
MIC2,MIC2N: diff. input from handset mic
MIC1,MIC1N: "differential" Input from headset (ring3 jack, MIC1N:GND via 100N)
RXP,RXN: diff. input from GSM analog "earpiece" output
ACOP->AIN via 100N
LINE1, LINE2: to testpoint H-TP3001/2, NC
VXD: digital PCM to BT (mono only?)
DACDAT, ADCDAT: to cpu via IIS

[edit] Neo modes

These modes are abstract definitions, which (atm) are represented by some *.state files in /usr/share/openmoko/scenarios, to feed to alsactl tool. There is no hardware or (at this moment) driver implementation of these modes, which in turn means you can easily create other operation modes, exploiting full feature set of Wolfson mixer chip.

  • Off: all off.
  • GSM Handset: only "Headset Mic" off.
  • GSM Headset: only "Call Mic" off.
  • GSM Bluetooth: only "Line In" and "Line Out" on.
  • Speakers: only "Audio Out" on.
  • Headphones: only "Audio Out" on.
  • Capture Handset: only "Call Mic" on.
  • Capture Headset: only "Headset Mic" on.
  • Capture Bluetooth: all off.

[edit] See also

[edit] External links

Personal tools

Neo FreeRunner

Neo 1973

WM8753 (also the Wolfson Codec) is the "sound card" chip in the Neo1973 audio subsystem. It has a stereo ADC for recording and a stereo DAC for playback, plus a mono "voice" DAC.

It's connected to the S3C2410 IIS interface for PCM "hi-fi" data, and to the S3C2410 I2C interface for control. The PCM "voice" input and output is connected to the Bluetooth chip. The stereo output ("Audio Out": LOUT1 and ROUT1) is connected to LM4857 stereo input (LIN and RIN) for amplification. MONO1 and MONO2 form "GSM Line Out"; RXP and RXN form "GSM Line In". MIC1 is "Headset Mic", and MIC2 is "Call Mic".

The following output pins are not connected: LOUT2 and ROUT2, OUT3, OUT4. The following input pins are not connected: LINE1, LINE2.

Routing

http://wolfson.co.uk/uploads/images/en/WM8753_BlockDiagram.gif

There are several sources connected via switches that can cut each source out:

  • "Left Mixer Left" and "Right Mixer Right Playback Switch" connect the stereo DAC for stereo mixing.
  • "Mono Mixer Left" and "Mono Mixer Right Playback Switch" connect the stereo DAC for mono mixing.
  • XXX bypass, sidetone, voice
From: Joerg Reisenweber <joerg@openmoko.org>
To: openmoko-devel@lists.openmoko.org
Date: Thu, 12 Jun 2008 15:48:58 +0200

LOUT2/ROUT2 is handset earpiece (aka receiver).
LOUT1/ROUT1 is routing to external amp, which there is switching between
headset-stereo and device-speaker-mono(GTA02)/stereo(GTA01) via
cpu-GPIO[HP_IN]. (what also is a function I expect to see in alsa-driver of
our "OEM-card", but surely NOT in WM8753-alsa-driver)

NC: OUT3 OUT4

MONO1, MONO2: differential output routing to mic analog in of GSM

and while I'm writing...
MIC2,MIC2N: diff. input from handset mic
MIC1,MIC1N: "differential" Input from headset (ring3 jack, MIC1N:GND via 100N)
RXP,RXN: diff. input from GSM analog "earpiece" output
ACOP->AIN via 100N
LINE1, LINE2: to testpoint H-TP3001/2, NC
VXD: digital PCM to BT (mono only?)
DACDAT, ADCDAT: to cpu via IIS

Neo modes

  • Off: all off.
  • GSM Handset: only "Headset Mic" off.
  • GSM Headset: only "Call Mic" off.
  • GSM Bluetooth: only "Line In" and "Line Out" on.
  • Speakers: only "Audio Out" on.
  • Headphones: only "Audio Out" on.
  • Capture Handset: only "Call Mic" on.
  • Capture Headset: only "Headset Mic" on.
  • Capture Bluetooth: all off.

See also

External links