47.6.2 SPI Control Options Select Register

Table 47-5. Register Bit Attribute Legend
SymbolDescriptionSymbolDescriptionSymbolDescription
RReadable bitHCCleared by Hardware(Grey cell)Unimplemented
WWritable bitHSSet by HardwareXBit is unknown at Reset
KWrite to clearSSoftware settable bit
Name: SELCTRL
Offset: 0x04
Reset: 0x00
Property: PAC Write-Protection

Bit 3130292827262524 
 MODEEN[1:0]     DATFILL 
Access R/WR/WR/W 
Reset 000 
Bit 2322212019181716 
 TURSAMP      DATFMTLR 
Access R/WR 
Reset 00 
Bit 15141312111098 
  IGNTURSTXISEL[1:0]CPOLCPHA   
Access R/WR/WR/WR/WR/W 
Reset 00000 
Bit 76543210 
  IGNROVSRXISEL[1:0]  CLKINDLY[1:0] 
Access R/WR/WR/WR/WR/W 
Reset 00000 

Bits 31:30 – MODEEN[1:0] Macro Mode Enabled

Note:
  • MODE_EN (TPD_EN, TDM_EN, AUDEN) can only be written when Enable =’0’
  • When AUDEN = 1, MSTEN controls the direction of both SCK and Frame (aka LRC)
  • FRMEN = 1, When AUDEN = 1 or TDM_EN =1 or TPD_EN=1
  • When AUDEN = 1, this peripheral functions as if FRMMST = ~MSTEN, regardless of its actual value
  • When AUDEN = 1, this peripheral functions as if SMP = 0, regardless of its actual value
ValueDescription
11TPD ENABLED (TPD_EN =1)
10TDM_ENABLED (TDM_EN =1)
01Enable Audio CODEC Support (AUDEN =1)
00DEFAULT - AUDEN =0,TDM_EN =0, TPD_EN = 0)

Bit 24 – DATFILL DATFILL undefined bits 1 or 0

Note:
  1. Can only be written when Enable =’0’, and is not used when using sign extended (SPISGNEXT).
  2. DATAFILL is not applicable for Received data. Only sign extension will.
ValueDescription
0fill undefined bits with“0.”
1fill undefined bits with“1.”

Bit 23 – TURSAMP Transmit Under-run last sample sent

Note: Can only be written when Enable =’0’.
ValueDescription
0Transmit Under-run last sample send out 0’s
1Transmit Under-run last sample, send out last sample of the channel (transmits previously received data), if there is no last sample, 0's will be sent out.

Bit 16 – DATFMTLR Packed data format - left or right justified

Note: Can only be written when Enable=’0’ in audio mode and TPD mode, only a setting of TUSSAMP = 0 should be used.
ValueDescription
0Data is Left Justified (in the upper part for the packed data)
1Data is Right Justified (in the lower part for the packed data)

Bit 14 – IGNTUR Ignore Transmit Underrun

Note: Can only be written when Enable=’0’.
ValueDescription
0A TUR is a critical error which stop SPI operation
1A TUR is NOT a critical error and zeros are transmitted until the SPIxTXB is not empty

Bits 13:12 – STXISEL[1:0] SPI Transmit Service Request Interrupt Select

Note: Can only be written when Enable=’0’.

The SPI generates a Transmit Service Request when:

ValueDescription
11The SPIxTXB is not full
10The SPIxTXB is at least half empty
01The SPIxTXB is empty
00The SPIxTXB is empty and SPIxSR is empty (i.e. all transmit operations are complete)

Bit 11 – CPOL Clock Polarity Select bit

Note: Can only be written when Enable=’0’.
ValueDescription
0Idle state for clock is a low level; active state is a high level
1Idle state for clock is a high level; active state is a low level

Bit 10 – CPHA SPI Clock Edge Select bit

Note:
  • Can only be written when Enable=’0’
  • When AUDEN = 1, this peripheral functions as if CPHA = 1, regardless of its actual value
ValueDescription
0Transmit happens on transition from active clock state to idle clock state.
1Transmit happens on transition from idle clock state to active clock state.

Bit 6 – IGNROV Ignore Receive Overflow (for Audio Data Transmissions)

Note: Can only be written when Enable=’0’.
ValueDescription
0A ROV is a critical error which stop SPI operation.
1A ROV is NOT a critical error; during ROV data in the FIFO is not overwritten by receive data.

Bits 5:4 – SRXISEL[1:0] SPI Receive Service Request Interrupt Select

Note: Can only be written when Enable=’0’.

The SPI generates a Receive Service Request when:

ValueDescription
11The SPIxRXB is full
10The SPIxRXB is at least half full
01The SPIxRXB is not empty
00The SPIxRXB is empty

Bits 1:0 – CLKINDLY[1:0] Serial Clock Input Delay for SDI sampling

Note:
  • Can only be written when Enable=’0’
  • CLKINDLY[x] is used by the SPI FSM when MSTEN=1 (i.e. the SPI is a clock host). For all other case the value is ignored and the SPI FSM does NOT delay SCK for SDI sampling.
  • See TscInDly parameter for tap delay resolution
ValueDescription
113 tap delays added to clock input
102 tap delays added to clock input
011 tap delay added to clock input
000 tap delays added to clock input