|
#define | I2C_CTRL(base) MMIO32((base) + 0x000) |
|
#define | I2C_CMD(base) MMIO32((base) + 0x004) |
|
#define | I2C_STATE(base) MMIO32((base) + 0x008) |
|
#define | I2C_STATUS(base) MMIO32((base) + 0x00C) |
|
#define | I2C_CLKDIV(base) MMIO32((base) + 0x010) |
|
#define | I2C_SADDR(base) MMIO32((base) + 0x014) |
|
#define | I2C_SADDRMASK(base) MMIO32((base) + 0x018) |
|
#define | I2C_RXDATA(base) MMIO32((base) + 0x01C) |
|
#define | I2C_RXDATAP(base) MMIO32((base) + 0x020) |
|
#define | I2C_TXDATA(base) MMIO32((base) + 0x024) |
|
#define | I2C_IF(base) MMIO32((base) + 0x028) |
|
#define | I2C_IFS(base) MMIO32((base) + 0x02C) |
|
#define | I2C_IFC(base) MMIO32((base) + 0x030) |
|
#define | I2C_IEN(base) MMIO32((base) + 0x034) |
|
#define | I2C_ROUTE(base) MMIO32((base) + 0x038) |
|
#define | I2C_CTRL_CLTO_SHIFT (16) |
|
#define | I2C_CTRL_CLTO_MASK (0x7 << I2C_CTRL_CLTO_SHIFT) |
|
#define | I2C_CTRL_CLTO(v) (((v) << I2C_CTRL_CLTO_SHIFT) & I2C_CTRL_CLTO_MASK) |
|
#define | I2C_CTRL_CLTO_OFF 0 |
|
#define | I2C_CTRL_CLTO_40PCC 1 |
|
#define | I2C_CTRL_CLTO_80PCC 2 |
|
#define | I2C_CTRL_CLTO_160PCC 3 |
|
#define | I2C_CTRL_CLTO_320PPC 4 |
|
#define | I2C_CTRL_CLTO_1024PPC 5 |
|
#define | I2C_CTRL_GIBITO (1 << 15) |
|
#define | I2C_CTRL_BTO_SHIFT (12) |
|
#define | I2C_CTRL_BTO_MASK (0x3 << I2C_CTRL_BTO_SHIFT) |
|
#define | I2C_CTRL_BTO(v) (((v) << I2C_CTRL_BTO_SHIFT) & I2C_CTRL_BTO_MASK) |
|
#define | I2C_CTRL_BTO_OFF 0 |
|
#define | I2C_CTRL_BTO_40PCC 1 |
|
#define | I2C_CTRL_BTO_80PCC 2 |
|
#define | I2C_CTRL_BTO_160PCC 3 |
|
#define | I2C_CTRL_CLHR_SHIFT (12) |
|
#define | I2C_CTRL_CLHR_MASK (0x3 << I2C_CTRL_CLHR_SHIFT) |
|
#define | I2C_CTRL_CLHR(v) (((v) << I2C_CTRL_CLHR_SHIFT) & I2C_CTRL_CLHR_MASK) |
|
#define | I2C_CTRL_CLHR_STANDARD 0 |
|
#define | I2C_CTRL_CLHR_ASYMMETRIC 1 |
|
#define | I2C_CTRL_CLHR_FAST 2 |
|
#define | I2C_CTRL_GCAMEN (1 << 6) |
|
#define | I2C_CTRL_ARBDIS (1 << 5) |
|
#define | I2C_CTRL_AUTOSN (1 << 4) |
|
#define | I2C_CTRL_AUTOSE (1 << 3) |
|
#define | I2C_CTRL_AUTOACK (1 << 2) |
|
#define | I2C_CTRL_SLAVE (1 << 1) |
|
#define | I2C_CTRL_EN (1 << 0) |
|
#define | I2C_CMD_CLEARPC (1 << 7) |
|
#define | I2C_CMD_CLEARTX (1 << 6) |
|
#define | I2C_CMD_ABORT (1 << 5) |
|
#define | I2C_CMD_CONT (1 << 4) |
|
#define | I2C_CMD_NACK (1 << 3) |
|
#define | I2C_CMD_ACK (1 << 2) |
|
#define | I2C_CMD_STOP (1 << 1) |
|
#define | I2C_CMD_START (1 << 0) |
|
#define | I2C_STATE_STATE_SHIFT (5) |
|
#define | I2C_STATE_STATE_MASK (0x7 << I2C_STATE_STATE_SHIFT) |
|
#define | I2C_STATE_STATE(v) (((v) << I2C_STATE_STATE_SHIFT) & I2C_STATE_STATE_MASK) |
|
#define | I2C_STATE_STATE_IDLE 0 |
|
#define | I2C_STATE_STATE_WAIT 1 |
|
#define | I2C_STATE_STATE_START 2 |
|
#define | I2C_STATE_STATE_ADDR 3 |
|
#define | I2C_STATE_STATE_ADDRACK 4 |
|
#define | I2C_STATE_STATE_DATA 5 |
|
#define | I2C_STATE_STATE_DATAACK 6 |
|
#define | I2C_STATE_BUSHOLD (1 << 4) |
|
#define | I2C_STATE_NACKED (1 << 3) |
|
#define | I2C_STATE_TRANSMITTER (1 << 2) |
|
#define | I2C_STATE_MASTER (1 << 1) |
|
#define | I2C_STATE_BUSY (1 << 0) |
|
#define | I2C_STATUS_RXDATAV (1 << 8) |
|
#define | I2C_STATUS_TXBL (1 << 7) |
|
#define | I2C_STATUS_TXC (1 << 6) |
|
#define | I2C_STATUS_PABORT (1 << 5) |
|
#define | I2C_STATUS_PCONT (1 << 4) |
|
#define | I2C_STATUS_PNACK (1 << 3) |
|
#define | I2C_STATUS_PACK (1 << 2) |
|
#define | I2C_STATUS_PSTOP (1 << 1) |
|
#define | I2C_STATUS_PSTART (1 << 0) |
|
#define | I2C_CLKDIV_DIV_SHIFT (0) |
|
#define | I2C_CLKDIV_DIV_MASK (0xFF << I2C_CLKDIV_DIV_SHIFT) |
|
#define | I2C_CLKDIV_DIV(v) (((v) << I2C_CLKDIV_DIV_SHIFT) & I2C_CLKDIV_DIV_MASK) |
|
#define | I2C_SADDR_ADDR_SHIFT (0) |
|
#define | I2C_SADDR_ADDR_MASK (0xFF << I2C_SADDR_ADDR_SHIFT) |
|
#define | I2C_SADDR_ADDR(v) (((v) << I2C_SADDR_ADDR_SHIFT) & I2C_SADDR_ADDR_MASK) |
|
#define | I2C_SADDRMASK_MASK_SHIFT (0) |
|
#define | I2C_SADDRMASK_MASK_MASK (0xFF << I2C_SADDRMASK_MASK_SHIFT) |
|
#define | I2C_SADDRMASK_MASK(v) (((v) << I2C_SADDRMASK_MASK_SHIFT) & I2C_SADDRMASK_MASK_MASK) |
|
#define | I2C_IF_SSTOP (1 << 16) |
|
#define | I2C_IF_CLTO (1 << 15) |
|
#define | I2C_IF_BITO (1 << 14) |
|
#define | I2C_IF_RXUF (1 << 13) |
|
#define | I2C_IF_TXOF (1 << 12) |
|
#define | I2C_IF_BUSHOLD (1 << 11) |
|
#define | I2C_IF_BUSERR (1 << 10) |
|
#define | I2C_IF_ARBLOST (1 << 9) |
|
#define | I2C_IF_MSTOP (1 << 8) |
|
#define | I2C_IF_NACK (1 << 7) |
|
#define | I2C_IF_ACK (1 << 6) |
|
#define | I2C_IF_RXDATAV (1 << 5) |
|
#define | I2C_IF_TXBL (1 << 4) |
|
#define | I2C_IF_TXC (1 << 3) |
|
#define | I2C_IF_ADDR (1 << 2) |
|
#define | I2C_IF_RSTART (1 << 1) |
|
#define | I2C_IF_START (1 << 0) |
|
#define | I2C_IFS_SSTOP (1 << 16) |
|
#define | I2C_IFS_CLTO (1 << 15) |
|
#define | I2C_IFS_BITO (1 << 14) |
|
#define | I2C_IFS_RXUF (1 << 13) |
|
#define | I2C_IFS_TXOF (1 << 12) |
|
#define | I2C_IFS_BUSHOLD (1 << 11) |
|
#define | I2C_IFS_BUSERR (1 << 10) |
|
#define | I2C_IFS_ARBLOST (1 << 9) |
|
#define | I2C_IFS_MSTOP (1 << 8) |
|
#define | I2C_IFS_NACK (1 << 7) |
|
#define | I2C_IFS_ACK (1 << 6) |
|
#define | I2C_IFS_RXDATAV (1 << 5) |
|
#define | I2C_IFS_TXBL (1 << 4) |
|
#define | I2C_IFS_TXC (1 << 3) |
|
#define | I2C_IFS_ADDR (1 << 2) |
|
#define | I2C_IFS_RSTART (1 << 1) |
|
#define | I2C_IFS_START (1 << 0) |
|
#define | I2C_IFC_SSTOP (1 << 16) |
|
#define | I2C_IFC_CLTO (1 << 15) |
|
#define | I2C_IFC_BITO (1 << 14) |
|
#define | I2C_IFC_RXUF (1 << 13) |
|
#define | I2C_IFC_TXOF (1 << 12) |
|
#define | I2C_IFC_BUSHOLD (1 << 11) |
|
#define | I2C_IFC_BUSERR (1 << 10) |
|
#define | I2C_IFC_ARBLOST (1 << 9) |
|
#define | I2C_IFC_MSTOP (1 << 8) |
|
#define | I2C_IFC_NACK (1 << 7) |
|
#define | I2C_IFC_ACK (1 << 6) |
|
#define | I2C_IFC_RXDATAV (1 << 5) |
|
#define | I2C_IFC_TXBL (1 << 4) |
|
#define | I2C_IFC_TXC (1 << 3) |
|
#define | I2C_IFC_ADDR (1 << 2) |
|
#define | I2C_IFC_RSTART (1 << 1) |
|
#define | I2C_IFC_START (1 << 0) |
|
#define | I2C_IEN_SSTOP (1 << 16) |
|
#define | I2C_IEN_CLTO (1 << 15) |
|
#define | I2C_IEN_BITO (1 << 14) |
|
#define | I2C_IEN_RXUF (1 << 13) |
|
#define | I2C_IEN_TXOF (1 << 12) |
|
#define | I2C_IEN_BUSHOLD (1 << 11) |
|
#define | I2C_IEN_BUSERR (1 << 10) |
|
#define | I2C_IEN_ARBLOST (1 << 9) |
|
#define | I2C_IEN_MSTOP (1 << 8) |
|
#define | I2C_IEN_NACK (1 << 7) |
|
#define | I2C_IEN_ACK (1 << 6) |
|
#define | I2C_IEN_RXDATAV (1 << 5) |
|
#define | I2C_IEN_TXBL (1 << 4) |
|
#define | I2C_IEN_TXC (1 << 3) |
|
#define | I2C_IEN_ADDR (1 << 2) |
|
#define | I2C_IEN_RSTART (1 << 1) |
|
#define | I2C_IEN_START (1 << 0) |
|
#define | I2C_ROUTE_LOCATION_SHIFT (8) |
|
#define | I2C_ROUTE_LOCATION_MASK (0x7 << I2C_ROUTE_LOCATION_SHIFT) |
|
#define | I2C_ROUTE_LOCATION(v) (((v) << I2C_ROUTE_LOCATION_SHIFT) & I2C_ROUTE_LOCATION_MASK) |
|
#define | I2C_ROUTE_LOCATION_LOCx(x) I2C_ROUTE_LOCATION(x) |
|
#define | I2C_ROUTE_LOCATION_LOC0 0 |
|
#define | I2C_ROUTE_LOCATION_LOC1 1 |
|
#define | I2C_ROUTE_LOCATION_LOC2 2 |
|
#define | I2C_ROUTE_LOCATION_LOC3 3 |
|
#define | I2C_ROUTE_LOCATION_LOC4 4 |
|
#define | I2C_ROUTE_LOCATION_LOC5 5 |
|
#define | I2C_ROUTE_LOCATION_LOC6 6 |
|
#define | I2C_ROUTE_SCLPEN (1 << 1) |
|
#define | I2C_ROUTE_SDAPEN (1 << 0) |
|
#define | I2C0 I2C0_BASE |
|
#define | I2C0_CTRL I2C_CTRL(I2C0) |
|
#define | I2C0_CMD I2C_CMD(I2C0) |
|
#define | I2C0_STATE I2C_STATE(I2C0) |
|
#define | I2C0_STATUS I2C_STATUS(I2C0) |
|
#define | I2C0_CLKDIV I2C_CLKDIV(I2C0) |
|
#define | I2C0_SADDR I2C_SADDR(I2C0) |
|
#define | I2C0_SADDRMASK I2C_SADDRMASK(I2C0) |
|
#define | I2C0_RXDATA I2C_RXDATA(I2C0) |
|
#define | I2C0_RXDATAP I2C_RXDATAP(I2C0) |
|
#define | I2C0_TXDATA I2C_TXDATA(I2C0) |
|
#define | I2C0_IF I2C_IF(I2C0) |
|
#define | I2C0_IFS I2C_IFS(I2C0) |
|
#define | I2C0_IFC I2C_IFC(I2C0) |
|
#define | I2C0_IEN I2C_IEN(I2C0) |
|
#define | I2C0_ROUTE I2C_ROUTE(I2C0) |
|
#define | I2C1 I2C1_BASE |
|
#define | I2C1_CTRL I2C_CTRL(I2C1) |
|
#define | I2C1_CMD I2C_CMD(I2C1) |
|
#define | I2C1_STATE I2C_STATE(I2C1) |
|
#define | I2C1_STATUS I2C_STATUS(I2C1) |
|
#define | I2C1_CLKDIV I2C_CLKDIV(I2C1) |
|
#define | I2C1_SADDR I2C_SADDR(I2C1) |
|
#define | I2C1_SADDRMASK I2C_SADDRMASK(I2C1) |
|
#define | I2C1_RXDATA I2C_RXDATA(I2C1) |
|
#define | I2C1_RXDATAP I2C_RXDATAP(I2C1) |
|
#define | I2C1_TXDATA I2C_TXDATA(I2C1) |
|
#define | I2C1_IF I2C_IF(I2C1) |
|
#define | I2C1_IFS I2C_IFS(I2C1) |
|
#define | I2C1_IFC I2C_IFC(I2C1) |
|
#define | I2C1_IEN I2C_IEN(I2C1) |
|
#define | I2C1_ROUTE I2C_ROUTE(I2C1) |
|