Intel PXA255 Speaker System User Manual


 
Intel® PXA255 Processor Developer’s Manual 14-5
Inter-Integrated-Circuit Sound (I2S) Controller
Asserting the DREC bit in SACR1 has the following effects:
1. I2SLINK recording activity is disabled. The frame or data sample, in the midst of which the
recording is disabled, could have invalid data (some data bits will be over-written with zeros).
To avoid this, disable record only after the transfer of valid data.
2. Receive FIFO pointers are reset to zero.
3. Receive FIFO fill-level is reset to zero.
4. Any read operations by the DMA/CPU are returned with zeros.
5. Receive DMA requests are disabled.
14.3.4 Transmit FIFO Errors
A status bit is set during Transmit Under-run conditions. If enabled, this can trigger an interrupt.
For further details, see Section 14.6.3, Section 14.6.6 and Section 14.6.5. During Transmit Under-
run conditions, the last valid sample is continuously sent out across the I2SLINK. Transmit Under-
run can occur under the following conditions:
1. Valid transmit data is still available in memory, but the DMA controller starves the Transmit
FIFO, as it is busy servicing other higher-priority peripherals.
2. The DMA controller has transferred all valid data from memory to the Transmit FIFO.
During the second condition, the last valid sample is continuously sent across the I2SLINK until
the I2SC is turned off by disabling the SACR0[ENB] bit.
14.3.5 Receive FIFO Errors
A status bit is set during Receive Over-run conditions. If enabled, this can trigger an interrupt. For
further details, see Section 14.6.3, Section 14.6.6 and Section 14.6.5. During Receive Over-run
conditions, data sent by the CODEC is lost (will not be recorded).
14.3.6 Trailing Bytes
When the CODEC has completed transmitting valid data, zeros will be recorded by the I2SC, and
this will continue until the unit is turned off by disabling the SACR0[ENB] bit.
If the total buffer size of the received data is less than a factor of the receive threshold, zeross will
be recorded. A receive DMA request is made when the programmed threshold is reached.
14.4 Serial Audio Clocks and Sampling Frequencies
The BITCLK is the rate at which audio data bits enter or leave the I2SLINK. If BITCLK is an
output, SYSCLK is used by the CODEC to run delta sigma ADC operations.
BITCLK can be supplied either by the CODEC or by an internal PLL. If supplied internally,
BITCLK and SYSCLK are configured as output pins, and both are supplied to the CODEC. If
BITCLK is supplied by the CODEC, then it is configured as an input pin. In this case, the
SYSCLK’s GPIO pin can be used for an alternate function.