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

Go to the source code of this file.

Data Structures

struct  ptd
 
struct  isp116x
 
struct  isp116x_ep
 

Macros

#define MAX_LOAD_LIMIT   850
 
#define MAX_TRANSFER_SIZE_FULLSPEED   832
 
#define MAX_TRANSFER_SIZE_LOWSPEED   64
 
#define BYTE_TIME_FULLSPEED   1
 
#define BYTE_TIME_LOWSPEED   20
 
#define ISP116x_BUF_SIZE   4096
 
#define ISP116x_ITL_BUFSIZE   0
 
#define ISP116x_ATL_BUFSIZE   ((ISP116x_BUF_SIZE) - 2*(ISP116x_ITL_BUFSIZE))
 
#define ISP116x_WRITE_OFFSET   0x80
 
#define HCREVISION   0x00
 
#define HCCONTROL   0x01
 
#define HCCONTROL_HCFS
 
#define HCCONTROL_USB_RESET   (0 << 6)
 
#define HCCONTROL_USB_RESUME   (1 << 6)
 
#define HCCONTROL_USB_OPER   (2 << 6)
 
#define HCCONTROL_USB_SUSPEND   (3 << 6)
 
#define HCCONTROL_RWC   (1 << 9) /* remote wakeup connected */
 
#define HCCONTROL_RWE   (1 << 10) /* remote wakeup enable */
 
#define HCCMDSTAT   0x02
 
#define HCCMDSTAT_HCR   (1 << 0) /* host controller reset */
 
#define HCCMDSTAT_SOC   (3 << 16) /* scheduling overrun count */
 
#define HCINTSTAT   0x03
 
#define HCINT_SO   (1 << 0) /* scheduling overrun */
 
#define HCINT_WDH   (1 << 1) /* writeback of done_head */
 
#define HCINT_SF   (1 << 2) /* start frame */
 
#define HCINT_RD   (1 << 3) /* resume detect */
 
#define HCINT_UE   (1 << 4) /* unrecoverable error */
 
#define HCINT_FNO   (1 << 5) /* frame number overflow */
 
#define HCINT_RHSC   (1 << 6) /* root hub status change */
 
#define HCINT_OC   (1 << 30) /* ownership change */
 
#define HCINT_MIE   (1 << 31) /* master interrupt enable */
 
#define HCINTENB   0x04
 
#define HCINTDIS   0x05
 
#define HCFMINTVL   0x0d
 
#define HCFMREM   0x0e
 
#define HCFMNUM   0x0f
 
#define HCLSTHRESH   0x11
 
#define HCRHDESCA   0x12
 
#define RH_A_NDP   (0x3 << 0) /* # downstream ports */
 
#define RH_A_PSM   (1 << 8) /* power switching mode */
 
#define RH_A_NPS   (1 << 9) /* no power switching */
 
#define RH_A_DT   (1 << 10) /* device type (mbz) */
 
#define RH_A_OCPM
 
#define RH_A_NOCP   (1 << 12) /* no overcurrent protection */
 
#define RH_A_POTPGT
 
#define HCRHDESCB   0x13
 
#define RH_B_DR   (0xffff << 0) /* device removable flags */
 
#define RH_B_PPCM   (0xffff << 16) /* port power control mask */
 
#define HCRHSTATUS   0x14
 
#define RH_HS_LPS   (1 << 0) /* local power status */
 
#define RH_HS_OCI   (1 << 1) /* over current indicator */
 
#define RH_HS_DRWE
 
#define RH_HS_LPSC   (1 << 16) /* local power status change */
 
#define RH_HS_OCIC
 
#define RH_HS_CRWE
 
#define HCRHPORT1   0x15
 
#define RH_PS_CCS   (1 << 0) /* current connect status */
 
#define RH_PS_PES   (1 << 1) /* port enable status */
 
#define RH_PS_PSS   (1 << 2) /* port suspend status */
 
#define RH_PS_POCI
 
#define RH_PS_PRS   (1 << 4) /* port reset status */
 
#define RH_PS_PPS   (1 << 8) /* port power status */
 
#define RH_PS_LSDA   (1 << 9) /* low speed device attached */
 
#define RH_PS_CSC   (1 << 16) /* connect status change */
 
#define RH_PS_PESC   (1 << 17) /* port enable status change */
 
#define RH_PS_PSSC
 
#define RH_PS_OCIC
 
#define RH_PS_PRSC   (1 << 20) /* port reset status change */
 
#define HCRHPORT_CLRMASK   (0x1f << 16)
 
#define HCRHPORT2   0x16
 
#define HCHWCFG   0x20
 
#define HCHWCFG_15KRSEL   (1 << 12)
 
#define HCHWCFG_CLKNOTSTOP   (1 << 11)
 
#define HCHWCFG_ANALOG_OC   (1 << 10)
 
#define HCHWCFG_DACK_MODE   (1 << 8)
 
#define HCHWCFG_EOT_POL   (1 << 7)
 
#define HCHWCFG_DACK_POL   (1 << 6)
 
#define HCHWCFG_DREQ_POL   (1 << 5)
 
#define HCHWCFG_DBWIDTH_MASK   (0x03 << 3)
 
#define HCHWCFG_DBWIDTH(n)   (((n) << 3) & HCHWCFG_DBWIDTH_MASK)
 
#define HCHWCFG_INT_POL   (1 << 2)
 
#define HCHWCFG_INT_TRIGGER   (1 << 1)
 
#define HCHWCFG_INT_ENABLE   (1 << 0)
 
#define HCDMACFG   0x21
 
#define HCDMACFG_BURST_LEN_MASK   (0x03 << 5)
 
#define HCDMACFG_BURST_LEN(n)   (((n) << 5) & HCDMACFG_BURST_LEN_MASK)
 
#define HCDMACFG_BURST_LEN_1   HCDMACFG_BURST_LEN(0)
 
#define HCDMACFG_BURST_LEN_4   HCDMACFG_BURST_LEN(1)
 
#define HCDMACFG_BURST_LEN_8   HCDMACFG_BURST_LEN(2)
 
#define HCDMACFG_DMA_ENABLE   (1 << 4)
 
#define HCDMACFG_BUF_TYPE_MASK   (0x07 << 1)
 
#define HCDMACFG_CTR_SEL   (1 << 2)
 
#define HCDMACFG_ITLATL_SEL   (1 << 1)
 
#define HCDMACFG_DMA_RW_SELECT   (1 << 0)
 
#define HCXFERCTR   0x22
 
#define HCuPINT   0x24
 
#define HCuPINT_SOF   (1 << 0)
 
#define HCuPINT_ATL   (1 << 1)
 
#define HCuPINT_AIIEOT   (1 << 2)
 
#define HCuPINT_OPR   (1 << 4)
 
#define HCuPINT_SUSP   (1 << 5)
 
#define HCuPINT_CLKRDY   (1 << 6)
 
#define HCuPINTENB   0x25
 
#define HCCHIPID   0x27
 
#define HCCHIPID_MASK   0xff00
 
#define HCCHIPID_MAGIC   0x6100
 
#define HCSCRATCH   0x28
 
#define HCSWRES   0x29
 
#define HCSWRES_MAGIC   0x00f6
 
#define HCITLBUFLEN   0x2a
 
#define HCATLBUFLEN   0x2b
 
#define HCBUFSTAT   0x2c
 
#define HCBUFSTAT_ITL0_FULL   (1 << 0)
 
#define HCBUFSTAT_ITL1_FULL   (1 << 1)
 
#define HCBUFSTAT_ATL_FULL   (1 << 2)
 
#define HCBUFSTAT_ITL0_DONE   (1 << 3)
 
#define HCBUFSTAT_ITL1_DONE   (1 << 4)
 
#define HCBUFSTAT_ATL_DONE   (1 << 5)
 
#define HCRDITL0LEN   0x2d
 
#define HCRDITL1LEN   0x2e
 
#define HCITLPORT   0x40
 
#define HCATLPORT   0x41
 
#define PTD_COUNT_MSK   (0x3ff << 0)
 
#define PTD_TOGGLE_MSK   (1 << 10)
 
#define PTD_ACTIVE_MSK   (1 << 11)
 
#define PTD_CC_MSK   (0xf << 12)
 
#define PTD_MPS_MSK   (0x3ff << 0)
 
#define PTD_SPD_MSK   (1 << 10)
 
#define PTD_LAST_MSK   (1 << 11)
 
#define PTD_EP_MSK   (0xf << 12)
 
#define PTD_LEN_MSK   (0x3ff << 0)
 
#define PTD_DIR_MSK   (3 << 10)
 
#define PTD_DIR_SETUP   (0)
 
#define PTD_DIR_OUT   (1)
 
#define PTD_DIR_IN   (2)
 
#define PTD_B5_5_MSK   (1 << 13)
 
#define PTD_FA_MSK   (0x7f << 0)
 
#define PTD_FMT_MSK   (1 << 7)
 
#define PTD_GET_COUNT(p)   (((p)->count & PTD_COUNT_MSK) >> 0)
 
#define PTD_COUNT(v)   (((v) << 0) & PTD_COUNT_MSK)
 
#define PTD_GET_TOGGLE(p)   (((p)->count & PTD_TOGGLE_MSK) >> 10)
 
#define PTD_TOGGLE(v)   (((v) << 10) & PTD_TOGGLE_MSK)
 
#define PTD_GET_ACTIVE(p)   (((p)->count & PTD_ACTIVE_MSK) >> 11)
 
#define PTD_ACTIVE(v)   (((v) << 11) & PTD_ACTIVE_MSK)
 
#define PTD_GET_CC(p)   (((p)->count & PTD_CC_MSK) >> 12)
 
#define PTD_CC(v)   (((v) << 12) & PTD_CC_MSK)
 
#define PTD_GET_MPS(p)   (((p)->mps & PTD_MPS_MSK) >> 0)
 
#define PTD_MPS(v)   (((v) << 0) & PTD_MPS_MSK)
 
#define PTD_GET_SPD(p)   (((p)->mps & PTD_SPD_MSK) >> 10)
 
#define PTD_SPD(v)   (((v) << 10) & PTD_SPD_MSK)
 
#define PTD_GET_LAST(p)   (((p)->mps & PTD_LAST_MSK) >> 11)
 
#define PTD_LAST(v)   (((v) << 11) & PTD_LAST_MSK)
 
#define PTD_GET_EP(p)   (((p)->mps & PTD_EP_MSK) >> 12)
 
#define PTD_EP(v)   (((v) << 12) & PTD_EP_MSK)
 
#define PTD_GET_LEN(p)   (((p)->len & PTD_LEN_MSK) >> 0)
 
#define PTD_LEN(v)   (((v) << 0) & PTD_LEN_MSK)
 
#define PTD_GET_DIR(p)   (((p)->len & PTD_DIR_MSK) >> 10)
 
#define PTD_DIR(v)   (((v) << 10) & PTD_DIR_MSK)
 
#define PTD_GET_B5_5(p)   (((p)->len & PTD_B5_5_MSK) >> 13)
 
#define PTD_B5_5(v)   (((v) << 13) & PTD_B5_5_MSK)
 
#define PTD_GET_FA(p)   (((p)->faddr & PTD_FA_MSK) >> 0)
 
#define PTD_FA(v)   (((v) << 0) & PTD_FA_MSK)
 
#define PTD_GET_FMT(p)   (((p)->faddr & PTD_FMT_MSK) >> 7)
 
#define PTD_FMT(v)   (((v) << 7) & PTD_FMT_MSK)
 
#define TD_CC_NOERROR   0x00
 
#define TD_CC_CRC   0x01
 
#define TD_CC_BITSTUFFING   0x02
 
#define TD_CC_DATATOGGLEM   0x03
 
#define TD_CC_STALL   0x04
 
#define TD_DEVNOTRESP   0x05
 
#define TD_PIDCHECKFAIL   0x06
 
#define TD_UNEXPECTEDPID   0x07
 
#define TD_DATAOVERRUN   0x08
 
#define TD_DATAUNDERRUN   0x09
 
#define TD_BUFFEROVERRUN   0x0C
 
#define TD_BUFFERUNDERRUN   0x0D
 
#define TD_NOTACCESSED   0x0F
 
#define LOG2_PERIODIC_SIZE   5 /* arbitrary; this matches OHCI */
 
#define PERIODIC_SIZE   (1 << LOG2_PERIODIC_SIZE)
 
#define DBG(stuff...)   do{}while(0)
 
#define VDBG(stuff...)   do{}while(0)
 
#define ERR(stuff...)   printk(KERN_ERR "116x: " stuff)
 
#define WARNING(stuff...)   printk(KERN_WARNING "116x: " stuff)
 
#define INFO(stuff...)   printk(KERN_INFO "116x: " stuff)
 
#define isp116x_delay(h, d)   do{}while(0)
 
#define isp116x_check_platform_delay(h)   0
 
#define IRQ_TEST()   do{}while(0)
 
#define isp116x_show_reg_log(d, r, s)
 
#define isp116x_show_reg_seq(d, r, s)
 
#define isp116x_show_regs(d, type, s)
 
#define urb_dbg(urb, msg)   do{}while(0)
 
#define dump_ptd(ptd)   do{}while(0)
 
#define dump_ptd_in_data(ptd, buf)   do{}while(0)
 
#define dump_ptd_out_data(ptd, buf)   do{}while(0)
 

Functions

struct ptd __attribute__ ((packed, aligned(2)))
 

Variables

u16 count
 
u16 mps
 
u16 len
 
u16 faddr
 
struct isp116x __attribute__
 

Macro Definition Documentation

#define BYTE_TIME_FULLSPEED   1

Definition at line 26 of file isp116x.h.

#define BYTE_TIME_LOWSPEED   20

Definition at line 27 of file isp116x.h.

#define DBG (   stuff...)    do{}while(0)

Definition at line 322 of file isp116x.h.

#define dump_ptd (   ptd)    do{}while(0)

Definition at line 593 of file isp116x.h.

#define dump_ptd_in_data (   ptd,
  buf 
)    do{}while(0)

Definition at line 594 of file isp116x.h.

#define dump_ptd_out_data (   ptd,
  buf 
)    do{}while(0)

Definition at line 595 of file isp116x.h.

#define ERR (   stuff...)    printk(KERN_ERR "116x: " stuff)

Definition at line 331 of file isp116x.h.

#define HCATLBUFLEN   0x2b

Definition at line 138 of file isp116x.h.

#define HCATLPORT   0x41

Definition at line 149 of file isp116x.h.

#define HCBUFSTAT   0x2c

Definition at line 139 of file isp116x.h.

#define HCBUFSTAT_ATL_DONE   (1 << 5)

Definition at line 145 of file isp116x.h.

#define HCBUFSTAT_ATL_FULL   (1 << 2)

Definition at line 142 of file isp116x.h.

#define HCBUFSTAT_ITL0_DONE   (1 << 3)

Definition at line 143 of file isp116x.h.

#define HCBUFSTAT_ITL0_FULL   (1 << 0)

Definition at line 140 of file isp116x.h.

#define HCBUFSTAT_ITL1_DONE   (1 << 4)

Definition at line 144 of file isp116x.h.

#define HCBUFSTAT_ITL1_FULL   (1 << 1)

Definition at line 141 of file isp116x.h.

#define HCCHIPID   0x27

Definition at line 131 of file isp116x.h.

#define HCCHIPID_MAGIC   0x6100

Definition at line 133 of file isp116x.h.

#define HCCHIPID_MASK   0xff00

Definition at line 132 of file isp116x.h.

#define HCCMDSTAT   0x02

Definition at line 46 of file isp116x.h.

#define HCCMDSTAT_HCR   (1 << 0) /* host controller reset */

Definition at line 47 of file isp116x.h.

#define HCCMDSTAT_SOC   (3 << 16) /* scheduling overrun count */

Definition at line 48 of file isp116x.h.

#define HCCONTROL   0x01

Definition at line 38 of file isp116x.h.

#define HCCONTROL_HCFS
Value:
(3 << 6) /* host controller
functional state */

Definition at line 39 of file isp116x.h.

#define HCCONTROL_RWC   (1 << 9) /* remote wakeup connected */

Definition at line 44 of file isp116x.h.

#define HCCONTROL_RWE   (1 << 10) /* remote wakeup enable */

Definition at line 45 of file isp116x.h.

#define HCCONTROL_USB_OPER   (2 << 6)

Definition at line 42 of file isp116x.h.

#define HCCONTROL_USB_RESET   (0 << 6)

Definition at line 40 of file isp116x.h.

#define HCCONTROL_USB_RESUME   (1 << 6)

Definition at line 41 of file isp116x.h.

#define HCCONTROL_USB_SUSPEND   (3 << 6)

Definition at line 43 of file isp116x.h.

#define HCDMACFG   0x21

Definition at line 111 of file isp116x.h.

#define HCDMACFG_BUF_TYPE_MASK   (0x07 << 1)

Definition at line 118 of file isp116x.h.

#define HCDMACFG_BURST_LEN (   n)    (((n) << 5) & HCDMACFG_BURST_LEN_MASK)

Definition at line 113 of file isp116x.h.

#define HCDMACFG_BURST_LEN_1   HCDMACFG_BURST_LEN(0)

Definition at line 114 of file isp116x.h.

#define HCDMACFG_BURST_LEN_4   HCDMACFG_BURST_LEN(1)

Definition at line 115 of file isp116x.h.

#define HCDMACFG_BURST_LEN_8   HCDMACFG_BURST_LEN(2)

Definition at line 116 of file isp116x.h.

#define HCDMACFG_BURST_LEN_MASK   (0x03 << 5)

Definition at line 112 of file isp116x.h.

#define HCDMACFG_CTR_SEL   (1 << 2)

Definition at line 119 of file isp116x.h.

#define HCDMACFG_DMA_ENABLE   (1 << 4)

Definition at line 117 of file isp116x.h.

#define HCDMACFG_DMA_RW_SELECT   (1 << 0)

Definition at line 121 of file isp116x.h.

#define HCDMACFG_ITLATL_SEL   (1 << 1)

Definition at line 120 of file isp116x.h.

#define HCFMINTVL   0x0d

Definition at line 61 of file isp116x.h.

#define HCFMNUM   0x0f

Definition at line 63 of file isp116x.h.

#define HCFMREM   0x0e

Definition at line 62 of file isp116x.h.

#define HCHWCFG   0x20

Definition at line 98 of file isp116x.h.

#define HCHWCFG_15KRSEL   (1 << 12)

Definition at line 99 of file isp116x.h.

#define HCHWCFG_ANALOG_OC   (1 << 10)

Definition at line 101 of file isp116x.h.

#define HCHWCFG_CLKNOTSTOP   (1 << 11)

Definition at line 100 of file isp116x.h.

#define HCHWCFG_DACK_MODE   (1 << 8)

Definition at line 102 of file isp116x.h.

#define HCHWCFG_DACK_POL   (1 << 6)

Definition at line 104 of file isp116x.h.

#define HCHWCFG_DBWIDTH (   n)    (((n) << 3) & HCHWCFG_DBWIDTH_MASK)

Definition at line 107 of file isp116x.h.

#define HCHWCFG_DBWIDTH_MASK   (0x03 << 3)

Definition at line 106 of file isp116x.h.

#define HCHWCFG_DREQ_POL   (1 << 5)

Definition at line 105 of file isp116x.h.

#define HCHWCFG_EOT_POL   (1 << 7)

Definition at line 103 of file isp116x.h.

#define HCHWCFG_INT_ENABLE   (1 << 0)

Definition at line 110 of file isp116x.h.

#define HCHWCFG_INT_POL   (1 << 2)

Definition at line 108 of file isp116x.h.

#define HCHWCFG_INT_TRIGGER   (1 << 1)

Definition at line 109 of file isp116x.h.

#define HCINT_FNO   (1 << 5) /* frame number overflow */

Definition at line 55 of file isp116x.h.

#define HCINT_MIE   (1 << 31) /* master interrupt enable */

Definition at line 58 of file isp116x.h.

#define HCINT_OC   (1 << 30) /* ownership change */

Definition at line 57 of file isp116x.h.

#define HCINT_RD   (1 << 3) /* resume detect */

Definition at line 53 of file isp116x.h.

#define HCINT_RHSC   (1 << 6) /* root hub status change */

Definition at line 56 of file isp116x.h.

#define HCINT_SF   (1 << 2) /* start frame */

Definition at line 52 of file isp116x.h.

#define HCINT_SO   (1 << 0) /* scheduling overrun */

Definition at line 50 of file isp116x.h.

#define HCINT_UE   (1 << 4) /* unrecoverable error */

Definition at line 54 of file isp116x.h.

#define HCINT_WDH   (1 << 1) /* writeback of done_head */

Definition at line 51 of file isp116x.h.

#define HCINTDIS   0x05

Definition at line 60 of file isp116x.h.

#define HCINTENB   0x04

Definition at line 59 of file isp116x.h.

#define HCINTSTAT   0x03

Definition at line 49 of file isp116x.h.

#define HCITLBUFLEN   0x2a

Definition at line 137 of file isp116x.h.

#define HCITLPORT   0x40

Definition at line 148 of file isp116x.h.

#define HCLSTHRESH   0x11

Definition at line 64 of file isp116x.h.

#define HCRDITL0LEN   0x2d

Definition at line 146 of file isp116x.h.

#define HCRDITL1LEN   0x2e

Definition at line 147 of file isp116x.h.

#define HCREVISION   0x00

Definition at line 37 of file isp116x.h.

#define HCRHDESCA   0x12

Definition at line 65 of file isp116x.h.

#define HCRHDESCB   0x13

Definition at line 73 of file isp116x.h.

#define HCRHPORT1   0x15

Definition at line 83 of file isp116x.h.

#define HCRHPORT2   0x16

Definition at line 97 of file isp116x.h.

#define HCRHPORT_CLRMASK   (0x1f << 16)

Definition at line 96 of file isp116x.h.

#define HCRHSTATUS   0x14

Definition at line 76 of file isp116x.h.

#define HCSCRATCH   0x28

Definition at line 134 of file isp116x.h.

#define HCSWRES   0x29

Definition at line 135 of file isp116x.h.

#define HCSWRES_MAGIC   0x00f6

Definition at line 136 of file isp116x.h.

#define HCuPINT   0x24

Definition at line 123 of file isp116x.h.

#define HCuPINT_AIIEOT   (1 << 2)

Definition at line 126 of file isp116x.h.

#define HCuPINT_ATL   (1 << 1)

Definition at line 125 of file isp116x.h.

#define HCuPINT_CLKRDY   (1 << 6)

Definition at line 129 of file isp116x.h.

#define HCuPINT_OPR   (1 << 4)

Definition at line 127 of file isp116x.h.

#define HCuPINT_SOF   (1 << 0)

Definition at line 124 of file isp116x.h.

#define HCuPINT_SUSP   (1 << 5)

Definition at line 128 of file isp116x.h.

#define HCuPINTENB   0x25

Definition at line 130 of file isp116x.h.

#define HCXFERCTR   0x22

Definition at line 122 of file isp116x.h.

#define INFO (   stuff...)    printk(KERN_INFO "116x: " stuff)

Definition at line 333 of file isp116x.h.

#define IRQ_TEST ( )    do{}while(0)

Definition at line 355 of file isp116x.h.

#define ISP116x_ATL_BUFSIZE   ((ISP116x_BUF_SIZE) - 2*(ISP116x_ITL_BUFSIZE))

Definition at line 32 of file isp116x.h.

#define ISP116x_BUF_SIZE   4096

Definition at line 30 of file isp116x.h.

#define isp116x_check_platform_delay (   h)    0

Definition at line 349 of file isp116x.h.

#define isp116x_delay (   h,
  d 
)    do{}while(0)

Definition at line 348 of file isp116x.h.

#define ISP116x_ITL_BUFSIZE   0

Definition at line 31 of file isp116x.h.

#define isp116x_show_reg_log (   d,
  r,
  s 
)
Value:
{ \
if ((r) < 0x20) { \
DBG("%-12s[%02x]: %08x\n", #r, \
r, isp116x_read_reg32(d, r)); \
} else { \
DBG("%-12s[%02x]: %04x\n", #r, \
r, isp116x_read_reg16(d, r)); \
} \
}

Definition at line 443 of file isp116x.h.

#define isp116x_show_reg_seq (   d,
  r,
  s 
)
Value:
{ \
if ((r) < 0x20) { \
seq_printf(s, "%-12s[%02x]: %08x\n", #r, \
r, isp116x_read_reg32(d, r)); \
} else { \
seq_printf(s, "%-12s[%02x]: %04x\n", #r, \
r, isp116x_read_reg16(d, r)); \
} \
}

Definition at line 452 of file isp116x.h.

#define isp116x_show_regs (   d,
  type,
  s 
)
Value:
{ \
isp116x_show_reg_##type(d, HCREVISION, s); \
isp116x_show_reg_##type(d, HCCONTROL, s); \
isp116x_show_reg_##type(d, HCCMDSTAT, s); \
isp116x_show_reg_##type(d, HCINTSTAT, s); \
isp116x_show_reg_##type(d, HCINTENB, s); \
isp116x_show_reg_##type(d, HCFMINTVL, s); \
isp116x_show_reg_##type(d, HCFMREM, s); \
isp116x_show_reg_##type(d, HCFMNUM, s); \
isp116x_show_reg_##type(d, HCLSTHRESH, s); \
isp116x_show_reg_##type(d, HCRHDESCA, s); \
isp116x_show_reg_##type(d, HCRHDESCB, s); \
isp116x_show_reg_##type(d, HCRHSTATUS, s); \
isp116x_show_reg_##type(d, HCRHPORT1, s); \
isp116x_show_reg_##type(d, HCRHPORT2, s); \
isp116x_show_reg_##type(d, HCHWCFG, s); \
isp116x_show_reg_##type(d, HCDMACFG, s); \
isp116x_show_reg_##type(d, HCXFERCTR, s); \
isp116x_show_reg_##type(d, HCuPINT, s); \
isp116x_show_reg_##type(d, HCuPINTENB, s); \
isp116x_show_reg_##type(d, HCCHIPID, s); \
isp116x_show_reg_##type(d, HCSCRATCH, s); \
isp116x_show_reg_##type(d, HCITLBUFLEN, s); \
isp116x_show_reg_##type(d, HCATLBUFLEN, s); \
isp116x_show_reg_##type(d, HCBUFSTAT, s); \
isp116x_show_reg_##type(d, HCRDITL0LEN, s); \
isp116x_show_reg_##type(d, HCRDITL1LEN, s); \
}

Definition at line 462 of file isp116x.h.

#define ISP116x_WRITE_OFFSET   0x80

Definition at line 34 of file isp116x.h.

#define LOG2_PERIODIC_SIZE   5 /* arbitrary; this matches OHCI */

Definition at line 242 of file isp116x.h.

#define MAX_LOAD_LIMIT   850

Definition at line 12 of file isp116x.h.

#define MAX_TRANSFER_SIZE_FULLSPEED   832

Definition at line 17 of file isp116x.h.

#define MAX_TRANSFER_SIZE_LOWSPEED   64

Definition at line 22 of file isp116x.h.

#define PERIODIC_SIZE   (1 << LOG2_PERIODIC_SIZE)

Definition at line 243 of file isp116x.h.

#define PTD_ACTIVE (   v)    (((v) << 11) & PTD_ACTIVE_MSK)

Definition at line 181 of file isp116x.h.

#define PTD_ACTIVE_MSK   (1 << 11)

Definition at line 177 of file isp116x.h.

#define PTD_B5_5 (   v)    (((v) << 13) & PTD_B5_5_MSK)

Definition at line 197 of file isp116x.h.

#define PTD_B5_5_MSK   (1 << 13)

Definition at line 190 of file isp116x.h.

#define PTD_CC (   v)    (((v) << 12) & PTD_CC_MSK)

Definition at line 183 of file isp116x.h.

#define PTD_CC_MSK   (0xf << 12)

Definition at line 178 of file isp116x.h.

#define PTD_COUNT (   v)    (((v) << 0) & PTD_COUNT_MSK)

Definition at line 177 of file isp116x.h.

#define PTD_COUNT_MSK   (0x3ff << 0)

Definition at line 175 of file isp116x.h.

#define PTD_DIR (   v)    (((v) << 10) & PTD_DIR_MSK)

Definition at line 195 of file isp116x.h.

#define PTD_DIR_IN   (2)

Definition at line 189 of file isp116x.h.

#define PTD_DIR_MSK   (3 << 10)

Definition at line 186 of file isp116x.h.

#define PTD_DIR_OUT   (1)

Definition at line 188 of file isp116x.h.

#define PTD_DIR_SETUP   (0)

Definition at line 187 of file isp116x.h.

#define PTD_EP (   v)    (((v) << 12) & PTD_EP_MSK)

Definition at line 191 of file isp116x.h.

#define PTD_EP_MSK   (0xf << 12)

Definition at line 183 of file isp116x.h.

#define PTD_FA (   v)    (((v) << 0) & PTD_FA_MSK)

Definition at line 199 of file isp116x.h.

#define PTD_FA_MSK   (0x7f << 0)

Definition at line 192 of file isp116x.h.

#define PTD_FMT (   v)    (((v) << 7) & PTD_FMT_MSK)

Definition at line 201 of file isp116x.h.

#define PTD_FMT_MSK   (1 << 7)

Definition at line 193 of file isp116x.h.

#define PTD_GET_ACTIVE (   p)    (((p)->count & PTD_ACTIVE_MSK) >> 11)

Definition at line 180 of file isp116x.h.

#define PTD_GET_B5_5 (   p)    (((p)->len & PTD_B5_5_MSK) >> 13)

Definition at line 196 of file isp116x.h.

#define PTD_GET_CC (   p)    (((p)->count & PTD_CC_MSK) >> 12)

Definition at line 182 of file isp116x.h.

#define PTD_GET_COUNT (   p)    (((p)->count & PTD_COUNT_MSK) >> 0)

Definition at line 176 of file isp116x.h.

#define PTD_GET_DIR (   p)    (((p)->len & PTD_DIR_MSK) >> 10)

Definition at line 194 of file isp116x.h.

#define PTD_GET_EP (   p)    (((p)->mps & PTD_EP_MSK) >> 12)

Definition at line 190 of file isp116x.h.

#define PTD_GET_FA (   p)    (((p)->faddr & PTD_FA_MSK) >> 0)

Definition at line 198 of file isp116x.h.

#define PTD_GET_FMT (   p)    (((p)->faddr & PTD_FMT_MSK) >> 7)

Definition at line 200 of file isp116x.h.

#define PTD_GET_LAST (   p)    (((p)->mps & PTD_LAST_MSK) >> 11)

Definition at line 188 of file isp116x.h.

#define PTD_GET_LEN (   p)    (((p)->len & PTD_LEN_MSK) >> 0)

Definition at line 192 of file isp116x.h.

#define PTD_GET_MPS (   p)    (((p)->mps & PTD_MPS_MSK) >> 0)

Definition at line 184 of file isp116x.h.

#define PTD_GET_SPD (   p)    (((p)->mps & PTD_SPD_MSK) >> 10)

Definition at line 186 of file isp116x.h.

#define PTD_GET_TOGGLE (   p)    (((p)->count & PTD_TOGGLE_MSK) >> 10)

Definition at line 178 of file isp116x.h.

#define PTD_LAST (   v)    (((v) << 11) & PTD_LAST_MSK)

Definition at line 189 of file isp116x.h.

#define PTD_LAST_MSK   (1 << 11)

Definition at line 182 of file isp116x.h.

#define PTD_LEN (   v)    (((v) << 0) & PTD_LEN_MSK)

Definition at line 193 of file isp116x.h.

#define PTD_LEN_MSK   (0x3ff << 0)

Definition at line 185 of file isp116x.h.

#define PTD_MPS (   v)    (((v) << 0) & PTD_MPS_MSK)

Definition at line 185 of file isp116x.h.

#define PTD_MPS_MSK   (0x3ff << 0)

Definition at line 180 of file isp116x.h.

#define PTD_SPD (   v)    (((v) << 10) & PTD_SPD_MSK)

Definition at line 187 of file isp116x.h.

#define PTD_SPD_MSK   (1 << 10)

Definition at line 181 of file isp116x.h.

#define PTD_TOGGLE (   v)    (((v) << 10) & PTD_TOGGLE_MSK)

Definition at line 179 of file isp116x.h.

#define PTD_TOGGLE_MSK   (1 << 10)

Definition at line 176 of file isp116x.h.

#define RH_A_DT   (1 << 10) /* device type (mbz) */

Definition at line 69 of file isp116x.h.

#define RH_A_NDP   (0x3 << 0) /* # downstream ports */

Definition at line 66 of file isp116x.h.

#define RH_A_NOCP   (1 << 12) /* no overcurrent protection */

Definition at line 71 of file isp116x.h.

#define RH_A_NPS   (1 << 9) /* no power switching */

Definition at line 68 of file isp116x.h.

#define RH_A_OCPM
Value:
(1 << 11) /* overcurrent protection
mode */

Definition at line 70 of file isp116x.h.

#define RH_A_POTPGT
Value:
(0xff << 24) /* power on -> power good
time */

Definition at line 72 of file isp116x.h.

#define RH_A_PSM   (1 << 8) /* power switching mode */

Definition at line 67 of file isp116x.h.

#define RH_B_DR   (0xffff << 0) /* device removable flags */

Definition at line 74 of file isp116x.h.

#define RH_B_PPCM   (0xffff << 16) /* port power control mask */

Definition at line 75 of file isp116x.h.

#define RH_HS_CRWE
Value:
(1 << 31) /* clear remote wakeup
enable */

Definition at line 82 of file isp116x.h.

#define RH_HS_DRWE
Value:
(1 << 15) /* device remote wakeup
enable */

Definition at line 79 of file isp116x.h.

#define RH_HS_LPS   (1 << 0) /* local power status */

Definition at line 77 of file isp116x.h.

#define RH_HS_LPSC   (1 << 16) /* local power status change */

Definition at line 80 of file isp116x.h.

#define RH_HS_OCI   (1 << 1) /* over current indicator */

Definition at line 78 of file isp116x.h.

#define RH_HS_OCIC
Value:
(1 << 17) /* over current indicator
change */

Definition at line 81 of file isp116x.h.

#define RH_PS_CCS   (1 << 0) /* current connect status */

Definition at line 84 of file isp116x.h.

#define RH_PS_CSC   (1 << 16) /* connect status change */

Definition at line 91 of file isp116x.h.

#define RH_PS_LSDA   (1 << 9) /* low speed device attached */

Definition at line 90 of file isp116x.h.

#define RH_PS_OCIC
Value:
(1 << 19) /* over current indicator
change */

Definition at line 94 of file isp116x.h.

#define RH_PS_PES   (1 << 1) /* port enable status */

Definition at line 85 of file isp116x.h.

#define RH_PS_PESC   (1 << 17) /* port enable status change */

Definition at line 92 of file isp116x.h.

#define RH_PS_POCI
Value:
(1 << 3) /* port over current
indicator */

Definition at line 87 of file isp116x.h.

#define RH_PS_PPS   (1 << 8) /* port power status */

Definition at line 89 of file isp116x.h.

#define RH_PS_PRS   (1 << 4) /* port reset status */

Definition at line 88 of file isp116x.h.

#define RH_PS_PRSC   (1 << 20) /* port reset status change */

Definition at line 95 of file isp116x.h.

#define RH_PS_PSS   (1 << 2) /* port suspend status */

Definition at line 86 of file isp116x.h.

#define RH_PS_PSSC
Value:
(1 << 18) /* port suspend status
change */

Definition at line 93 of file isp116x.h.

#define TD_BUFFEROVERRUN   0x0C

Definition at line 215 of file isp116x.h.

#define TD_BUFFERUNDERRUN   0x0D

Definition at line 216 of file isp116x.h.

#define TD_CC_BITSTUFFING   0x02

Definition at line 206 of file isp116x.h.

#define TD_CC_CRC   0x01

Definition at line 205 of file isp116x.h.

#define TD_CC_DATATOGGLEM   0x03

Definition at line 207 of file isp116x.h.

#define TD_CC_NOERROR   0x00

Definition at line 204 of file isp116x.h.

#define TD_CC_STALL   0x04

Definition at line 208 of file isp116x.h.

#define TD_DATAOVERRUN   0x08

Definition at line 212 of file isp116x.h.

#define TD_DATAUNDERRUN   0x09

Definition at line 213 of file isp116x.h.

#define TD_DEVNOTRESP   0x05

Definition at line 209 of file isp116x.h.

#define TD_NOTACCESSED   0x0F

Definition at line 218 of file isp116x.h.

#define TD_PIDCHECKFAIL   0x06

Definition at line 210 of file isp116x.h.

#define TD_UNEXPECTEDPID   0x07

Definition at line 211 of file isp116x.h.

#define urb_dbg (   urb,
  msg 
)    do{}while(0)

Definition at line 538 of file isp116x.h.

#define VDBG (   stuff...)    do{}while(0)

Definition at line 328 of file isp116x.h.

#define WARNING (   stuff...)    printk(KERN_WARNING "116x: " stuff)

Definition at line 332 of file isp116x.h.

Function Documentation

struct ptd __attribute__ ( (packed, aligned(2))  )

Variable Documentation

u16 count

Definition at line 174 of file isp116x.h.

u16 faddr

Definition at line 191 of file isp116x.h.

u16 len

Definition at line 184 of file isp116x.h.

u16 mps

Definition at line 179 of file isp116x.h.