Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Component : I2C Module - ALT_I2C

Description

I2C Module

Registers in the I2C module

Members

 Register : Control Register - ic_con
 
 Register : Target Address Register - ic_tar
 
 Register : Slave Address Register - ic_sar
 
 Register : Tx Rx Data and Command Register - ic_data_cmd
 
 Register : Std Spd Clock SCL HCNT Register - ic_ss_scl_hcnt
 
 Register : Std Spd Clock SCL LCNT Register - ic_ss_scl_lcnt
 
 Register : Fast Spd Clock SCL HCNT Register - ic_fs_scl_hcnt
 
 Register : Fast Spd Clock SCL LCNT Register - ic_fs_scl_lcnt
 
 Register : Interrupt Status Register - ic_intr_stat
 
 Register : Interrupt Mask Register - ic_intr_mask
 
 Register : Raw Interrupt Status Register - ic_raw_intr_stat
 
 Register : Receive FIFO Threshold Register - ic_rx_tl
 
 Register : Transmit FIFO Threshold Level Register - ic_tx_tl
 
 Register : Combined and Individual Interrupt Register - ic_clr_intr
 
 Register : Rx Under Interrupt Register - ic_clr_rx_under
 
 Register : RX Over Interrupt Register - ic_clr_rx_over
 
 Register : TX Over Interrupt Register - ic_clr_tx_over
 
 Register : Interrupt Read Request Register - ic_clr_rd_req
 
 Register : Tx Abort Interrupt Register - ic_clr_tx_abrt
 
 Register : Rx Done Interrupt Register - ic_clr_rx_done
 
 Register : Activity Interrupt Register - ic_clr_activity
 
 Register : Stop Detect Interrupt Register - ic_clr_stop_det
 
 Register : Start Detect Interrupt Register - ic_clr_start_det
 
 Register : GEN CALL Interrupt Register - ic_clr_gen_call
 
 Register : Enable Register - ic_enable
 
 Register : Status Register - ic_status
 
 Register : Transmit FIFO Level Register - ic_txflr
 
 Register : Receive FIFO Level Register - ic_rxflr
 
 Register : SDA Hold Register - ic_sda_hold
 
 Register : Transmit Abort Source Register - ic_tx_abrt_source
 
 Register : Generate Slave Data NACK - ic_slv_data_nack_only
 
 Register : DMA Control - ic_dma_cr
 
 Register : DMA Transmit Data Level - ic_dma_tdlr
 
 Register : Receive Data Level - ic_dma_rdlr
 
 Register : SDA Setup Register - ic_sda_setup
 
 Register : ACK General Call - ic_ack_general_call
 
 Register : Enable Status Register - ic_enable_status
 
 Register : SS and FS Spike Suppression Limit Register - ic_fs_spklen
 
 Register : Component Parameter Register 1 - ic_comp_param_1
 
 Register : Component Version Register - ic_comp_version
 
 Register : Component Type Register - ic_comp_type
 

Data Structures

struct  ALT_I2C_s
 
struct  ALT_I2C_raw_s
 

Typedefs

typedef struct ALT_I2C_s ALT_I2C_t
 
typedef struct ALT_I2C_raw_s ALT_I2C_raw_t
 

Data Structure Documentation

struct ALT_I2C_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 group ALT_I2C.

Data Fields
volatile ALT_I2C_CON_t ic_con ALT_I2C_CON
volatile ALT_I2C_TAR_t ic_tar ALT_I2C_TAR
volatile ALT_I2C_SAR_t ic_sar ALT_I2C_SAR
volatile uint32_t _pad_0xc_0xf UNDEFINED
volatile ALT_I2C_DATA_CMD_t ic_data_cmd ALT_I2C_DATA_CMD
volatile ALT_I2C_SS_SCL_HCNT_t ic_ss_scl_hcnt ALT_I2C_SS_SCL_HCNT
volatile ALT_I2C_SS_SCL_LCNT_t ic_ss_scl_lcnt ALT_I2C_SS_SCL_LCNT
volatile ALT_I2C_FS_SCL_HCNT_t ic_fs_scl_hcnt ALT_I2C_FS_SCL_HCNT
volatile ALT_I2C_FS_SCL_LCNT_t ic_fs_scl_lcnt ALT_I2C_FS_SCL_LCNT
volatile uint32_t _pad_0x24_0x2b UNDEFINED
volatile ALT_I2C_INTR_STAT_t ic_intr_stat ALT_I2C_INTR_STAT
volatile ALT_I2C_INTR_MSK_t ic_intr_mask ALT_I2C_INTR_MSK
volatile ALT_I2C_RAW_INTR_STAT_t ic_raw_intr_stat ALT_I2C_RAW_INTR_STAT
volatile ALT_I2C_RX_TL_t ic_rx_tl ALT_I2C_RX_TL
volatile ALT_I2C_TX_TL_t ic_tx_tl ALT_I2C_TX_TL
volatile ALT_I2C_CLR_INTR_t ic_clr_intr ALT_I2C_CLR_INTR
volatile ALT_I2C_CLR_RX_UNDER_t ic_clr_rx_under ALT_I2C_CLR_RX_UNDER
volatile ALT_I2C_CLR_RX_OVER_t ic_clr_rx_over ALT_I2C_CLR_RX_OVER
volatile ALT_I2C_CLR_TX_OVER_t ic_clr_tx_over ALT_I2C_CLR_TX_OVER
volatile ALT_I2C_CLR_RD_REQ_t ic_clr_rd_req ALT_I2C_CLR_RD_REQ
volatile ALT_I2C_CLR_TX_ABRT_t ic_clr_tx_abrt ALT_I2C_CLR_TX_ABRT
volatile ALT_I2C_CLR_RX_DONE_t ic_clr_rx_done ALT_I2C_CLR_RX_DONE
volatile ALT_I2C_CLR_ACTIVITY_t ic_clr_activity ALT_I2C_CLR_ACTIVITY
volatile ALT_I2C_CLR_STOP_DET_t ic_clr_stop_det ALT_I2C_CLR_STOP_DET
volatile ALT_I2C_CLR_START_DET_t ic_clr_start_det ALT_I2C_CLR_START_DET
volatile ALT_I2C_CLR_GEN_CALL_t ic_clr_gen_call ALT_I2C_CLR_GEN_CALL
volatile ALT_I2C_EN_t ic_enable ALT_I2C_EN
volatile ALT_I2C_STAT_t ic_status ALT_I2C_STAT
volatile ALT_I2C_TXFLR_t ic_txflr ALT_I2C_TXFLR
volatile ALT_I2C_RXFLR_t ic_rxflr ALT_I2C_RXFLR
volatile ALT_I2C_SDA_HOLD_t ic_sda_hold ALT_I2C_SDA_HOLD
volatile ALT_I2C_TX_ABRT_SRC_t ic_tx_abrt_source ALT_I2C_TX_ABRT_SRC
volatile
ALT_I2C_SLV_DATA_NACK_ONLY_t
ic_slv_data_nack_only ALT_I2C_SLV_DATA_NACK_ONLY
volatile ALT_I2C_DMA_CR_t ic_dma_cr ALT_I2C_DMA_CR
volatile ALT_I2C_DMA_TDLR_t ic_dma_tdlr ALT_I2C_DMA_TDLR
volatile ALT_I2C_DMA_RDLR_t ic_dma_rdlr ALT_I2C_DMA_RDLR
volatile ALT_I2C_SDA_SETUP_t ic_sda_setup ALT_I2C_SDA_SETUP
volatile ALT_I2C_ACK_GENERAL_CALL_t ic_ack_general_call ALT_I2C_ACK_GENERAL_CALL
volatile ALT_I2C_EN_STAT_t ic_enable_status ALT_I2C_EN_STAT
volatile ALT_I2C_FS_SPKLEN_t ic_fs_spklen ALT_I2C_FS_SPKLEN
volatile uint32_t _pad_0xa4_0xf3 UNDEFINED
volatile ALT_I2C_COMP_PARAM_1_t ic_comp_param_1 ALT_I2C_COMP_PARAM_1
volatile ALT_I2C_COMP_VER_t ic_comp_version ALT_I2C_COMP_VER
volatile ALT_I2C_COMP_TYPE_t ic_comp_type ALT_I2C_COMP_TYPE
struct ALT_I2C_raw_s

The struct declaration for the raw register contents of register group ALT_I2C.

Data Fields
volatile uint32_t ic_con ALT_I2C_CON
volatile uint32_t ic_tar ALT_I2C_TAR
volatile uint32_t ic_sar ALT_I2C_SAR
volatile uint32_t _pad_0xc_0xf UNDEFINED
volatile uint32_t ic_data_cmd ALT_I2C_DATA_CMD
volatile uint32_t ic_ss_scl_hcnt ALT_I2C_SS_SCL_HCNT
volatile uint32_t ic_ss_scl_lcnt ALT_I2C_SS_SCL_LCNT
volatile uint32_t ic_fs_scl_hcnt ALT_I2C_FS_SCL_HCNT
volatile uint32_t ic_fs_scl_lcnt ALT_I2C_FS_SCL_LCNT
volatile uint32_t _pad_0x24_0x2b UNDEFINED
volatile uint32_t ic_intr_stat ALT_I2C_INTR_STAT
volatile uint32_t ic_intr_mask ALT_I2C_INTR_MSK
volatile uint32_t ic_raw_intr_stat ALT_I2C_RAW_INTR_STAT
volatile uint32_t ic_rx_tl ALT_I2C_RX_TL
volatile uint32_t ic_tx_tl ALT_I2C_TX_TL
volatile uint32_t ic_clr_intr ALT_I2C_CLR_INTR
volatile uint32_t ic_clr_rx_under ALT_I2C_CLR_RX_UNDER
volatile uint32_t ic_clr_rx_over ALT_I2C_CLR_RX_OVER
volatile uint32_t ic_clr_tx_over ALT_I2C_CLR_TX_OVER
volatile uint32_t ic_clr_rd_req ALT_I2C_CLR_RD_REQ
volatile uint32_t ic_clr_tx_abrt ALT_I2C_CLR_TX_ABRT
volatile uint32_t ic_clr_rx_done ALT_I2C_CLR_RX_DONE
volatile uint32_t ic_clr_activity ALT_I2C_CLR_ACTIVITY
volatile uint32_t ic_clr_stop_det ALT_I2C_CLR_STOP_DET
volatile uint32_t ic_clr_start_det ALT_I2C_CLR_START_DET
volatile uint32_t ic_clr_gen_call ALT_I2C_CLR_GEN_CALL
volatile uint32_t ic_enable ALT_I2C_EN
volatile uint32_t ic_status ALT_I2C_STAT
volatile uint32_t ic_txflr ALT_I2C_TXFLR
volatile uint32_t ic_rxflr ALT_I2C_RXFLR
volatile uint32_t ic_sda_hold ALT_I2C_SDA_HOLD
volatile uint32_t ic_tx_abrt_source ALT_I2C_TX_ABRT_SRC
volatile uint32_t ic_slv_data_nack_only ALT_I2C_SLV_DATA_NACK_ONLY
volatile uint32_t ic_dma_cr ALT_I2C_DMA_CR
volatile uint32_t ic_dma_tdlr ALT_I2C_DMA_TDLR
volatile uint32_t ic_dma_rdlr ALT_I2C_DMA_RDLR
volatile uint32_t ic_sda_setup ALT_I2C_SDA_SETUP
volatile uint32_t ic_ack_general_call ALT_I2C_ACK_GENERAL_CALL
volatile uint32_t ic_enable_status ALT_I2C_EN_STAT
volatile uint32_t ic_fs_spklen ALT_I2C_FS_SPKLEN
volatile uint32_t _pad_0xa4_0xf3 UNDEFINED
volatile uint32_t ic_comp_param_1 ALT_I2C_COMP_PARAM_1
volatile uint32_t ic_comp_version ALT_I2C_COMP_VER
volatile uint32_t ic_comp_type ALT_I2C_COMP_TYPE

Typedef Documentation

typedef struct ALT_I2C_s ALT_I2C_t

The typedef declaration for register group ALT_I2C.

typedef struct ALT_I2C_raw_s ALT_I2C_raw_t

The typedef declaration for the raw register contents of register group ALT_I2C.