Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
tsi721.h File Reference

Go to the source code of this file.

Data Structures

struct  tsi721_dma_desc
 
struct  tsi721_imsg_desc
 
struct  tsi721_omsg_desc
 
struct  tsi721_dma_sts
 
struct  tsi721_desc_sts_fifo
 
struct  tsi721_bdma_maint
 
struct  tsi721_imsg_ring
 
struct  tsi721_omsg_ring
 
struct  tsi721_device
 

Macros

#define DRV_NAME   "tsi721"
 
#define DEFAULT_HOPCOUNT   0xff
 
#define DEFAULT_DESTID   0xff
 
#define PCI_DEVICE_ID_TSI721   0x80ab
 
#define BAR_0   0
 
#define BAR_1   1
 
#define BAR_2   2
 
#define BAR_4   4
 
#define TSI721_PC2SR_BARS   2
 
#define TSI721_PC2SR_WINS   8
 
#define TSI721_PC2SR_ZONES   8
 
#define TSI721_MAINT_WIN   0 /* Window for outbound maintenance requests */
 
#define IDB_QUEUE   0 /* Inbound Doorbell Queue to use */
 
#define IDB_QSIZE   512 /* Inbound Doorbell Queue size */
 
#define TSI721_REG_SPACE_SIZE   (512 * 1024) /* 512K */
 
#define TSI721_DB_WIN_SIZE   (16 * 1024 * 1024) /* 16MB */
 
#define RIO_TT_CODE_8   0x00000000
 
#define RIO_TT_CODE_16   0x00000001
 
#define TSI721_DMA_MAXCH   8
 
#define TSI721_DMA_MINSTSSZ   32
 
#define TSI721_DMA_STSBLKSZ   8
 
#define TSI721_SRIO_MAXCH   8
 
#define DBELL_SID(buf)   (((u8)buf[2] << 8) | (u8)buf[3])
 
#define DBELL_TID(buf)   (((u8)buf[4] << 8) | (u8)buf[5])
 
#define DBELL_INF(buf)   (((u8)buf[0] << 8) | (u8)buf[1])
 
#define TSI721_RIO_PW_MSG_SIZE   16 /* Tsi721 saves only 16 bytes of PW msg */
 
#define TSI721_PCIECFG_MSIXTBL   0x0a4
 
#define TSI721_MSIXTBL_OFFSET   0x2c000
 
#define TSI721_PCIECFG_MSIXPBA   0x0a8
 
#define TSI721_MSIXPBA_OFFSET   0x2a000
 
#define TSI721_PCIECFG_EPCTL   0x400
 
#define MAX_READ_REQUEST_SZ_SHIFT   12
 
#define TSI721_RIO_EM_INT_STAT   0x10910
 
#define TSI721_RIO_EM_INT_STAT_PW_RX   0x00010000
 
#define TSI721_RIO_EM_INT_ENABLE   0x10914
 
#define TSI721_RIO_EM_INT_ENABLE_PW_RX   0x00010000
 
#define TSI721_RIO_EM_DEV_INT_EN   0x10930
 
#define TSI721_RIO_EM_DEV_INT_EN_INT   0x00000001
 
#define TSI721_RIO_PW_CTL   0x10a04
 
#define TSI721_RIO_PW_CTL_PW_TIMER   0xf0000000
 
#define TSI721_RIO_PW_CTL_PWT_DIS   (0 << 28)
 
#define TSI721_RIO_PW_CTL_PWT_103   (1 << 28)
 
#define TSI721_RIO_PW_CTL_PWT_205   (1 << 29)
 
#define TSI721_RIO_PW_CTL_PWT_410   (1 << 30)
 
#define TSI721_RIO_PW_CTL_PWT_820   (1 << 31)
 
#define TSI721_RIO_PW_CTL_PWC_MODE   0x01000000
 
#define TSI721_RIO_PW_CTL_PWC_CONT   0x00000000
 
#define TSI721_RIO_PW_CTL_PWC_REL   0x01000000
 
#define TSI721_RIO_PW_RX_STAT   0x10a10
 
#define TSI721_RIO_PW_RX_STAT_WR_SIZE   0x0000f000
 
#define TSI_RIO_PW_RX_STAT_WDPTR   0x00000100
 
#define TSI721_RIO_PW_RX_STAT_PW_SHORT   0x00000008
 
#define TSI721_RIO_PW_RX_STAT_PW_TRUNC   0x00000004
 
#define TSI721_RIO_PW_RX_STAT_PW_DISC   0x00000002
 
#define TSI721_RIO_PW_RX_STAT_PW_VAL   0x00000001
 
#define TSI721_RIO_PW_RX_CAPT(x)   (0x10a20 + (x)*4)
 
#define TSI721_IDB_ENTRY_SIZE   64
 
#define TSI721_IDQ_CTL(x)   (0x20000 + (x) * 0x1000)
 
#define TSI721_IDQ_SUSPEND   0x00000002
 
#define TSI721_IDQ_INIT   0x00000001
 
#define TSI721_IDQ_STS(x)   (0x20004 + (x) * 0x1000)
 
#define TSI721_IDQ_RUN   0x00200000
 
#define TSI721_IDQ_MASK(x)   (0x20008 + (x) * 0x1000)
 
#define TSI721_IDQ_MASK_MASK   0xffff0000
 
#define TSI721_IDQ_MASK_PATT   0x0000ffff
 
#define TSI721_IDQ_RP(x)   (0x2000c + (x) * 0x1000)
 
#define TSI721_IDQ_RP_PTR   0x0007ffff
 
#define TSI721_IDQ_WP(x)   (0x20010 + (x) * 0x1000)
 
#define TSI721_IDQ_WP_PTR   0x0007ffff
 
#define TSI721_IDQ_BASEL(x)   (0x20014 + (x) * 0x1000)
 
#define TSI721_IDQ_BASEL_ADDR   0xffffffc0
 
#define TSI721_IDQ_BASEU(x)   (0x20018 + (x) * 0x1000)
 
#define TSI721_IDQ_SIZE(x)   (0x2001c + (x) * 0x1000)
 
#define TSI721_IDQ_SIZE_VAL(size)   (__fls(size) - 4)
 
#define TSI721_IDQ_SIZE_MIN   512
 
#define TSI721_IDQ_SIZE_MAX   (512 * 1024)
 
#define TSI721_SR_CHINT(x)   (0x20040 + (x) * 0x1000)
 
#define TSI721_SR_CHINTE(x)   (0x20044 + (x) * 0x1000)
 
#define TSI721_SR_CHINTSET(x)   (0x20048 + (x) * 0x1000)
 
#define TSI721_SR_CHINT_ODBOK   0x00000020
 
#define TSI721_SR_CHINT_IDBQRCV   0x00000010
 
#define TSI721_SR_CHINT_SUSP   0x00000008
 
#define TSI721_SR_CHINT_ODBTO   0x00000004
 
#define TSI721_SR_CHINT_ODBRTRY   0x00000002
 
#define TSI721_SR_CHINT_ODBERR   0x00000001
 
#define TSI721_SR_CHINT_ALL   0x0000003f
 
#define TSI721_IBWIN_NUM   8
 
#define TSI721_IBWIN_LB(x)   (0x29000 + (x) * 0x20)
 
#define TSI721_IBWIN_LB_BA   0xfffff000
 
#define TSI721_IBWIN_LB_WEN   0x00000001
 
#define TSI721_IBWIN_UB(x)   (0x29004 + (x) * 0x20)
 
#define TSI721_IBWIN_SZ(x)   (0x29008 + (x) * 0x20)
 
#define TSI721_IBWIN_SZ_SIZE   0x00001f00
 
#define TSI721_IBWIN_SIZE(size)   (__fls(size) - 12)
 
#define TSI721_IBWIN_TLA(x)   (0x2900c + (x) * 0x20)
 
#define TSI721_IBWIN_TLA_ADD   0xfffff000
 
#define TSI721_IBWIN_TUA(x)   (0x29010 + (x) * 0x20)
 
#define TSI721_SR2PC_GEN_INTE   0x29800
 
#define TSI721_SR2PC_PWE   0x29804
 
#define TSI721_SR2PC_GEN_INT   0x29808
 
#define TSI721_DEV_INTE   0x29840
 
#define TSI721_DEV_INT   0x29844
 
#define TSI721_DEV_INTSET   0x29848
 
#define TSI721_DEV_INT_BDMA_CH   0x00002000
 
#define TSI721_DEV_INT_BDMA_NCH   0x00001000
 
#define TSI721_DEV_INT_SMSG_CH   0x00000800
 
#define TSI721_DEV_INT_SMSG_NCH   0x00000400
 
#define TSI721_DEV_INT_SR2PC_CH   0x00000200
 
#define TSI721_DEV_INT_SRIO   0x00000020
 
#define TSI721_DEV_CHAN_INTE   0x2984c
 
#define TSI721_DEV_CHAN_INT   0x29850
 
#define TSI721_INT_SR2PC_CHAN_M   0xff000000
 
#define TSI721_INT_SR2PC_CHAN(x)   (1 << (24 + (x)))
 
#define TSI721_INT_IMSG_CHAN_M   0x00ff0000
 
#define TSI721_INT_IMSG_CHAN(x)   (1 << (16 + (x)))
 
#define TSI721_INT_OMSG_CHAN_M   0x0000ff00
 
#define TSI721_INT_OMSG_CHAN(x)   (1 << (8 + (x)))
 
#define TSI721_INT_BDMA_CHAN_M   0x000000ff
 
#define TSI721_INT_BDMA_CHAN(x)   (1 << (x))
 
#define TSI721_OBWIN_NUM   TSI721_PC2SR_WINS
 
#define TSI721_OBWINLB(x)   (0x40000 + (x) * 0x20)
 
#define TSI721_OBWINLB_BA   0xffff8000
 
#define TSI721_OBWINLB_WEN   0x00000001
 
#define TSI721_OBWINUB(x)   (0x40004 + (x) * 0x20)
 
#define TSI721_OBWINSZ(x)   (0x40008 + (x) * 0x20)
 
#define TSI721_OBWINSZ_SIZE   0x00001f00
 
#define TSI721_OBWIN_SIZE(size)   (__fls(size) - 15)
 
#define TSI721_ZONE_SEL   0x41300
 
#define TSI721_ZONE_SEL_RD_WRB   0x00020000
 
#define TSI721_ZONE_SEL_GO   0x00010000
 
#define TSI721_ZONE_SEL_WIN   0x00000038
 
#define TSI721_ZONE_SEL_ZONE   0x00000007
 
#define TSI721_LUT_DATA0   0x41304
 
#define TSI721_LUT_DATA0_ADD   0xfffff000
 
#define TSI721_LUT_DATA0_RDTYPE   0x00000f00
 
#define TSI721_LUT_DATA0_NREAD   0x00000100
 
#define TSI721_LUT_DATA0_MNTRD   0x00000200
 
#define TSI721_LUT_DATA0_RDCRF   0x00000020
 
#define TSI721_LUT_DATA0_WRCRF   0x00000010
 
#define TSI721_LUT_DATA0_WRTYPE   0x0000000f
 
#define TSI721_LUT_DATA0_NWR   0x00000001
 
#define TSI721_LUT_DATA0_MNTWR   0x00000002
 
#define TSI721_LUT_DATA0_NWR_R   0x00000004
 
#define TSI721_LUT_DATA1   0x41308
 
#define TSI721_LUT_DATA2   0x4130c
 
#define TSI721_LUT_DATA2_HC   0xff000000
 
#define TSI721_LUT_DATA2_ADD65   0x000c0000
 
#define TSI721_LUT_DATA2_TT   0x00030000
 
#define TSI721_LUT_DATA2_DSTID   0x0000ffff
 
#define TSI721_PC2SR_INTE   0x41310
 
#define TSI721_DEVCTL   0x48004
 
#define TSI721_DEVCTL_SRBOOT_CMPL   0x00000004
 
#define TSI721_I2C_INT_ENABLE   0x49120
 
#define TSI721_DMAC_BASE(x)   (0x51000 + (x) * 0x1000)
 
#define TSI721_DMAC_DWRCNT   0x000
 
#define TSI721_DMAC_DRDCNT   0x004
 
#define TSI721_DMAC_CTL   0x008
 
#define TSI721_DMAC_CTL_SUSP   0x00000002
 
#define TSI721_DMAC_CTL_INIT   0x00000001
 
#define TSI721_DMAC_INT   0x00c
 
#define TSI721_DMAC_INT_STFULL   0x00000010
 
#define TSI721_DMAC_INT_DONE   0x00000008
 
#define TSI721_DMAC_INT_SUSP   0x00000004
 
#define TSI721_DMAC_INT_ERR   0x00000002
 
#define TSI721_DMAC_INT_IOFDONE   0x00000001
 
#define TSI721_DMAC_INT_ALL   0x0000001f
 
#define TSI721_DMAC_INTSET   0x010
 
#define TSI721_DMAC_STS   0x014
 
#define TSI721_DMAC_STS_ABORT   0x00400000
 
#define TSI721_DMAC_STS_RUN   0x00200000
 
#define TSI721_DMAC_STS_CS   0x001f0000
 
#define TSI721_DMAC_INTE   0x018
 
#define TSI721_DMAC_DPTRL   0x024
 
#define TSI721_DMAC_DPTRL_MASK   0xffffffe0
 
#define TSI721_DMAC_DPTRH   0x028
 
#define TSI721_DMAC_DSBL   0x02c
 
#define TSI721_DMAC_DSBL_MASK   0xffffffc0
 
#define TSI721_DMAC_DSBH   0x030
 
#define TSI721_DMAC_DSSZ   0x034
 
#define TSI721_DMAC_DSSZ_SIZE_M   0x0000000f
 
#define TSI721_DMAC_DSSZ_SIZE(size)   (__fls(size) - 4)
 
#define TSI721_DMAC_DSRP   0x038
 
#define TSI721_DMAC_DSRP_MASK   0x0007ffff
 
#define TSI721_DMAC_DSWP   0x03c
 
#define TSI721_DMAC_DSWP_MASK   0x0007ffff
 
#define TSI721_BDMA_INTE   0x5f000
 
#define TSI721_MSG_BUFFER_SIZE   RIO_MAX_MSG_SIZE
 
#define TSI721_MSG_MAX_SIZE   RIO_MAX_MSG_SIZE
 
#define TSI721_IMSG_MAXCH   8
 
#define TSI721_IMSG_CHNUM   TSI721_IMSG_MAXCH
 
#define TSI721_IMSGD_MIN_RING_SIZE   32
 
#define TSI721_IMSGD_RING_SIZE   512
 
#define TSI721_OMSG_CHNUM   4 /* One channel per MBOX */
 
#define TSI721_OMSGD_MIN_RING_SIZE   32
 
#define TSI721_OMSGD_RING_SIZE   512
 
#define TSI721_OBDMAC_DWRCNT(x)   (0x61000 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DRDCNT(x)   (0x61004 + (x) * 0x1000)
 
#define TSI721_OBDMAC_CTL(x)   (0x61008 + (x) * 0x1000)
 
#define TSI721_OBDMAC_CTL_MASK   0x00000007
 
#define TSI721_OBDMAC_CTL_RETRY_THR   0x00000004
 
#define TSI721_OBDMAC_CTL_SUSPEND   0x00000002
 
#define TSI721_OBDMAC_CTL_INIT   0x00000001
 
#define TSI721_OBDMAC_INT(x)   (0x6100c + (x) * 0x1000)
 
#define TSI721_OBDMAC_INTSET(x)   (0x61010 + (x) * 0x1000)
 
#define TSI721_OBDMAC_INTE(x)   (0x61018 + (x) * 0x1000)
 
#define TSI721_OBDMAC_INT_MASK   0x0000001F
 
#define TSI721_OBDMAC_INT_ST_FULL   0x00000010
 
#define TSI721_OBDMAC_INT_DONE   0x00000008
 
#define TSI721_OBDMAC_INT_SUSPENDED   0x00000004
 
#define TSI721_OBDMAC_INT_ERROR   0x00000002
 
#define TSI721_OBDMAC_INT_IOF_DONE   0x00000001
 
#define TSI721_OBDMAC_INT_ALL   TSI721_OBDMAC_INT_MASK
 
#define TSI721_OBDMAC_STS(x)   (0x61014 + (x) * 0x1000)
 
#define TSI721_OBDMAC_STS_MASK   0x007f0000
 
#define TSI721_OBDMAC_STS_ABORT   0x00400000
 
#define TSI721_OBDMAC_STS_RUN   0x00200000
 
#define TSI721_OBDMAC_STS_CS   0x001f0000
 
#define TSI721_OBDMAC_PWE(x)   (0x6101c + (x) * 0x1000)
 
#define TSI721_OBDMAC_PWE_MASK   0x00000002
 
#define TSI721_OBDMAC_PWE_ERROR_EN   0x00000002
 
#define TSI721_OBDMAC_DPTRL(x)   (0x61020 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DPTRL_MASK   0xfffffff0
 
#define TSI721_OBDMAC_DPTRH(x)   (0x61024 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DPTRH_MASK   0xffffffff
 
#define TSI721_OBDMAC_DSBL(x)   (0x61040 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DSBL_MASK   0xffffffc0
 
#define TSI721_OBDMAC_DSBH(x)   (0x61044 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DSBH_MASK   0xffffffff
 
#define TSI721_OBDMAC_DSSZ(x)   (0x61048 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DSSZ_MASK   0x0000000f
 
#define TSI721_OBDMAC_DSRP(x)   (0x6104c + (x) * 0x1000)
 
#define TSI721_OBDMAC_DSRP_MASK   0x0007ffff
 
#define TSI721_OBDMAC_DSWP(x)   (0x61050 + (x) * 0x1000)
 
#define TSI721_OBDMAC_DSWP_MASK   0x0007ffff
 
#define TSI721_RQRPTO   0x60010
 
#define TSI721_RQRPTO_MASK   0x00ffffff
 
#define TSI721_RQRPTO_VAL   400 /* Response TO value */
 
#define TSI721_IB_DEVID_GLOBAL   0xffff
 
#define TSI721_IBDMAC_FQBL(x)   (0x61200 + (x) * 0x1000)
 
#define TSI721_IBDMAC_FQBL_MASK   0xffffffc0
 
#define TSI721_IBDMAC_FQBH(x)   (0x61204 + (x) * 0x1000)
 
#define TSI721_IBDMAC_FQBH_MASK   0xffffffff
 
#define TSI721_IBDMAC_FQSZ_ENTRY_INX   TSI721_IMSGD_RING_SIZE
 
#define TSI721_IBDMAC_FQSZ(x)   (0x61208 + (x) * 0x1000)
 
#define TSI721_IBDMAC_FQSZ_MASK   0x0000000f
 
#define TSI721_IBDMAC_FQRP(x)   (0x6120c + (x) * 0x1000)
 
#define TSI721_IBDMAC_FQRP_MASK   0x0007ffff
 
#define TSI721_IBDMAC_FQWP(x)   (0x61210 + (x) * 0x1000)
 
#define TSI721_IBDMAC_FQWP_MASK   0x0007ffff
 
#define TSI721_IBDMAC_FQTH(x)   (0x61214 + (x) * 0x1000)
 
#define TSI721_IBDMAC_FQTH_MASK   0x0007ffff
 
#define TSI721_IB_DEVID   0x60020
 
#define TSI721_IB_DEVID_MASK   0x0000ffff
 
#define TSI721_IBDMAC_CTL(x)   (0x61240 + (x) * 0x1000)
 
#define TSI721_IBDMAC_CTL_MASK   0x00000003
 
#define TSI721_IBDMAC_CTL_SUSPEND   0x00000002
 
#define TSI721_IBDMAC_CTL_INIT   0x00000001
 
#define TSI721_IBDMAC_STS(x)   (0x61244 + (x) * 0x1000)
 
#define TSI721_IBDMAC_STS_MASK   0x007f0000
 
#define TSI721_IBSMAC_STS_ABORT   0x00400000
 
#define TSI721_IBSMAC_STS_RUN   0x00200000
 
#define TSI721_IBSMAC_STS_CS   0x001f0000
 
#define TSI721_IBDMAC_INT(x)   (0x61248 + (x) * 0x1000)
 
#define TSI721_IBDMAC_INTSET(x)   (0x6124c + (x) * 0x1000)
 
#define TSI721_IBDMAC_INTE(x)   (0x61250 + (x) * 0x1000)
 
#define TSI721_IBDMAC_INT_MASK   0x0000100f
 
#define TSI721_IBDMAC_INT_SRTO   0x00001000
 
#define TSI721_IBDMAC_INT_SUSPENDED   0x00000008
 
#define TSI721_IBDMAC_INT_PC_ERROR   0x00000004
 
#define TSI721_IBDMAC_INT_FQ_LOW   0x00000002
 
#define TSI721_IBDMAC_INT_DQ_RCV   0x00000001
 
#define TSI721_IBDMAC_INT_ALL   TSI721_IBDMAC_INT_MASK
 
#define TSI721_IBDMAC_PWE(x)   (0x61254 + (x) * 0x1000)
 
#define TSI721_IBDMAC_PWE_MASK   0x00001700
 
#define TSI721_IBDMAC_PWE_SRTO   0x00001000
 
#define TSI721_IBDMAC_PWE_ILL_FMT   0x00000400
 
#define TSI721_IBDMAC_PWE_ILL_DEC   0x00000200
 
#define TSI721_IBDMAC_PWE_IMP_SP   0x00000100
 
#define TSI721_IBDMAC_DQBL(x)   (0x61300 + (x) * 0x1000)
 
#define TSI721_IBDMAC_DQBL_MASK   0xffffffc0
 
#define TSI721_IBDMAC_DQBL_ADDR   0xffffffc0
 
#define TSI721_IBDMAC_DQBH(x)   (0x61304 + (x) * 0x1000)
 
#define TSI721_IBDMAC_DQBH_MASK   0xffffffff
 
#define TSI721_IBDMAC_DQRP(x)   (0x61308 + (x) * 0x1000)
 
#define TSI721_IBDMAC_DQRP_MASK   0x0007ffff
 
#define TSI721_IBDMAC_DQWR(x)   (0x6130c + (x) * 0x1000)
 
#define TSI721_IBDMAC_DQWR_MASK   0x0007ffff
 
#define TSI721_IBDMAC_DQSZ(x)   (0x61314 + (x) * 0x1000)
 
#define TSI721_IBDMAC_DQSZ_MASK   0x0000000f
 
#define TSI721_SMSG_PWE   0x6a004
 
#define TSI721_SMSG_INTE   0x6a000
 
#define TSI721_SMSG_INT   0x6a008
 
#define TSI721_SMSG_INTSET   0x6a010
 
#define TSI721_SMSG_INT_MASK   0x0086ffff
 
#define TSI721_SMSG_INT_UNS_RSP   0x00800000
 
#define TSI721_SMSG_INT_ECC_NCOR   0x00040000
 
#define TSI721_SMSG_INT_ECC_COR   0x00020000
 
#define TSI721_SMSG_INT_ECC_NCOR_CH   0x0000ff00
 
#define TSI721_SMSG_INT_ECC_COR_CH   0x000000ff
 
#define TSI721_SMSG_ECC_LOG   0x6a014
 
#define TSI721_SMSG_ECC_LOG_MASK   0x00070007
 
#define TSI721_SMSG_ECC_LOG_ECC_NCOR_M   0x00070000
 
#define TSI721_SMSG_ECC_LOG_ECC_COR_M   0x00000007
 
#define TSI721_RETRY_GEN_CNT   0x6a100
 
#define TSI721_RETRY_GEN_CNT_MASK   0xffffffff
 
#define TSI721_RETRY_RX_CNT   0x6a104
 
#define TSI721_RETRY_RX_CNT_MASK   0xffffffff
 
#define TSI721_SMSG_ECC_COR_LOG(x)   (0x6a300 + (x) * 4)
 
#define TSI721_SMSG_ECC_COR_LOG_MASK   0x000000ff
 
#define TSI721_SMSG_ECC_NCOR(x)   (0x6a340 + (x) * 4)
 
#define TSI721_SMSG_ECC_NCOR_MASK   0x000000ff
 
#define TSI721_DMAD_DEVID   0x0000ffff
 
#define TSI721_DMAD_CRF   0x00010000
 
#define TSI721_DMAD_PRIO   0x00060000
 
#define TSI721_DMAD_RTYPE   0x00780000
 
#define TSI721_DMAD_IOF   0x08000000
 
#define TSI721_DMAD_DTYPE   0xe0000000
 
#define TSI721_DMAD_BCOUNT1   0x03ffffff /* if DTYPE == 1 */
 
#define TSI721_DMAD_BCOUNT2   0x0000000f /* if DTYPE == 2 */
 
#define TSI721_DMAD_TT   0x0c000000
 
#define TSI721_DMAD_RADDR0   0xc0000000
 
#define TSI721_DMAD_CFGOFF   0x00ffffff
 
#define TSI721_DMAD_HOPCNT   0xff000000
 
#define TSI721_IMD_DEVID   0x0000ffff
 
#define TSI721_IMD_CRF   0x00010000
 
#define TSI721_IMD_PRIO   0x00060000
 
#define TSI721_IMD_TT   0x00180000
 
#define TSI721_IMD_DTYPE   0xe0000000
 
#define TSI721_IMD_BCOUNT   0x00000ff8
 
#define TSI721_IMD_SSIZE   0x0000f000
 
#define TSI721_IMD_LETER   0x00030000
 
#define TSI721_IMD_XMBOX   0x003c0000
 
#define TSI721_IMD_MBOX   0x00c00000
 
#define TSI721_IMD_CS   0x78000000
 
#define TSI721_IMD_HO   0x80000000
 
#define TSI721_OMD_DEVID   0x0000ffff
 
#define TSI721_OMD_CRF   0x00010000
 
#define TSI721_OMD_PRIO   0x00060000
 
#define TSI721_OMD_IOF   0x08000000
 
#define TSI721_OMD_DTYPE   0xe0000000
 
#define TSI721_OMD_RSRVD   0x17f80000
 
#define TSI721_OMD_BCOUNT   0x00000ff8
 
#define TSI721_OMD_SSIZE   0x0000f000
 
#define TSI721_OMD_LETER   0x00030000
 
#define TSI721_OMD_XMBOX   0x003c0000
 
#define TSI721_OMD_MBOX   0x00c00000
 
#define TSI721_OMD_TT   0x0c000000
 
#define TSI721_DMA_CHNUM   TSI721_DMA_MAXCH
 
#define TSI721_DMACH_MAINT   0 /* DMA channel for maint requests */
 
#define TSI721_DMACH_MAINT_NBD   32 /* Number of BDs for maint requests */
 
#define TSI721_DMACH_DMA   1 /* DMA channel for data transfers */
 
#define MSG_DMA_ENTRY_INX_TO_SIZE(x)   ((0x10 << (x)) & 0xFFFF0)
 

Enumerations

enum  dma_dtype {
  DTYPE1 = 1, DTYPE2 = 2, DTYPE3 = 3, DTYPE4 = 4,
  DTYPE5 = 5, DTYPE6 = 6
}
 
enum  dma_rtype {
  NREAD = 0, LAST_NWRITE_R = 1, ALL_NWRITE = 2, ALL_NWRITE_R = 3,
  MAINT_RD = 4, MAINT_WR = 5
}
 
enum  tsi721_smsg_int_flag {
  SMSG_INT_NONE = 0x00000000, SMSG_INT_ECC_COR_CH = 0x000000ff, SMSG_INT_ECC_NCOR_CH = 0x0000ff00, SMSG_INT_ECC_COR = 0x00020000,
  SMSG_INT_ECC_NCOR = 0x00040000, SMSG_INT_UNS_RSP = 0x00800000, SMSG_INT_ALL = 0x0006ffff
}
 
enum  tsi721_flags { TSI721_USING_MSI = (1 << 0), TSI721_USING_MSIX = (1 << 1), TSI721_IMSGID_SET = (1 << 2) }
 

Functions

struct tsi721_dma_desc __aligned (32)
 
struct tsi721_imsg_desc __aligned (64)
 
struct tsi721_omsg_desc __aligned (16)
 

Variables

__le32 type_id
 
__le32 bcount
 
union {
   __le32   raddr_lo
 
   __le32   next_lo
 
}; 
 
union {
   __le32   raddr_hi
 
   __le32   next_hi
 
}; 
 
union {
   struct {
      __le32   bufptr_lo
 
      __le32   bufptr_hi
 
      __le32   s_dist
 
      __le32   s_size
 
   }   t1
 
   __le32   data [4]
 
   u32   reserved [4]
 
}; 
 
__le32 msg_info
 
union {
   __le32   bufptr_lo
 
   __le32   next_lo
 
}; 
 
union {
   __le32   bufptr_hi
 
   __le32   next_hi
 
}; 
 
__le64 desc_sts [8]
 
union {
   __le64   da64
 
   struct {
      __le32   lo
 
      __le32   hi
 
   }   da32
 
stat [8]
 
enum dma_dtype __aligned
 

Macro Definition Documentation

#define BAR_0   0

Definition at line 32 of file tsi721.h.

#define BAR_1   1

Definition at line 33 of file tsi721.h.

#define BAR_2   2

Definition at line 34 of file tsi721.h.

#define BAR_4   4

Definition at line 35 of file tsi721.h.

#define DBELL_INF (   buf)    (((u8)buf[0] << 8) | (u8)buf[1])

Definition at line 59 of file tsi721.h.

#define DBELL_SID (   buf)    (((u8)buf[2] << 8) | (u8)buf[3])

Definition at line 57 of file tsi721.h.

#define DBELL_TID (   buf)    (((u8)buf[4] << 8) | (u8)buf[5])

Definition at line 58 of file tsi721.h.

#define DEFAULT_DESTID   0xff

Definition at line 27 of file tsi721.h.

#define DEFAULT_HOPCOUNT   0xff

Definition at line 26 of file tsi721.h.

#define DRV_NAME   "tsi721"

Definition at line 24 of file tsi721.h.

#define IDB_QSIZE   512 /* Inbound Doorbell Queue size */

Definition at line 42 of file tsi721.h.

#define IDB_QUEUE   0 /* Inbound Doorbell Queue to use */

Definition at line 41 of file tsi721.h.

#define MAX_READ_REQUEST_SZ_SHIFT   12

Definition at line 75 of file tsi721.h.

#define MSG_DMA_ENTRY_INX_TO_SIZE (   x)    ((0x10 << (x)) & 0xFFFF0)

Definition at line 631 of file tsi721.h.

#define PCI_DEVICE_ID_TSI721   0x80ab

Definition at line 30 of file tsi721.h.

#define RIO_TT_CODE_16   0x00000001

Definition at line 49 of file tsi721.h.

#define RIO_TT_CODE_8   0x00000000

Definition at line 48 of file tsi721.h.

#define TSI721_BDMA_INTE   0x5f000

Definition at line 297 of file tsi721.h.

#define TSI721_DB_WIN_SIZE   (16 * 1024 * 1024) /* 16MB */

Definition at line 46 of file tsi721.h.

#define TSI721_DEV_CHAN_INT   0x29850

Definition at line 187 of file tsi721.h.

#define TSI721_DEV_CHAN_INTE   0x2984c

Definition at line 186 of file tsi721.h.

#define TSI721_DEV_INT   0x29844

Definition at line 177 of file tsi721.h.

#define TSI721_DEV_INT_BDMA_CH   0x00002000

Definition at line 179 of file tsi721.h.

#define TSI721_DEV_INT_BDMA_NCH   0x00001000

Definition at line 180 of file tsi721.h.

#define TSI721_DEV_INT_SMSG_CH   0x00000800

Definition at line 181 of file tsi721.h.

#define TSI721_DEV_INT_SMSG_NCH   0x00000400

Definition at line 182 of file tsi721.h.

#define TSI721_DEV_INT_SR2PC_CH   0x00000200

Definition at line 183 of file tsi721.h.

#define TSI721_DEV_INT_SRIO   0x00000020

Definition at line 184 of file tsi721.h.

#define TSI721_DEV_INTE   0x29840

Definition at line 176 of file tsi721.h.

#define TSI721_DEV_INTSET   0x29848

Definition at line 178 of file tsi721.h.

#define TSI721_DEVCTL   0x48004

Definition at line 241 of file tsi721.h.

#define TSI721_DEVCTL_SRBOOT_CMPL   0x00000004

Definition at line 242 of file tsi721.h.

#define TSI721_DMA_CHNUM   TSI721_DMA_MAXCH

Definition at line 624 of file tsi721.h.

#define TSI721_DMA_MAXCH   8

Definition at line 51 of file tsi721.h.

#define TSI721_DMA_MINSTSSZ   32

Definition at line 52 of file tsi721.h.

#define TSI721_DMA_STSBLKSZ   8

Definition at line 53 of file tsi721.h.

#define TSI721_DMAC_BASE (   x)    (0x51000 + (x) * 0x1000)

Definition at line 251 of file tsi721.h.

#define TSI721_DMAC_CTL   0x008

Definition at line 256 of file tsi721.h.

#define TSI721_DMAC_CTL_INIT   0x00000001

Definition at line 258 of file tsi721.h.

#define TSI721_DMAC_CTL_SUSP   0x00000002

Definition at line 257 of file tsi721.h.

#define TSI721_DMAC_DPTRH   0x028

Definition at line 280 of file tsi721.h.

#define TSI721_DMAC_DPTRL   0x024

Definition at line 277 of file tsi721.h.

#define TSI721_DMAC_DPTRL_MASK   0xffffffe0

Definition at line 278 of file tsi721.h.

#define TSI721_DMAC_DRDCNT   0x004

Definition at line 254 of file tsi721.h.

#define TSI721_DMAC_DSBH   0x030

Definition at line 285 of file tsi721.h.

#define TSI721_DMAC_DSBL   0x02c

Definition at line 282 of file tsi721.h.

#define TSI721_DMAC_DSBL_MASK   0xffffffc0

Definition at line 283 of file tsi721.h.

#define TSI721_DMAC_DSRP   0x038

Definition at line 291 of file tsi721.h.

#define TSI721_DMAC_DSRP_MASK   0x0007ffff

Definition at line 292 of file tsi721.h.

#define TSI721_DMAC_DSSZ   0x034

Definition at line 287 of file tsi721.h.

#define TSI721_DMAC_DSSZ_SIZE (   size)    (__fls(size) - 4)

Definition at line 289 of file tsi721.h.

#define TSI721_DMAC_DSSZ_SIZE_M   0x0000000f

Definition at line 288 of file tsi721.h.

#define TSI721_DMAC_DSWP   0x03c

Definition at line 294 of file tsi721.h.

#define TSI721_DMAC_DSWP_MASK   0x0007ffff

Definition at line 295 of file tsi721.h.

#define TSI721_DMAC_DWRCNT   0x000

Definition at line 253 of file tsi721.h.

#define TSI721_DMAC_INT   0x00c

Definition at line 260 of file tsi721.h.

#define TSI721_DMAC_INT_ALL   0x0000001f

Definition at line 266 of file tsi721.h.

#define TSI721_DMAC_INT_DONE   0x00000008

Definition at line 262 of file tsi721.h.

#define TSI721_DMAC_INT_ERR   0x00000002

Definition at line 264 of file tsi721.h.

#define TSI721_DMAC_INT_IOFDONE   0x00000001

Definition at line 265 of file tsi721.h.

#define TSI721_DMAC_INT_STFULL   0x00000010

Definition at line 261 of file tsi721.h.

#define TSI721_DMAC_INT_SUSP   0x00000004

Definition at line 263 of file tsi721.h.

#define TSI721_DMAC_INTE   0x018

Definition at line 275 of file tsi721.h.

#define TSI721_DMAC_INTSET   0x010

Definition at line 268 of file tsi721.h.

#define TSI721_DMAC_STS   0x014

Definition at line 270 of file tsi721.h.

#define TSI721_DMAC_STS_ABORT   0x00400000

Definition at line 271 of file tsi721.h.

#define TSI721_DMAC_STS_CS   0x001f0000

Definition at line 273 of file tsi721.h.

#define TSI721_DMAC_STS_RUN   0x00200000

Definition at line 272 of file tsi721.h.

#define TSI721_DMACH_DMA   1 /* DMA channel for data transfers */

Definition at line 629 of file tsi721.h.

#define TSI721_DMACH_MAINT   0 /* DMA channel for maint requests */

Definition at line 626 of file tsi721.h.

#define TSI721_DMACH_MAINT_NBD   32 /* Number of BDs for maint requests */

Definition at line 627 of file tsi721.h.

#define TSI721_DMAD_BCOUNT1   0x03ffffff /* if DTYPE == 1 */

Definition at line 536 of file tsi721.h.

#define TSI721_DMAD_BCOUNT2   0x0000000f /* if DTYPE == 2 */

Definition at line 537 of file tsi721.h.

#define TSI721_DMAD_CFGOFF   0x00ffffff

Definition at line 546 of file tsi721.h.

#define TSI721_DMAD_CRF   0x00010000

Definition at line 528 of file tsi721.h.

#define TSI721_DMAD_DEVID   0x0000ffff

Definition at line 527 of file tsi721.h.

#define TSI721_DMAD_DTYPE   0xe0000000

Definition at line 532 of file tsi721.h.

#define TSI721_DMAD_HOPCNT   0xff000000

Definition at line 547 of file tsi721.h.

#define TSI721_DMAD_IOF   0x08000000

Definition at line 531 of file tsi721.h.

#define TSI721_DMAD_PRIO   0x00060000

Definition at line 529 of file tsi721.h.

#define TSI721_DMAD_RADDR0   0xc0000000

Definition at line 539 of file tsi721.h.

#define TSI721_DMAD_RTYPE   0x00780000

Definition at line 530 of file tsi721.h.

#define TSI721_DMAD_TT   0x0c000000

Definition at line 538 of file tsi721.h.

#define TSI721_I2C_INT_ENABLE   0x49120

Definition at line 244 of file tsi721.h.

#define TSI721_IB_DEVID   0x60020

Definition at line 399 of file tsi721.h.

#define TSI721_IB_DEVID_GLOBAL   0xffff

Definition at line 379 of file tsi721.h.

#define TSI721_IB_DEVID_MASK   0x0000ffff

Definition at line 400 of file tsi721.h.

#define TSI721_IBDMAC_CTL (   x)    (0x61240 + (x) * 0x1000)

Definition at line 402 of file tsi721.h.

#define TSI721_IBDMAC_CTL_INIT   0x00000001

Definition at line 405 of file tsi721.h.

#define TSI721_IBDMAC_CTL_MASK   0x00000003

Definition at line 403 of file tsi721.h.

#define TSI721_IBDMAC_CTL_SUSPEND   0x00000002

Definition at line 404 of file tsi721.h.

#define TSI721_IBDMAC_DQBH (   x)    (0x61304 + (x) * 0x1000)

Definition at line 435 of file tsi721.h.

#define TSI721_IBDMAC_DQBH_MASK   0xffffffff

Definition at line 436 of file tsi721.h.

#define TSI721_IBDMAC_DQBL (   x)    (0x61300 + (x) * 0x1000)

Definition at line 431 of file tsi721.h.

#define TSI721_IBDMAC_DQBL_ADDR   0xffffffc0

Definition at line 433 of file tsi721.h.

#define TSI721_IBDMAC_DQBL_MASK   0xffffffc0

Definition at line 432 of file tsi721.h.

#define TSI721_IBDMAC_DQRP (   x)    (0x61308 + (x) * 0x1000)

Definition at line 438 of file tsi721.h.

#define TSI721_IBDMAC_DQRP_MASK   0x0007ffff

Definition at line 439 of file tsi721.h.

#define TSI721_IBDMAC_DQSZ (   x)    (0x61314 + (x) * 0x1000)

Definition at line 444 of file tsi721.h.

#define TSI721_IBDMAC_DQSZ_MASK   0x0000000f

Definition at line 445 of file tsi721.h.

#define TSI721_IBDMAC_DQWR (   x)    (0x6130c + (x) * 0x1000)

Definition at line 441 of file tsi721.h.

#define TSI721_IBDMAC_DQWR_MASK   0x0007ffff

Definition at line 442 of file tsi721.h.

#define TSI721_IBDMAC_FQBH (   x)    (0x61204 + (x) * 0x1000)

Definition at line 383 of file tsi721.h.

#define TSI721_IBDMAC_FQBH_MASK   0xffffffff

Definition at line 384 of file tsi721.h.

#define TSI721_IBDMAC_FQBL (   x)    (0x61200 + (x) * 0x1000)

Definition at line 380 of file tsi721.h.

#define TSI721_IBDMAC_FQBL_MASK   0xffffffc0

Definition at line 381 of file tsi721.h.

#define TSI721_IBDMAC_FQRP (   x)    (0x6120c + (x) * 0x1000)

Definition at line 390 of file tsi721.h.

#define TSI721_IBDMAC_FQRP_MASK   0x0007ffff

Definition at line 391 of file tsi721.h.

#define TSI721_IBDMAC_FQSZ (   x)    (0x61208 + (x) * 0x1000)

Definition at line 387 of file tsi721.h.

#define TSI721_IBDMAC_FQSZ_ENTRY_INX   TSI721_IMSGD_RING_SIZE

Definition at line 386 of file tsi721.h.

#define TSI721_IBDMAC_FQSZ_MASK   0x0000000f

Definition at line 388 of file tsi721.h.

#define TSI721_IBDMAC_FQTH (   x)    (0x61214 + (x) * 0x1000)

Definition at line 396 of file tsi721.h.

#define TSI721_IBDMAC_FQTH_MASK   0x0007ffff

Definition at line 397 of file tsi721.h.

#define TSI721_IBDMAC_FQWP (   x)    (0x61210 + (x) * 0x1000)

Definition at line 393 of file tsi721.h.

#define TSI721_IBDMAC_FQWP_MASK   0x0007ffff

Definition at line 394 of file tsi721.h.

#define TSI721_IBDMAC_INT (   x)    (0x61248 + (x) * 0x1000)

Definition at line 413 of file tsi721.h.

#define TSI721_IBDMAC_INT_ALL   TSI721_IBDMAC_INT_MASK

Definition at line 422 of file tsi721.h.

#define TSI721_IBDMAC_INT_DQ_RCV   0x00000001

Definition at line 421 of file tsi721.h.

#define TSI721_IBDMAC_INT_FQ_LOW   0x00000002

Definition at line 420 of file tsi721.h.

#define TSI721_IBDMAC_INT_MASK   0x0000100f

Definition at line 416 of file tsi721.h.

#define TSI721_IBDMAC_INT_PC_ERROR   0x00000004

Definition at line 419 of file tsi721.h.

#define TSI721_IBDMAC_INT_SRTO   0x00001000

Definition at line 417 of file tsi721.h.

#define TSI721_IBDMAC_INT_SUSPENDED   0x00000008

Definition at line 418 of file tsi721.h.

#define TSI721_IBDMAC_INTE (   x)    (0x61250 + (x) * 0x1000)

Definition at line 415 of file tsi721.h.

#define TSI721_IBDMAC_INTSET (   x)    (0x6124c + (x) * 0x1000)

Definition at line 414 of file tsi721.h.

#define TSI721_IBDMAC_PWE (   x)    (0x61254 + (x) * 0x1000)

Definition at line 424 of file tsi721.h.

#define TSI721_IBDMAC_PWE_ILL_DEC   0x00000200

Definition at line 428 of file tsi721.h.

#define TSI721_IBDMAC_PWE_ILL_FMT   0x00000400

Definition at line 427 of file tsi721.h.

#define TSI721_IBDMAC_PWE_IMP_SP   0x00000100

Definition at line 429 of file tsi721.h.

#define TSI721_IBDMAC_PWE_MASK   0x00001700

Definition at line 425 of file tsi721.h.

#define TSI721_IBDMAC_PWE_SRTO   0x00001000

Definition at line 426 of file tsi721.h.

#define TSI721_IBDMAC_STS (   x)    (0x61244 + (x) * 0x1000)

Definition at line 407 of file tsi721.h.

#define TSI721_IBDMAC_STS_MASK   0x007f0000

Definition at line 408 of file tsi721.h.

#define TSI721_IBSMAC_STS_ABORT   0x00400000

Definition at line 409 of file tsi721.h.

#define TSI721_IBSMAC_STS_CS   0x001f0000

Definition at line 411 of file tsi721.h.

#define TSI721_IBSMAC_STS_RUN   0x00200000

Definition at line 410 of file tsi721.h.

#define TSI721_IBWIN_LB (   x)    (0x29000 + (x) * 0x20)

Definition at line 159 of file tsi721.h.

#define TSI721_IBWIN_LB_BA   0xfffff000

Definition at line 160 of file tsi721.h.

#define TSI721_IBWIN_LB_WEN   0x00000001

Definition at line 161 of file tsi721.h.

#define TSI721_IBWIN_NUM   8

Definition at line 157 of file tsi721.h.

#define TSI721_IBWIN_SIZE (   size)    (__fls(size) - 12)

Definition at line 166 of file tsi721.h.

#define TSI721_IBWIN_SZ (   x)    (0x29008 + (x) * 0x20)

Definition at line 164 of file tsi721.h.

#define TSI721_IBWIN_SZ_SIZE   0x00001f00

Definition at line 165 of file tsi721.h.

#define TSI721_IBWIN_TLA (   x)    (0x2900c + (x) * 0x20)

Definition at line 168 of file tsi721.h.

#define TSI721_IBWIN_TLA_ADD   0xfffff000

Definition at line 169 of file tsi721.h.

#define TSI721_IBWIN_TUA (   x)    (0x29010 + (x) * 0x20)

Definition at line 170 of file tsi721.h.

#define TSI721_IBWIN_UB (   x)    (0x29004 + (x) * 0x20)

Definition at line 163 of file tsi721.h.

#define TSI721_IDB_ENTRY_SIZE   64

Definition at line 119 of file tsi721.h.

#define TSI721_IDQ_BASEL (   x)    (0x20014 + (x) * 0x1000)

Definition at line 138 of file tsi721.h.

#define TSI721_IDQ_BASEL_ADDR   0xffffffc0

Definition at line 139 of file tsi721.h.

#define TSI721_IDQ_BASEU (   x)    (0x20018 + (x) * 0x1000)

Definition at line 140 of file tsi721.h.

#define TSI721_IDQ_CTL (   x)    (0x20000 + (x) * 0x1000)

Definition at line 121 of file tsi721.h.

#define TSI721_IDQ_INIT   0x00000001

Definition at line 123 of file tsi721.h.

#define TSI721_IDQ_MASK (   x)    (0x20008 + (x) * 0x1000)

Definition at line 128 of file tsi721.h.

#define TSI721_IDQ_MASK_MASK   0xffff0000

Definition at line 129 of file tsi721.h.

#define TSI721_IDQ_MASK_PATT   0x0000ffff

Definition at line 130 of file tsi721.h.

#define TSI721_IDQ_RP (   x)    (0x2000c + (x) * 0x1000)

Definition at line 132 of file tsi721.h.

#define TSI721_IDQ_RP_PTR   0x0007ffff

Definition at line 133 of file tsi721.h.

#define TSI721_IDQ_RUN   0x00200000

Definition at line 126 of file tsi721.h.

#define TSI721_IDQ_SIZE (   x)    (0x2001c + (x) * 0x1000)

Definition at line 141 of file tsi721.h.

#define TSI721_IDQ_SIZE_MAX   (512 * 1024)

Definition at line 144 of file tsi721.h.

#define TSI721_IDQ_SIZE_MIN   512

Definition at line 143 of file tsi721.h.

#define TSI721_IDQ_SIZE_VAL (   size)    (__fls(size) - 4)

Definition at line 142 of file tsi721.h.

#define TSI721_IDQ_STS (   x)    (0x20004 + (x) * 0x1000)

Definition at line 125 of file tsi721.h.

#define TSI721_IDQ_SUSPEND   0x00000002

Definition at line 122 of file tsi721.h.

#define TSI721_IDQ_WP (   x)    (0x20010 + (x) * 0x1000)

Definition at line 135 of file tsi721.h.

#define TSI721_IDQ_WP_PTR   0x0007ffff

Definition at line 136 of file tsi721.h.

#define TSI721_IMD_BCOUNT   0x00000ff8

Definition at line 563 of file tsi721.h.

#define TSI721_IMD_CRF   0x00010000

Definition at line 556 of file tsi721.h.

#define TSI721_IMD_CS   0x78000000

Definition at line 568 of file tsi721.h.

#define TSI721_IMD_DEVID   0x0000ffff

Definition at line 555 of file tsi721.h.

#define TSI721_IMD_DTYPE   0xe0000000

Definition at line 559 of file tsi721.h.

#define TSI721_IMD_HO   0x80000000

Definition at line 569 of file tsi721.h.

#define TSI721_IMD_LETER   0x00030000

Definition at line 565 of file tsi721.h.

#define TSI721_IMD_MBOX   0x00c00000

Definition at line 567 of file tsi721.h.

#define TSI721_IMD_PRIO   0x00060000

Definition at line 557 of file tsi721.h.

#define TSI721_IMD_SSIZE   0x0000f000

Definition at line 564 of file tsi721.h.

#define TSI721_IMD_TT   0x00180000

Definition at line 558 of file tsi721.h.

#define TSI721_IMD_XMBOX   0x003c0000

Definition at line 566 of file tsi721.h.

#define TSI721_IMSG_CHNUM   TSI721_IMSG_MAXCH

Definition at line 305 of file tsi721.h.

#define TSI721_IMSG_MAXCH   8

Definition at line 304 of file tsi721.h.

#define TSI721_IMSGD_MIN_RING_SIZE   32

Definition at line 306 of file tsi721.h.

#define TSI721_IMSGD_RING_SIZE   512

Definition at line 307 of file tsi721.h.

#define TSI721_INT_BDMA_CHAN (   x)    (1 << (x))

Definition at line 196 of file tsi721.h.

#define TSI721_INT_BDMA_CHAN_M   0x000000ff

Definition at line 195 of file tsi721.h.

#define TSI721_INT_IMSG_CHAN (   x)    (1 << (16 + (x)))

Definition at line 192 of file tsi721.h.

#define TSI721_INT_IMSG_CHAN_M   0x00ff0000

Definition at line 191 of file tsi721.h.

#define TSI721_INT_OMSG_CHAN (   x)    (1 << (8 + (x)))

Definition at line 194 of file tsi721.h.

#define TSI721_INT_OMSG_CHAN_M   0x0000ff00

Definition at line 193 of file tsi721.h.

#define TSI721_INT_SR2PC_CHAN (   x)    (1 << (24 + (x)))

Definition at line 190 of file tsi721.h.

#define TSI721_INT_SR2PC_CHAN_M   0xff000000

Definition at line 189 of file tsi721.h.

#define TSI721_LUT_DATA0   0x41304

Definition at line 219 of file tsi721.h.

#define TSI721_LUT_DATA0_ADD   0xfffff000

Definition at line 220 of file tsi721.h.

#define TSI721_LUT_DATA0_MNTRD   0x00000200

Definition at line 223 of file tsi721.h.

#define TSI721_LUT_DATA0_MNTWR   0x00000002

Definition at line 228 of file tsi721.h.

#define TSI721_LUT_DATA0_NREAD   0x00000100

Definition at line 222 of file tsi721.h.

#define TSI721_LUT_DATA0_NWR   0x00000001

Definition at line 227 of file tsi721.h.

#define TSI721_LUT_DATA0_NWR_R   0x00000004

Definition at line 229 of file tsi721.h.

#define TSI721_LUT_DATA0_RDCRF   0x00000020

Definition at line 224 of file tsi721.h.

#define TSI721_LUT_DATA0_RDTYPE   0x00000f00

Definition at line 221 of file tsi721.h.

#define TSI721_LUT_DATA0_WRCRF   0x00000010

Definition at line 225 of file tsi721.h.

#define TSI721_LUT_DATA0_WRTYPE   0x0000000f

Definition at line 226 of file tsi721.h.

#define TSI721_LUT_DATA1   0x41308

Definition at line 231 of file tsi721.h.

#define TSI721_LUT_DATA2   0x4130c

Definition at line 233 of file tsi721.h.

#define TSI721_LUT_DATA2_ADD65   0x000c0000

Definition at line 235 of file tsi721.h.

#define TSI721_LUT_DATA2_DSTID   0x0000ffff

Definition at line 237 of file tsi721.h.

#define TSI721_LUT_DATA2_HC   0xff000000

Definition at line 234 of file tsi721.h.

#define TSI721_LUT_DATA2_TT   0x00030000

Definition at line 236 of file tsi721.h.

#define TSI721_MAINT_WIN   0 /* Window for outbound maintenance requests */

Definition at line 40 of file tsi721.h.

#define TSI721_MSG_BUFFER_SIZE   RIO_MAX_MSG_SIZE

Definition at line 302 of file tsi721.h.

#define TSI721_MSG_MAX_SIZE   RIO_MAX_MSG_SIZE

Definition at line 303 of file tsi721.h.

#define TSI721_MSIXPBA_OFFSET   0x2a000

Definition at line 72 of file tsi721.h.

#define TSI721_MSIXTBL_OFFSET   0x2c000

Definition at line 70 of file tsi721.h.

#define TSI721_OBDMAC_CTL (   x)    (0x61008 + (x) * 0x1000)

Definition at line 322 of file tsi721.h.

#define TSI721_OBDMAC_CTL_INIT   0x00000001

Definition at line 326 of file tsi721.h.

#define TSI721_OBDMAC_CTL_MASK   0x00000007

Definition at line 323 of file tsi721.h.

#define TSI721_OBDMAC_CTL_RETRY_THR   0x00000004

Definition at line 324 of file tsi721.h.

#define TSI721_OBDMAC_CTL_SUSPEND   0x00000002

Definition at line 325 of file tsi721.h.

#define TSI721_OBDMAC_DPTRH (   x)    (0x61024 + (x) * 0x1000)

Definition at line 352 of file tsi721.h.

#define TSI721_OBDMAC_DPTRH_MASK   0xffffffff

Definition at line 353 of file tsi721.h.

#define TSI721_OBDMAC_DPTRL (   x)    (0x61020 + (x) * 0x1000)

Definition at line 349 of file tsi721.h.

#define TSI721_OBDMAC_DPTRL_MASK   0xfffffff0

Definition at line 350 of file tsi721.h.

#define TSI721_OBDMAC_DRDCNT (   x)    (0x61004 + (x) * 0x1000)

Definition at line 320 of file tsi721.h.

#define TSI721_OBDMAC_DSBH (   x)    (0x61044 + (x) * 0x1000)

Definition at line 358 of file tsi721.h.

#define TSI721_OBDMAC_DSBH_MASK   0xffffffff

Definition at line 359 of file tsi721.h.

#define TSI721_OBDMAC_DSBL (   x)    (0x61040 + (x) * 0x1000)

Definition at line 355 of file tsi721.h.

#define TSI721_OBDMAC_DSBL_MASK   0xffffffc0

Definition at line 356 of file tsi721.h.

#define TSI721_OBDMAC_DSRP (   x)    (0x6104c + (x) * 0x1000)

Definition at line 364 of file tsi721.h.

#define TSI721_OBDMAC_DSRP_MASK   0x0007ffff

Definition at line 365 of file tsi721.h.

#define TSI721_OBDMAC_DSSZ (   x)    (0x61048 + (x) * 0x1000)

Definition at line 361 of file tsi721.h.

#define TSI721_OBDMAC_DSSZ_MASK   0x0000000f

Definition at line 362 of file tsi721.h.

#define TSI721_OBDMAC_DSWP (   x)    (0x61050 + (x) * 0x1000)

Definition at line 367 of file tsi721.h.

#define TSI721_OBDMAC_DSWP_MASK   0x0007ffff

Definition at line 368 of file tsi721.h.

#define TSI721_OBDMAC_DWRCNT (   x)    (0x61000 + (x) * 0x1000)

Definition at line 318 of file tsi721.h.

#define TSI721_OBDMAC_INT (   x)    (0x6100c + (x) * 0x1000)

Definition at line 328 of file tsi721.h.

#define TSI721_OBDMAC_INT_ALL   TSI721_OBDMAC_INT_MASK

Definition at line 337 of file tsi721.h.

#define TSI721_OBDMAC_INT_DONE   0x00000008

Definition at line 333 of file tsi721.h.

#define TSI721_OBDMAC_INT_ERROR   0x00000002

Definition at line 335 of file tsi721.h.

#define TSI721_OBDMAC_INT_IOF_DONE   0x00000001

Definition at line 336 of file tsi721.h.

#define TSI721_OBDMAC_INT_MASK   0x0000001F

Definition at line 331 of file tsi721.h.

#define TSI721_OBDMAC_INT_ST_FULL   0x00000010

Definition at line 332 of file tsi721.h.

#define TSI721_OBDMAC_INT_SUSPENDED   0x00000004

Definition at line 334 of file tsi721.h.

#define TSI721_OBDMAC_INTE (   x)    (0x61018 + (x) * 0x1000)

Definition at line 330 of file tsi721.h.

#define TSI721_OBDMAC_INTSET (   x)    (0x61010 + (x) * 0x1000)

Definition at line 329 of file tsi721.h.

#define TSI721_OBDMAC_PWE (   x)    (0x6101c + (x) * 0x1000)

Definition at line 345 of file tsi721.h.

#define TSI721_OBDMAC_PWE_ERROR_EN   0x00000002

Definition at line 347 of file tsi721.h.

#define TSI721_OBDMAC_PWE_MASK   0x00000002

Definition at line 346 of file tsi721.h.

#define TSI721_OBDMAC_STS (   x)    (0x61014 + (x) * 0x1000)

Definition at line 339 of file tsi721.h.

#define TSI721_OBDMAC_STS_ABORT   0x00400000

Definition at line 341 of file tsi721.h.

#define TSI721_OBDMAC_STS_CS   0x001f0000

Definition at line 343 of file tsi721.h.

#define TSI721_OBDMAC_STS_MASK   0x007f0000

Definition at line 340 of file tsi721.h.

#define TSI721_OBDMAC_STS_RUN   0x00200000

Definition at line 342 of file tsi721.h.

#define TSI721_OBWIN_NUM   TSI721_PC2SR_WINS

Definition at line 201 of file tsi721.h.

#define TSI721_OBWIN_SIZE (   size)    (__fls(size) - 15)

Definition at line 211 of file tsi721.h.

#define TSI721_OBWINLB (   x)    (0x40000 + (x) * 0x20)

Definition at line 203 of file tsi721.h.

#define TSI721_OBWINLB_BA   0xffff8000

Definition at line 204 of file tsi721.h.

#define TSI721_OBWINLB_WEN   0x00000001

Definition at line 205 of file tsi721.h.

#define TSI721_OBWINSZ (   x)    (0x40008 + (x) * 0x20)

Definition at line 209 of file tsi721.h.

#define TSI721_OBWINSZ_SIZE   0x00001f00

Definition at line 210 of file tsi721.h.

#define TSI721_OBWINUB (   x)    (0x40004 + (x) * 0x20)

Definition at line 207 of file tsi721.h.

#define TSI721_OMD_BCOUNT   0x00000ff8

Definition at line 598 of file tsi721.h.

#define TSI721_OMD_CRF   0x00010000

Definition at line 590 of file tsi721.h.

#define TSI721_OMD_DEVID   0x0000ffff

Definition at line 589 of file tsi721.h.

#define TSI721_OMD_DTYPE   0xe0000000

Definition at line 593 of file tsi721.h.

#define TSI721_OMD_IOF   0x08000000

Definition at line 592 of file tsi721.h.

#define TSI721_OMD_LETER   0x00030000

Definition at line 600 of file tsi721.h.

#define TSI721_OMD_MBOX   0x00c00000

Definition at line 602 of file tsi721.h.

#define TSI721_OMD_PRIO   0x00060000

Definition at line 591 of file tsi721.h.

#define TSI721_OMD_RSRVD   0x17f80000

Definition at line 594 of file tsi721.h.

#define TSI721_OMD_SSIZE   0x0000f000

Definition at line 599 of file tsi721.h.

#define TSI721_OMD_TT   0x0c000000

Definition at line 603 of file tsi721.h.

#define TSI721_OMD_XMBOX   0x003c0000

Definition at line 601 of file tsi721.h.

#define TSI721_OMSG_CHNUM   4 /* One channel per MBOX */

Definition at line 309 of file tsi721.h.

#define TSI721_OMSGD_MIN_RING_SIZE   32

Definition at line 310 of file tsi721.h.

#define TSI721_OMSGD_RING_SIZE   512

Definition at line 311 of file tsi721.h.

#define TSI721_PC2SR_BARS   2

Definition at line 37 of file tsi721.h.

#define TSI721_PC2SR_INTE   0x41310

Definition at line 239 of file tsi721.h.

#define TSI721_PC2SR_WINS   8

Definition at line 38 of file tsi721.h.

#define TSI721_PC2SR_ZONES   8

Definition at line 39 of file tsi721.h.

#define TSI721_PCIECFG_EPCTL   0x400

Definition at line 73 of file tsi721.h.

#define TSI721_PCIECFG_MSIXPBA   0x0a8

Definition at line 71 of file tsi721.h.

#define TSI721_PCIECFG_MSIXTBL   0x0a4

Definition at line 69 of file tsi721.h.

#define TSI721_REG_SPACE_SIZE   (512 * 1024) /* 512K */

Definition at line 45 of file tsi721.h.

#define TSI721_RETRY_GEN_CNT   0x6a100

Definition at line 468 of file tsi721.h.

#define TSI721_RETRY_GEN_CNT_MASK   0xffffffff

Definition at line 469 of file tsi721.h.

#define TSI721_RETRY_RX_CNT   0x6a104

Definition at line 471 of file tsi721.h.

#define TSI721_RETRY_RX_CNT_MASK   0xffffffff

Definition at line 472 of file tsi721.h.

#define TSI721_RIO_EM_DEV_INT_EN   0x10930

Definition at line 87 of file tsi721.h.

#define TSI721_RIO_EM_DEV_INT_EN_INT   0x00000001

Definition at line 88 of file tsi721.h.

#define TSI721_RIO_EM_INT_ENABLE   0x10914

Definition at line 84 of file tsi721.h.

#define TSI721_RIO_EM_INT_ENABLE_PW_RX   0x00010000

Definition at line 85 of file tsi721.h.

#define TSI721_RIO_EM_INT_STAT   0x10910

Definition at line 81 of file tsi721.h.

#define TSI721_RIO_EM_INT_STAT_PW_RX   0x00010000

Definition at line 82 of file tsi721.h.

#define TSI721_RIO_PW_CTL   0x10a04

Definition at line 94 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PW_TIMER   0xf0000000

Definition at line 95 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWC_CONT   0x00000000

Definition at line 102 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWC_MODE   0x01000000

Definition at line 101 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWC_REL   0x01000000

Definition at line 103 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWT_103   (1 << 28)

Definition at line 97 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWT_205   (1 << 29)

Definition at line 98 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWT_410   (1 << 30)

Definition at line 99 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWT_820   (1 << 31)

Definition at line 100 of file tsi721.h.

#define TSI721_RIO_PW_CTL_PWT_DIS   (0 << 28)

Definition at line 96 of file tsi721.h.

#define TSI721_RIO_PW_MSG_SIZE   16 /* Tsi721 saves only 16 bytes of PW msg */

Definition at line 61 of file tsi721.h.

#define TSI721_RIO_PW_RX_CAPT (   x)    (0x10a20 + (x)*4)

Definition at line 113 of file tsi721.h.

#define TSI721_RIO_PW_RX_STAT   0x10a10

Definition at line 105 of file tsi721.h.

#define TSI721_RIO_PW_RX_STAT_PW_DISC   0x00000002

Definition at line 110 of file tsi721.h.

#define TSI721_RIO_PW_RX_STAT_PW_SHORT   0x00000008

Definition at line 108 of file tsi721.h.

#define TSI721_RIO_PW_RX_STAT_PW_TRUNC   0x00000004

Definition at line 109 of file tsi721.h.

#define TSI721_RIO_PW_RX_STAT_PW_VAL   0x00000001

Definition at line 111 of file tsi721.h.

#define TSI721_RIO_PW_RX_STAT_WR_SIZE   0x0000f000

Definition at line 106 of file tsi721.h.

#define TSI721_RQRPTO   0x60010

Definition at line 370 of file tsi721.h.

#define TSI721_RQRPTO_MASK   0x00ffffff

Definition at line 371 of file tsi721.h.

#define TSI721_RQRPTO_VAL   400 /* Response TO value */

Definition at line 372 of file tsi721.h.

#define TSI721_SMSG_ECC_COR_LOG (   x)    (0x6a300 + (x) * 4)

Definition at line 474 of file tsi721.h.

#define TSI721_SMSG_ECC_COR_LOG_MASK   0x000000ff

Definition at line 475 of file tsi721.h.

#define TSI721_SMSG_ECC_LOG   0x6a014

Definition at line 463 of file tsi721.h.

#define TSI721_SMSG_ECC_LOG_ECC_COR_M   0x00000007

Definition at line 466 of file tsi721.h.

#define TSI721_SMSG_ECC_LOG_ECC_NCOR_M   0x00070000

Definition at line 465 of file tsi721.h.

#define TSI721_SMSG_ECC_LOG_MASK   0x00070007

Definition at line 464 of file tsi721.h.

#define TSI721_SMSG_ECC_NCOR (   x)    (0x6a340 + (x) * 4)

Definition at line 477 of file tsi721.h.

#define TSI721_SMSG_ECC_NCOR_MASK   0x000000ff

Definition at line 478 of file tsi721.h.

#define TSI721_SMSG_INT   0x6a008

Definition at line 454 of file tsi721.h.

#define TSI721_SMSG_INT_ECC_COR   0x00020000

Definition at line 459 of file tsi721.h.

#define TSI721_SMSG_INT_ECC_COR_CH   0x000000ff

Definition at line 461 of file tsi721.h.

#define TSI721_SMSG_INT_ECC_NCOR   0x00040000

Definition at line 458 of file tsi721.h.

#define TSI721_SMSG_INT_ECC_NCOR_CH   0x0000ff00

Definition at line 460 of file tsi721.h.

#define TSI721_SMSG_INT_MASK   0x0086ffff

Definition at line 456 of file tsi721.h.

#define TSI721_SMSG_INT_UNS_RSP   0x00800000

Definition at line 457 of file tsi721.h.

#define TSI721_SMSG_INTE   0x6a000

Definition at line 453 of file tsi721.h.

#define TSI721_SMSG_INTSET   0x6a010

Definition at line 455 of file tsi721.h.

#define TSI721_SMSG_PWE   0x6a004

Definition at line 451 of file tsi721.h.

#define TSI721_SR2PC_GEN_INT   0x29808

Definition at line 174 of file tsi721.h.

#define TSI721_SR2PC_GEN_INTE   0x29800

Definition at line 172 of file tsi721.h.

#define TSI721_SR2PC_PWE   0x29804

Definition at line 173 of file tsi721.h.

#define TSI721_SR_CHINT (   x)    (0x20040 + (x) * 0x1000)

Definition at line 146 of file tsi721.h.

#define TSI721_SR_CHINT_ALL   0x0000003f

Definition at line 155 of file tsi721.h.

#define TSI721_SR_CHINT_IDBQRCV   0x00000010

Definition at line 150 of file tsi721.h.

#define TSI721_SR_CHINT_ODBERR   0x00000001

Definition at line 154 of file tsi721.h.

#define TSI721_SR_CHINT_ODBOK   0x00000020

Definition at line 149 of file tsi721.h.

#define TSI721_SR_CHINT_ODBRTRY   0x00000002

Definition at line 153 of file tsi721.h.

#define TSI721_SR_CHINT_ODBTO   0x00000004

Definition at line 152 of file tsi721.h.

#define TSI721_SR_CHINT_SUSP   0x00000008

Definition at line 151 of file tsi721.h.

#define TSI721_SR_CHINTE (   x)    (0x20044 + (x) * 0x1000)

Definition at line 147 of file tsi721.h.

#define TSI721_SR_CHINTSET (   x)    (0x20048 + (x) * 0x1000)

Definition at line 148 of file tsi721.h.

#define TSI721_SRIO_MAXCH   8

Definition at line 55 of file tsi721.h.

#define TSI721_ZONE_SEL   0x41300

Definition at line 213 of file tsi721.h.

#define TSI721_ZONE_SEL_GO   0x00010000

Definition at line 215 of file tsi721.h.

#define TSI721_ZONE_SEL_RD_WRB   0x00020000

Definition at line 214 of file tsi721.h.

#define TSI721_ZONE_SEL_WIN   0x00000038

Definition at line 216 of file tsi721.h.

#define TSI721_ZONE_SEL_ZONE   0x00000007

Definition at line 217 of file tsi721.h.

#define TSI_RIO_PW_RX_STAT_WDPTR   0x00000100

Definition at line 107 of file tsi721.h.

Enumeration Type Documentation

enum dma_dtype
Enumerator:
DTYPE1 
DTYPE2 
DTYPE3 
DTYPE4 
DTYPE5 
DTYPE6 

Definition at line 603 of file tsi721.h.

enum dma_rtype
Enumerator:
NREAD 
LAST_NWRITE_R 
ALL_NWRITE 
ALL_NWRITE_R 
MAINT_RD 
MAINT_WR 

Definition at line 612 of file tsi721.h.

Enumerator:
TSI721_USING_MSI 
TSI721_USING_MSIX 
TSI721_IMSGID_SET 

Definition at line 736 of file tsi721.h.

Enumerator:
SMSG_INT_NONE 
SMSG_INT_ECC_COR_CH 
SMSG_INT_ECC_NCOR_CH 
SMSG_INT_ECC_COR 
SMSG_INT_ECC_NCOR 
SMSG_INT_UNS_RSP 
SMSG_INT_ALL 

Definition at line 633 of file tsi721.h.

Function Documentation

struct tsi721_dma_desc __aligned ( 32  )
struct tsi721_imsg_desc __aligned ( 64  )
struct tsi721_omsg_desc __aligned ( 16  )

Variable Documentation

union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
enum dma_dtype __aligned
__le32 bcount

Definition at line 534 of file tsi721.h.

__le32 bufptr_hi

Definition at line 557 of file tsi721.h.

__le32 bufptr_lo

Definition at line 556 of file tsi721.h.

struct { ... } da32
__le64 da64

Definition at line 602 of file tsi721.h.

Definition at line 561 of file tsi721.h.

__le64 desc_sts[8]

Definition at line 591 of file tsi721.h.

__le32 hi

Definition at line 605 of file tsi721.h.

__le32 lo

Definition at line 604 of file tsi721.h.

__le32 msg_info

Definition at line 561 of file tsi721.h.

__le32 next_hi

Definition at line 551 of file tsi721.h.

__le32 next_lo

Definition at line 543 of file tsi721.h.

__le32 raddr_hi

Definition at line 550 of file tsi721.h.

__le32 raddr_lo

Definition at line 542 of file tsi721.h.

u32 reserved[12]

Definition at line 562 of file tsi721.h.

__le32 s_dist

Definition at line 558 of file tsi721.h.

__le32 s_size

Definition at line 559 of file tsi721.h.

union { ... } stat[8]
struct { ... } t1
__le32 type_id

Definition at line 525 of file tsi721.h.