2 interrupts, 1 channel interrupts, 1 ris – Cirrus Logic EP93xx User Manual

Page 691: 2 tis, 2 interrupts -3, 1 channel interrupts -3, 1 ris -3 22.2.1.2 tis -3

Advertising
background image

DS785UM1

22-3

Copyright 2007 Cirrus Logic

AC’97 Controller

EP93xx User’s Guide

2

2

2

2

22

transmitted at 48 kHz, the external codec does not have Data Request Disable bits for these
slots. Data for transmission on slots 1, 2, and 12 can be obtained from either the channels or
the registers SLOT1RXTX, AC97S2Data and AC97S12Data. However, consistent usage of
one of these two methods should be maintained.

If the slot enable bits are set when receiving the data for slots 1, 2, and 12, the data is stored
in the channel and not the SLOT1/2/12RX registers. If the slot enable bits are not set, then
the data will always go to the registers.

The user should only use the channels to transmit slot 1 and 2 data when they are setting the
external codec up for operation. Once the set up of the external codec is complete, the data
for slot 1 and 2 should come via the SLOT1/2TX registers. This action frees up the channel.

22.2 Interrupts

The AC’97 Controller generates individual maskable active HIGH interrupts. Each interrupt
may be enabled or disabled using the appropriate enable bit. Setting the bit HIGH enables
the corresponding interrupt. This allows for a system interrupt controller to provide the mask
registers for each interrupt.

The status of the individual interrupt sources can be read from appropriate register. The
interrupts are ORed to create one interrupt (AC97INTR) for the AC’97 controller block

22.2.1 Channel Interrupts

The individual interrupts that are generated by each transmit/receive channel are described
below. The status of the interrupts can be read from the AC97RISRx or AC97ISRx registers,
and is masked in the AC97IEx register.

22.2.1.1 RIS

If the receive FIFO is enabled and the mask bit RIE is set, the FIFO receive interrupt is
asserted when the AC’97 Controller receive FIFO is greater than or equal to half full. The
receive interrupt is cleared when the FIFO becomes less than half full.

If the receive FIFO is disabled, it has a depth of one location. Any data received will fill that
one location, causing the receive interrupt to be asserted high. The receive interrupt is
cleared by performing a single read of the receive FIFO.

22.2.1.2 TIS

If the transmit FIFO is enabled and the mask bit TIE is set, the FIFO transmit interrupt is
asserted when the AC’97 Controller transmit FIFO is at least half-empty. The FIFO transmit
interrupt is cleared by filling the transmit FIFO more than half full.

If the transmit FIFO is disabled (has a depth of one location) and there is no data present in
the transmitters single location, the transmit interrupt is asserted high. The transmit interrupt
is cleared by performing a single write to the transmit FIFO.

Advertising