English
Language : 

WM9714L_06 Datasheet, PDF (61/94 Pages) Wolfson Microelectronics plc – AC 97 Audio CODEC
Pre-Production
WM9714L
GPIO AND INTERRUPT CONTROL
The WM9714L has eight GPIO pins that operate as defined in the AC’97 Revision 2.2 specification.
Each GPIO pin can be set up as an input or as an output, and has corresponding bits in register 54h
and in slot 12. The state of a GPIO output is determined by sending data through slot 12 of outgoing
frames (SDATAOUT). Data can be returned from a GPIO input by reading the register bit, or
examining slot 12 of incoming frames (SDATAIN). GPIO inputs can be made sticky, and can be
programmed to generate an interrupt, transmitted either through the AC-Link or through a dedicated,
level-mode interrupt pin (GPIO2/IRQ, pin 45).
In addition, the GPIO pins 1, 3, 4 and 5 can be used for the PCM interface by setting bit 15 of
register 36h (see “PCM Codec” section). Setting this bit disables any GPIO functions selected on
these pins.
REGISTER BIT
ADDRESS
36h
15
PCM Codec
Control
LABEL
CTRL
DEFAULT
0
56h
GPIO Pin
Sharing
8:2 GE#
1 (GPIO)
Table 55 GPIO Additional Function Control
DESCRIPTION
Enables PCM interface on GPIO pins 1, 3, 4 and
5.
0: Normal GPIO functions
1: PCM interface enabled
Note: For PCM interface, one or more of these
pins (depending on master/slave/partial master
mode) must be set up as an output by writing to
register 4Ch (see Table 57)
Toggle GPIO pin function:
0: secondary function enabled
1: GPIO enabled
GPIO pins 2 to 8 are multi-purpose pins that can also be used for other (non-GPIO / -PCM)
purposes, e.g. as a SPDIF output. This is controlled by register 56h (see Table 58)
Note that GPIO6/7/8 each have an additional function independent of the GPIO / auxillary functions
discussed above. If these pins are to be used as GPIO then the independent function needs to be
disabled using its own control registers, e.g. to use pin 11 as a GPIO then the RESETB function
needs to be disabled (RSTDIS, register 5Ah, bit 8).
Independently of the GPIO pins, the WM9714L also has seven virtual GPIOs. These are signals from
inside the WM9714L, which are treated as if they were GPIO input signals. From a software
perspective, virtual GPIOs are the same as GPIO pins, but they cannot be set up as outputs, and are
not tied to an actual pin. This allows for simple, uniform processing of different types of signals that
may generate interrupts (e.g. battery warnings, jack insertion, high-temperature warning, or GPIO
signals).
w
PP Rev 3.0 June 2006
61