Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : imr

Description

Interrupt Mask Register

Register Layout

Bits Access Reset Description
[0] RW 0x1 ALT_SPIM_IMR_TXEIM
[1] RW 0x1 ALT_SPIM_IMR_TXOIM
[2] RW 0x1 ALT_SPIM_IMR_RXUIM
[3] RW 0x1 ALT_SPIM_IMR_RXOIM
[4] RW 0x1 ALT_SPIM_IMR_RXFIM
[5] RW 0x1 ALT_SPIM_IMR_MSTIM
[31:6] ??? 0x0 UNDEFINED

Field : txeim

Transmit FIFO Empty Interrupt Mask

0 - ssi_txe_intr interrupt is masked

1 - ssi_txe_intr interrupt is not masked

Field Enumeration Values:

Enum Value Description
ALT_SPIM_IMR_TXEIM_E_MSKED 0x0 spi_txe_intr interrupt is masked (disabled)
ALT_SPIM_IMR_TXEIM_E_END 0x1 spi_txe_intr interrupt is enabled

Field Access Macros:

#define ALT_SPIM_IMR_TXEIM_E_MSKED   0x0
 
#define ALT_SPIM_IMR_TXEIM_E_END   0x1
 
#define ALT_SPIM_IMR_TXEIM_LSB   0
 
#define ALT_SPIM_IMR_TXEIM_MSB   0
 
#define ALT_SPIM_IMR_TXEIM_WIDTH   1
 
#define ALT_SPIM_IMR_TXEIM_SET_MSK   0x00000001
 
#define ALT_SPIM_IMR_TXEIM_CLR_MSK   0xfffffffe
 
#define ALT_SPIM_IMR_TXEIM_RESET   0x1
 
#define ALT_SPIM_IMR_TXEIM_GET(value)   (((value) & 0x00000001) >> 0)
 
#define ALT_SPIM_IMR_TXEIM_SET(value)   (((value) << 0) & 0x00000001)
 

Field : txoim

Transmit FIFO Overflow Interrupt Mask

0 - ssi_txo_intr interrupt is masked

1 - ssi_txo_intr interrupt is not masked

Field Enumeration Values:

Enum Value Description
ALT_SPIM_IMR_TXOIM_E_MSKED 0x0 spi_txo_intr interrupt is masked (disabled)
ALT_SPIM_IMR_TXOIM_E_END 0x1 spi_txo_intr interrupt is enabled

Field Access Macros:

#define ALT_SPIM_IMR_TXOIM_E_MSKED   0x0
 
#define ALT_SPIM_IMR_TXOIM_E_END   0x1
 
#define ALT_SPIM_IMR_TXOIM_LSB   1
 
#define ALT_SPIM_IMR_TXOIM_MSB   1
 
#define ALT_SPIM_IMR_TXOIM_WIDTH   1
 
#define ALT_SPIM_IMR_TXOIM_SET_MSK   0x00000002
 
#define ALT_SPIM_IMR_TXOIM_CLR_MSK   0xfffffffd
 
#define ALT_SPIM_IMR_TXOIM_RESET   0x1
 
#define ALT_SPIM_IMR_TXOIM_GET(value)   (((value) & 0x00000002) >> 1)
 
#define ALT_SPIM_IMR_TXOIM_SET(value)   (((value) << 1) & 0x00000002)
 

Field : rxuim

Receive FIFO Underflow Interrupt Mask

0 - ssi_rxu_intr interrupt is masked

1 - ssi_rxu_intr interrupt is not masked

Field Enumeration Values:

Enum Value Description
ALT_SPIM_IMR_RXUIM_E_MSKED 0x0 spi_rxu_intr interrupt is masked (disabled)
ALT_SPIM_IMR_RXUIM_E_END 0x1 spi_rxu_intr interrupt is enabled

Field Access Macros:

#define ALT_SPIM_IMR_RXUIM_E_MSKED   0x0
 
#define ALT_SPIM_IMR_RXUIM_E_END   0x1
 
#define ALT_SPIM_IMR_RXUIM_LSB   2
 
#define ALT_SPIM_IMR_RXUIM_MSB   2
 
#define ALT_SPIM_IMR_RXUIM_WIDTH   1
 
#define ALT_SPIM_IMR_RXUIM_SET_MSK   0x00000004
 
#define ALT_SPIM_IMR_RXUIM_CLR_MSK   0xfffffffb
 
#define ALT_SPIM_IMR_RXUIM_RESET   0x1
 
#define ALT_SPIM_IMR_RXUIM_GET(value)   (((value) & 0x00000004) >> 2)
 
#define ALT_SPIM_IMR_RXUIM_SET(value)   (((value) << 2) & 0x00000004)
 

Field : rxoim

Receive FIFO Overflow Interrupt Mask

0 - ssi_rxo_intr interrupt is masked

1 - ssi_rxo_intr interrupt is not masked

Field Enumeration Values:

Enum Value Description
ALT_SPIM_IMR_RXOIM_E_MSKED 0x0 spi_rxo_intr interrupt is masked (disabled)
ALT_SPIM_IMR_RXOIM_E_END 0x1 spi_rxo_intr interrupt is enabled

Field Access Macros:

#define ALT_SPIM_IMR_RXOIM_E_MSKED   0x0
 
#define ALT_SPIM_IMR_RXOIM_E_END   0x1
 
#define ALT_SPIM_IMR_RXOIM_LSB   3
 
#define ALT_SPIM_IMR_RXOIM_MSB   3
 
#define ALT_SPIM_IMR_RXOIM_WIDTH   1
 
#define ALT_SPIM_IMR_RXOIM_SET_MSK   0x00000008
 
#define ALT_SPIM_IMR_RXOIM_CLR_MSK   0xfffffff7
 
#define ALT_SPIM_IMR_RXOIM_RESET   0x1
 
#define ALT_SPIM_IMR_RXOIM_GET(value)   (((value) & 0x00000008) >> 3)
 
#define ALT_SPIM_IMR_RXOIM_SET(value)   (((value) << 3) & 0x00000008)
 

Field : rxfim

Receive FIFO Full Interrupt Mask

0 - ssi_rxf_intr interrupt is masked

1 - ssi_rxf_intr interrupt is not masked

Field Enumeration Values:

Enum Value Description
ALT_SPIM_IMR_RXFIM_E_MSKED 0x0 spi_rxf_intr interrupt is masked (disabled)
ALT_SPIM_IMR_RXFIM_E_END 0x1 spi_rxf_intr interrupt is enabled

Field Access Macros:

#define ALT_SPIM_IMR_RXFIM_E_MSKED   0x0
 
#define ALT_SPIM_IMR_RXFIM_E_END   0x1
 
#define ALT_SPIM_IMR_RXFIM_LSB   4
 
#define ALT_SPIM_IMR_RXFIM_MSB   4
 
#define ALT_SPIM_IMR_RXFIM_WIDTH   1
 
#define ALT_SPIM_IMR_RXFIM_SET_MSK   0x00000010
 
#define ALT_SPIM_IMR_RXFIM_CLR_MSK   0xffffffef
 
#define ALT_SPIM_IMR_RXFIM_RESET   0x1
 
#define ALT_SPIM_IMR_RXFIM_GET(value)   (((value) & 0x00000010) >> 4)
 
#define ALT_SPIM_IMR_RXFIM_SET(value)   (((value) << 4) & 0x00000010)
 

Field : mstim

Multi-Master Contention Interrupt Mask. This bit field is not present if

the DW_apb_ssi is configured as a serial-slave device.

0 - ssi_mst_intr interrupt is masked

1 - ssi_mst_intr interrupt is not masked

Field Access Macros:

#define ALT_SPIM_IMR_MSTIM_LSB   5
 
#define ALT_SPIM_IMR_MSTIM_MSB   5
 
#define ALT_SPIM_IMR_MSTIM_WIDTH   1
 
#define ALT_SPIM_IMR_MSTIM_SET_MSK   0x00000020
 
#define ALT_SPIM_IMR_MSTIM_CLR_MSK   0xffffffdf
 
#define ALT_SPIM_IMR_MSTIM_RESET   0x1
 
#define ALT_SPIM_IMR_MSTIM_GET(value)   (((value) & 0x00000020) >> 5)
 
#define ALT_SPIM_IMR_MSTIM_SET(value)   (((value) << 5) & 0x00000020)
 

Data Structures

struct  ALT_SPIM_IMR_s
 

Macros

#define ALT_SPIM_IMR_RESET   0x0000003f
 
#define ALT_SPIM_IMR_OFST   0x2c
 
#define ALT_SPIM_IMR_ADDR(base)   ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_SPIM_IMR_OFST))
 

Typedefs

typedef struct ALT_SPIM_IMR_s ALT_SPIM_IMR_t
 

Data Structure Documentation

struct ALT_SPIM_IMR_s

WARNING: The C register and register group struct declarations are provided for convenience and illustrative purposes. They should, however, be used with caution as the C language standard provides no guarantees about the alignment or atomicity of device memory accesses. The recommended practice for writing hardware drivers is to use the SoCAL access macros and alt_read_word() and alt_write_word() functions.

The struct declaration for register ALT_SPIM_IMR.

Data Fields
uint32_t txeim: 1 ALT_SPIM_IMR_TXEIM
uint32_t txoim: 1 ALT_SPIM_IMR_TXOIM
uint32_t rxuim: 1 ALT_SPIM_IMR_RXUIM
uint32_t rxoim: 1 ALT_SPIM_IMR_RXOIM
uint32_t rxfim: 1 ALT_SPIM_IMR_RXFIM
uint32_t mstim: 1 ALT_SPIM_IMR_MSTIM
uint32_t __pad0__: 26 UNDEFINED

Macro Definitions

#define ALT_SPIM_IMR_TXEIM_E_MSKED   0x0

Enumerated value for register field ALT_SPIM_IMR_TXEIM

spi_txe_intr interrupt is masked (disabled)

#define ALT_SPIM_IMR_TXEIM_E_END   0x1

Enumerated value for register field ALT_SPIM_IMR_TXEIM

spi_txe_intr interrupt is enabled

#define ALT_SPIM_IMR_TXEIM_LSB   0

The Least Significant Bit (LSB) position of the ALT_SPIM_IMR_TXEIM register field.

#define ALT_SPIM_IMR_TXEIM_MSB   0

The Most Significant Bit (MSB) position of the ALT_SPIM_IMR_TXEIM register field.

#define ALT_SPIM_IMR_TXEIM_WIDTH   1

The width in bits of the ALT_SPIM_IMR_TXEIM register field.

#define ALT_SPIM_IMR_TXEIM_SET_MSK   0x00000001

The mask used to set the ALT_SPIM_IMR_TXEIM register field value.

#define ALT_SPIM_IMR_TXEIM_CLR_MSK   0xfffffffe

The mask used to clear the ALT_SPIM_IMR_TXEIM register field value.

#define ALT_SPIM_IMR_TXEIM_RESET   0x1

The reset value of the ALT_SPIM_IMR_TXEIM register field.

#define ALT_SPIM_IMR_TXEIM_GET (   value)    (((value) & 0x00000001) >> 0)

Extracts the ALT_SPIM_IMR_TXEIM field value from a register.

#define ALT_SPIM_IMR_TXEIM_SET (   value)    (((value) << 0) & 0x00000001)

Produces a ALT_SPIM_IMR_TXEIM register field value suitable for setting the register.

#define ALT_SPIM_IMR_TXOIM_E_MSKED   0x0

Enumerated value for register field ALT_SPIM_IMR_TXOIM

spi_txo_intr interrupt is masked (disabled)

#define ALT_SPIM_IMR_TXOIM_E_END   0x1

Enumerated value for register field ALT_SPIM_IMR_TXOIM

spi_txo_intr interrupt is enabled

#define ALT_SPIM_IMR_TXOIM_LSB   1

The Least Significant Bit (LSB) position of the ALT_SPIM_IMR_TXOIM register field.

#define ALT_SPIM_IMR_TXOIM_MSB   1

The Most Significant Bit (MSB) position of the ALT_SPIM_IMR_TXOIM register field.

#define ALT_SPIM_IMR_TXOIM_WIDTH   1

The width in bits of the ALT_SPIM_IMR_TXOIM register field.

#define ALT_SPIM_IMR_TXOIM_SET_MSK   0x00000002

The mask used to set the ALT_SPIM_IMR_TXOIM register field value.

#define ALT_SPIM_IMR_TXOIM_CLR_MSK   0xfffffffd

The mask used to clear the ALT_SPIM_IMR_TXOIM register field value.

#define ALT_SPIM_IMR_TXOIM_RESET   0x1

The reset value of the ALT_SPIM_IMR_TXOIM register field.

#define ALT_SPIM_IMR_TXOIM_GET (   value)    (((value) & 0x00000002) >> 1)

Extracts the ALT_SPIM_IMR_TXOIM field value from a register.

#define ALT_SPIM_IMR_TXOIM_SET (   value)    (((value) << 1) & 0x00000002)

Produces a ALT_SPIM_IMR_TXOIM register field value suitable for setting the register.

#define ALT_SPIM_IMR_RXUIM_E_MSKED   0x0

Enumerated value for register field ALT_SPIM_IMR_RXUIM

spi_rxu_intr interrupt is masked (disabled)

#define ALT_SPIM_IMR_RXUIM_E_END   0x1

Enumerated value for register field ALT_SPIM_IMR_RXUIM

spi_rxu_intr interrupt is enabled

#define ALT_SPIM_IMR_RXUIM_LSB   2

The Least Significant Bit (LSB) position of the ALT_SPIM_IMR_RXUIM register field.

#define ALT_SPIM_IMR_RXUIM_MSB   2

The Most Significant Bit (MSB) position of the ALT_SPIM_IMR_RXUIM register field.

#define ALT_SPIM_IMR_RXUIM_WIDTH   1

The width in bits of the ALT_SPIM_IMR_RXUIM register field.

#define ALT_SPIM_IMR_RXUIM_SET_MSK   0x00000004

The mask used to set the ALT_SPIM_IMR_RXUIM register field value.

#define ALT_SPIM_IMR_RXUIM_CLR_MSK   0xfffffffb

The mask used to clear the ALT_SPIM_IMR_RXUIM register field value.

#define ALT_SPIM_IMR_RXUIM_RESET   0x1

The reset value of the ALT_SPIM_IMR_RXUIM register field.

#define ALT_SPIM_IMR_RXUIM_GET (   value)    (((value) & 0x00000004) >> 2)

Extracts the ALT_SPIM_IMR_RXUIM field value from a register.

#define ALT_SPIM_IMR_RXUIM_SET (   value)    (((value) << 2) & 0x00000004)

Produces a ALT_SPIM_IMR_RXUIM register field value suitable for setting the register.

#define ALT_SPIM_IMR_RXOIM_E_MSKED   0x0

Enumerated value for register field ALT_SPIM_IMR_RXOIM

spi_rxo_intr interrupt is masked (disabled)

#define ALT_SPIM_IMR_RXOIM_E_END   0x1

Enumerated value for register field ALT_SPIM_IMR_RXOIM

spi_rxo_intr interrupt is enabled

#define ALT_SPIM_IMR_RXOIM_LSB   3

The Least Significant Bit (LSB) position of the ALT_SPIM_IMR_RXOIM register field.

#define ALT_SPIM_IMR_RXOIM_MSB   3

The Most Significant Bit (MSB) position of the ALT_SPIM_IMR_RXOIM register field.

#define ALT_SPIM_IMR_RXOIM_WIDTH   1

The width in bits of the ALT_SPIM_IMR_RXOIM register field.

#define ALT_SPIM_IMR_RXOIM_SET_MSK   0x00000008

The mask used to set the ALT_SPIM_IMR_RXOIM register field value.

#define ALT_SPIM_IMR_RXOIM_CLR_MSK   0xfffffff7

The mask used to clear the ALT_SPIM_IMR_RXOIM register field value.

#define ALT_SPIM_IMR_RXOIM_RESET   0x1

The reset value of the ALT_SPIM_IMR_RXOIM register field.

#define ALT_SPIM_IMR_RXOIM_GET (   value)    (((value) & 0x00000008) >> 3)

Extracts the ALT_SPIM_IMR_RXOIM field value from a register.

#define ALT_SPIM_IMR_RXOIM_SET (   value)    (((value) << 3) & 0x00000008)

Produces a ALT_SPIM_IMR_RXOIM register field value suitable for setting the register.

#define ALT_SPIM_IMR_RXFIM_E_MSKED   0x0

Enumerated value for register field ALT_SPIM_IMR_RXFIM

spi_rxf_intr interrupt is masked (disabled)

#define ALT_SPIM_IMR_RXFIM_E_END   0x1

Enumerated value for register field ALT_SPIM_IMR_RXFIM

spi_rxf_intr interrupt is enabled

#define ALT_SPIM_IMR_RXFIM_LSB   4

The Least Significant Bit (LSB) position of the ALT_SPIM_IMR_RXFIM register field.

#define ALT_SPIM_IMR_RXFIM_MSB   4

The Most Significant Bit (MSB) position of the ALT_SPIM_IMR_RXFIM register field.

#define ALT_SPIM_IMR_RXFIM_WIDTH   1

The width in bits of the ALT_SPIM_IMR_RXFIM register field.

#define ALT_SPIM_IMR_RXFIM_SET_MSK   0x00000010

The mask used to set the ALT_SPIM_IMR_RXFIM register field value.

#define ALT_SPIM_IMR_RXFIM_CLR_MSK   0xffffffef

The mask used to clear the ALT_SPIM_IMR_RXFIM register field value.

#define ALT_SPIM_IMR_RXFIM_RESET   0x1

The reset value of the ALT_SPIM_IMR_RXFIM register field.

#define ALT_SPIM_IMR_RXFIM_GET (   value)    (((value) & 0x00000010) >> 4)

Extracts the ALT_SPIM_IMR_RXFIM field value from a register.

#define ALT_SPIM_IMR_RXFIM_SET (   value)    (((value) << 4) & 0x00000010)

Produces a ALT_SPIM_IMR_RXFIM register field value suitable for setting the register.

#define ALT_SPIM_IMR_MSTIM_LSB   5

The Least Significant Bit (LSB) position of the ALT_SPIM_IMR_MSTIM register field.

#define ALT_SPIM_IMR_MSTIM_MSB   5

The Most Significant Bit (MSB) position of the ALT_SPIM_IMR_MSTIM register field.

#define ALT_SPIM_IMR_MSTIM_WIDTH   1

The width in bits of the ALT_SPIM_IMR_MSTIM register field.

#define ALT_SPIM_IMR_MSTIM_SET_MSK   0x00000020

The mask used to set the ALT_SPIM_IMR_MSTIM register field value.

#define ALT_SPIM_IMR_MSTIM_CLR_MSK   0xffffffdf

The mask used to clear the ALT_SPIM_IMR_MSTIM register field value.

#define ALT_SPIM_IMR_MSTIM_RESET   0x1

The reset value of the ALT_SPIM_IMR_MSTIM register field.

#define ALT_SPIM_IMR_MSTIM_GET (   value)    (((value) & 0x00000020) >> 5)

Extracts the ALT_SPIM_IMR_MSTIM field value from a register.

#define ALT_SPIM_IMR_MSTIM_SET (   value)    (((value) << 5) & 0x00000020)

Produces a ALT_SPIM_IMR_MSTIM register field value suitable for setting the register.

#define ALT_SPIM_IMR_RESET   0x0000003f

The reset value of the ALT_SPIM_IMR register.

#define ALT_SPIM_IMR_OFST   0x2c

The byte offset of the ALT_SPIM_IMR register from the beginning of the component.

#define ALT_SPIM_IMR_ADDR (   base)    ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_SPIM_IMR_OFST))

The address of the ALT_SPIM_IMR register.

Typedef Documentation

The typedef declaration for register ALT_SPIM_IMR.