WM8912
Production Data
Note that a ‘Dummy’ write can be inserted into a control sequence by commanding the sequencer to
write a value of 0 to bit 0 of Register R255 (FFh). This is effectively a write to a non-existent register
location. This can be used in order to create placeholders ready for easy adaptation of the sequence.
For example, a sequence could be defined to power-up a mono signal path from DACL to
headphone, with a ‘dummy’ write included to leave space for easy modification to a stereo signal
path configuration. Dummy writes can also be used in order to implement additional time delays
between register writes. Dummy writes are included in the default start-up sequence – see Table 59.
In summary, the Control Register to be written is set by the WSEQ_ADDR field. The data bits that
are written are determined by a combination of WSEQ_DATA_START, WSEQ_DATA_WIDTH and
WSEQ_DATA. This is illustrated below for an example case of writing to the VMID_RES field within
Register R5 (05h).
Figure 53 Control Write Sequencer Example
In this example, the Start Position is bit 01 (WSEQ_DATA_START = 0001b) and the Data width is 2
bits (WSEQ_DATA_WIDTH = 0001b). With these settings, the Control Write Sequencer would
updated the Control Register R5 [2:1] with the contents of WSEQ_DATA [1:0].
DEFAULT SEQUENCES
When the WM8912 is powered up, two Control Write Sequences are available through default
settings in both RAM and ROM memory locations. The purpose of these sequences, and the register
write required to initiate them, is summarised in Table 58. A single register write will initiate the
sequence in both cases.
WSEQ START
INDEX
WSEQ FINISH
INDEX
PURPOSE
TO INITIATE
Write 0100h to
Register R111 (6Fh)
Write 0119h to
0 (00h)
22 (16h)
39 (27h)
Start-Up sequence
Shutdown sequence
25 (19h)
Register R111 (6Fh)
Table 58 Write Sequencer Default Sequences
Note on Shutdown sequence: The instruction at Index Address 25 (19h) shorts the outputs
LINEOUTL and LINEOUTR. If the Line outputs are not in use at the time the sequence is run, then
the sequence could, instead, be started at Index Address 26.
PD, Rev 4.0, September 2010
86
w