ReactOS  0.4.14-dev-317-g96040ec
hardware.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  OHCIHCCA
 
struct  _OHCI_ENDPOINT_DESCRIPTOR
 
struct  OHCI_PORT_STATUS
 
struct  OHCI_GENERAL_TD
 
struct  _OHCI_ISO_TD_
 

Macros

#define OHCI_REVISION_OFFSET   (0x00)
 
#define OHCI_REVISION_LOW(rev)   ((rev) & 0x0f)
 
#define OHCI_REVISION_HIGH(rev)   (((rev) >> 4) & 0x03)
 
#define OHCI_CONTROL_OFFSET   (0x004)
 
#define OHCI_CONTROL_BULK_SERVICE_RATIO_MASK   (0x003)
 
#define OHCI_CONTROL_BULK_RATIO_1_1   (0x000)
 
#define OHCI_CONTROL_BULK_RATIO_1_2   (0x001)
 
#define OHCI_CONTROL_BULK_RATIO_1_3   (0x002)
 
#define OHCI_CONTROL_BULK_RATIO_1_4   (0x003)
 
#define OHCI_PERIODIC_LIST_ENABLE   (0x004)
 
#define OHCI_ISOCHRONOUS_ENABLE   (0x008)
 
#define OHCI_CONTROL_LIST_ENABLE   (0x010)
 
#define OHCI_BULK_LIST_ENABLE   (0x020)
 
#define OHCI_HC_FUNCTIONAL_STATE_MASK   (0x0C0)
 
#define OHCI_HC_FUNCTIONAL_STATE_RESET   (0x000)
 
#define OHCI_HC_FUNCTIONAL_STATE_RESUME   (0x040)
 
#define OHCI_HC_FUNCTIONAL_STATE_OPERATIONAL   (0x080)
 
#define OHCI_HC_FUNCTIONAL_STATE_SUSPEND   (0x0c0)
 
#define OHCI_INTERRUPT_ROUTING   (0x100)
 
#define OHCI_REMOTE_WAKEUP_CONNECTED   (0x200)
 
#define OHCI_REMORE_WAKEUP_ENABLED   (0x400)
 
#define OHCI_COMMAND_STATUS_OFFSET   (0x08)
 
#define OHCI_HOST_CONTROLLER_RESET   0x00000001
 
#define OHCI_CONTROL_LIST_FILLED   0x00000002
 
#define OHCI_BULK_LIST_FILLED   0x00000004
 
#define OHCI_OWNERSHIP_CHANGE_REQUEST   0x00000008
 
#define OHCI_SCHEDULING_OVERRUN_COUNT_MASK   0x00030000
 
#define OHCI_INTERRUPT_STATUS_OFFSET   0x0c
 
#define OHCI_SCHEDULING_OVERRUN   0x00000001
 
#define OHCI_WRITEBACK_DONE_HEAD   0x00000002
 
#define OHCI_START_OF_FRAME   0x00000004
 
#define OHCI_RESUME_DETECTED   0x00000008
 
#define OHCI_UNRECOVERABLE_ERROR   0x00000010
 
#define OHCI_FRAME_NUMBER_OVERFLOW   0x00000020
 
#define OHCI_ROOT_HUB_STATUS_CHANGE   0x00000040
 
#define OHCI_OWNERSHIP_CHANGE   0x40000000
 
#define OHCI_MASTER_INTERRUPT_ENABLE   0x80000000
 
#define OHCI_INTERRUPT_ENABLE_OFFSET   0x10
 
#define OHCI_INTERRUPT_DISABLE_OFFSET   0x14
 
#define OHCI_HCCA_OFFSET   0x18
 
#define OHCI_PERIOD_CURRENT_ED_OFFSET   0x1c
 
#define OHCI_CONTROL_HEAD_ED_OFFSET   0x20
 
#define OHCI_CONTROL_CURRENT_ED_OFFSET   0x24
 
#define OHCI_BULK_HEAD_ED_OFFSET   0x28
 
#define OHCI_RH_DESCRIPTOR_A_OFFSET   0x48
 
#define OHCI_RH_GET_PORT_COUNT(s)   ((s) & 0xff)
 
#define OHCI_RH_POWER_SWITCHING_MODE   0x0100
 
#define OHCI_RH_NO_POWER_SWITCHING   0x0200
 
#define OHCI_RH_DEVICE_TYPE   0x0400
 
#define OHCI_RH_OVER_CURRENT_PROTECTION_MODE   0x0800
 
#define OHCI_RH_NO_OVER_CURRENT_PROTECTION   0x1000
 
#define OHCI_RH_GET_POWER_ON_TO_POWER_GOOD_TIME(s)   ((s) >> 24)
 
#define OHCI_FRAME_INTERVAL_OFFSET   0x34
 
#define OHCI_GET_INTERVAL_VALUE(s)   ((s) & 0x3fff)
 
#define OHCI_GET_FS_LARGEST_DATA_PACKET(s)   (((s) >> 16) & 0x7fff)
 
#define OHCI_FRAME_INTERVAL_TOGGLE   0x80000000
 
#define OHCI_FRAME_INTERVAL_NUMBER_OFFSET   0x3C
 
#define OHCI_PERIODIC_START_OFFSET   0x40
 
#define OHCI_PERIODIC(i)   ((i) * 9 / 10)
 
#define OHCI_RH_DESCRIPTOR_B_OFFSET   0x4c
 
#define OHCI_RH_STATUS_OFFSET   0x50
 
#define OHCI_RH_LOCAL_POWER_STATUS   0x00000001
 
#define OHCI_RH_OVER_CURRENT_INDICATOR   0x00000002
 
#define OHCI_RH_DEVICE_REMOTE_WAKEUP_ENABLE   0x00008000
 
#define OHCI_RH_LOCAL_POWER_STATUS_CHANGE   0x00010000
 
#define OHCI_RH_OVER_CURRENT_INDICATOR_CHANGE   0x00020000
 
#define OHCI_RH_CLEAR_REMOTE_WAKEUP_ENABLE   0x80000000
 
#define OHCI_RH_PORT_STATUS(n)   (0x54 + (n) * 4)
 
#define OHCI_RH_PORTSTATUS_CCS   0x00000001
 
#define OHCI_RH_PORTSTATUS_PES   0x00000002
 
#define OHCI_RH_PORTSTATUS_PSS   0x00000004
 
#define OHCI_RH_PORTSTATUS_POCI   0x00000008
 
#define OHCI_RH_PORTSTATUS_PRS   0x00000010
 
#define OHCI_RH_PORTSTATUS_PPS   0x00000100
 
#define OHCI_RH_PORTSTATUS_LSDA   0x00000200
 
#define OHCI_RH_PORTSTATUS_CSC   0x00010000
 
#define OHCI_RH_PORTSTATUS_PESC   0x00020000
 
#define OHCI_RH_PORTSTATUS_PSSC   0x00040000
 
#define OHCI_RH_PORTSTATUS_OCIC   0x00080000
 
#define OHCI_RH_PORTSTATUS_PRSC   0x00100000
 
#define OHCI_ENABLE_LIST
 
#define OHCI_ALL_INTERRUPTS
 
#define OHCI_NORMAL_INTERRUPTS
 
#define OHCI_FSMPS(i)   (((i - 210) * 6 / 7) << 16)
 
#define OHCI_PERIODIC(i)   ((i) * 9 / 10)
 
#define OHCI_NUMBER_OF_INTERRUPTS   32
 
#define OHCI_STATIC_ENDPOINT_COUNT   6
 
#define OHCI_BIGGEST_INTERVAL   32
 
#define OHCI_DONE_INTERRUPTS   1
 
#define OHCI_HCCA_SIZE   256
 
#define OHCI_HCCA_ALIGN   256
 
#define OHCI_PAGE_SIZE   0x1000
 
#define OHCI_PAGE(x)   ((x) &~ 0xfff)
 
#define OHCI_PAGE_OFFSET(x)   ((x) & 0xfff)
 
#define OHCI_ENDPOINT_SKIP   0x00004000
 
#define OHCI_ENDPOINT_SET_DEVICE_ADDRESS(s)   (s)
 
#define OHCI_ENDPOINT_GET_DEVICE_ADDRESS(s)   ((s) & 0xFF)
 
#define OHCI_ENDPOINT_GET_ENDPOINT_NUMBER(s)   (((s) >> 7) & 0xf)
 
#define OHCI_ENDPOINT_SET_ENDPOINT_NUMBER(s)   ((s) << 7)
 
#define OHCI_ENDPOINT_GET_MAX_PACKET_SIZE(s)   (((s) >> 16) & 0x07ff)
 
#define OHCI_ENDPOINT_SET_MAX_PACKET_SIZE(s)   ((s) << 16)
 
#define OHCI_ENDPOINT_LOW_SPEED   0x00002000
 
#define OHCI_ENDPOINT_FULL_SPEED   0x00000000
 
#define OHCI_ENDPOINT_DIRECTION_OUT   0x00000800
 
#define OHCI_ENDPOINT_DIRECTION_IN   0x00001000
 
#define OHCI_ENDPOINT_GENERAL_FORMAT   0x00000000
 
#define OHCI_ENDPOINT_ISOCHRONOUS_FORMAT   0x00008000
 
#define OHCI_ENDPOINT_HEAD_MASK   0xfffffffc
 
#define OHCI_ENDPOINT_HALTED   0x00000001
 
#define OHCI_ENDPOINT_TOGGLE_CARRY   0x00000002
 
#define OHCI_ENDPOINT_DIRECTION_DESCRIPTOR   0x00000000
 
#define OHCI_MAX_PORT_COUNT   15
 
#define OHCI_TD_BUFFER_ROUNDING   0x00040000
 
#define OHCI_TD_DIRECTION_PID_MASK   0x00180000
 
#define OHCI_TD_DIRECTION_PID_SETUP   0x00000000
 
#define OHCI_TD_DIRECTION_PID_OUT   0x00080000
 
#define OHCI_TD_DIRECTION_PID_IN   0x00100000
 
#define OHCI_TD_GET_DELAY_INTERRUPT(x)   (((x) >> 21) & 7)
 
#define OHCI_TD_SET_DELAY_INTERRUPT(x)   ((x) << 21)
 
#define OHCI_TD_INTERRUPT_MASK   0x00e00000
 
#define OHCI_TD_TOGGLE_CARRY   0x00000000
 
#define OHCI_TD_TOGGLE_0   0x02000000
 
#define OHCI_TD_TOGGLE_1   0x03000000
 
#define OHCI_TD_TOGGLE_MASK   0x03000000
 
#define OHCI_TD_GET_ERROR_COUNT(x)   (((x) >> 26) & 3)
 
#define OHCI_TD_GET_CONDITION_CODE(x)   ((x) >> 28)
 
#define OHCI_TD_SET_CONDITION_CODE(x)   ((x) << 28)
 
#define OHCI_TD_CONDITION_CODE_MASK   0xf0000000
 
#define OHCI_TD_INTERRUPT_IMMEDIATE   0x00
 
#define OHCI_TD_INTERRUPT_NONE   0x07
 
#define OHCI_TD_CONDITION_NO_ERROR   0x00
 
#define OHCI_TD_CONDITION_CRC_ERROR   0x01
 
#define OHCI_TD_CONDITION_BIT_STUFFING   0x02
 
#define OHCI_TD_CONDITION_TOGGLE_MISMATCH   0x03
 
#define OHCI_TD_CONDITION_STALL   0x04
 
#define OHCI_TD_CONDITION_NO_RESPONSE   0x05
 
#define OHCI_TD_CONDITION_PID_CHECK_FAILURE   0x06
 
#define OHCI_TD_CONDITION_UNEXPECTED_PID   0x07
 
#define OHCI_TD_CONDITION_DATA_OVERRUN   0x08
 
#define OHCI_TD_CONDITION_DATA_UNDERRUN   0x09
 
#define OHCI_TD_CONDITION_BUFFER_OVERRUN   0x0c
 
#define OHCI_TD_CONDITION_BUFFER_UNDERRUN   0x0d
 
#define OHCI_TD_CONDITION_NOT_ACCESSED   0x0f
 
#define OHCI_ITD_NOFFSET   8
 
#define OHCI_ITD_GET_STARTING_FRAME(x)   ((x) & 0x0000ffff)
 
#define OHCI_ITD_SET_STARTING_FRAME(x)   ((x) & 0xffff)
 
#define OHCI_ITD_GET_DELAY_INTERRUPT(x)   (((x) >> 21) & 7)
 
#define OHCI_ITD_SET_DELAY_INTERRUPT(x)   ((x) << 21)
 
#define OHCI_ITD_NO_INTERRUPT   0x00e00000
 
#define OHCI_ITD_GET_FRAME_COUNT(x)   ((((x) >> 24) & 7) + 1)
 
#define OHCI_ITD_SET_FRAME_COUNT(x)   (((x) - 1) << 24)
 
#define OHCI_ITD_GET_CONDITION_CODE(x)   ((x) >> 28)
 
#define OHCI_ITD_NO_CONDITION_CODE   0xf0000000
 

Typedefs

typedef struct OHCIHCCAPOHCIHCCA
 
typedef struct _OHCI_ENDPOINT_DESCRIPTOR OHCI_ENDPOINT_DESCRIPTOR
 
typedef struct _OHCI_ENDPOINT_DESCRIPTORPOHCI_ENDPOINT_DESCRIPTOR
 
typedef struct OHCI_GENERAL_TDPOHCI_GENERAL_TD
 
typedef struct _OHCI_ISO_TD_ OHCI_ISO_TD
 
typedef struct _OHCI_ISO_TD_POHCI_ISO_TD
 

Functions

 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, Flags)==0)
 
 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, BufferPhysical)==4)
 
 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, NextPhysicalDescriptor)==8)
 
 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, LastPhysicalByteAddress)==12)
 
 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, Offset)==16)
 
 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, PhysicalAddress)==32)
 
 C_ASSERT (FIELD_OFFSET(OHCI_ISO_TD, NextLogicalDescriptor)==40)
 
 C_ASSERT (sizeof(OHCI_ISO_TD)==48)
 

Macro Definition Documentation

◆ OHCI_ALL_INTERRUPTS

#define OHCI_ALL_INTERRUPTS
Value:
#define OHCI_ROOT_HUB_STATUS_CHANGE
Definition: hardware.h:55
#define OHCI_UNRECOVERABLE_ERROR
Definition: hardware.h:53
#define OHCI_WRITEBACK_DONE_HEAD
Definition: hardware.h:50
#define OHCI_OWNERSHIP_CHANGE
Definition: hardware.h:56
#define OHCI_RESUME_DETECTED
Definition: hardware.h:52
#define OHCI_SCHEDULING_OVERRUN
Definition: hardware.h:49
#define OHCI_START_OF_FRAME
Definition: hardware.h:51
#define OHCI_FRAME_NUMBER_OVERFLOW
Definition: hardware.h:54

Definition at line 156 of file hardware.h.

◆ OHCI_BIGGEST_INTERVAL

#define OHCI_BIGGEST_INTERVAL   32

Definition at line 194 of file hardware.h.

◆ OHCI_BULK_HEAD_ED_OFFSET

#define OHCI_BULK_HEAD_ED_OFFSET   0x28

Definition at line 77 of file hardware.h.

◆ OHCI_BULK_LIST_ENABLE

#define OHCI_BULK_LIST_ENABLE   (0x020)

Definition at line 24 of file hardware.h.

◆ OHCI_BULK_LIST_FILLED

#define OHCI_BULK_LIST_FILLED   0x00000004

Definition at line 40 of file hardware.h.

◆ OHCI_COMMAND_STATUS_OFFSET

#define OHCI_COMMAND_STATUS_OFFSET   (0x08)

Definition at line 37 of file hardware.h.

◆ OHCI_CONTROL_BULK_RATIO_1_1

#define OHCI_CONTROL_BULK_RATIO_1_1   (0x000)

Definition at line 17 of file hardware.h.

◆ OHCI_CONTROL_BULK_RATIO_1_2

#define OHCI_CONTROL_BULK_RATIO_1_2   (0x001)

Definition at line 18 of file hardware.h.

◆ OHCI_CONTROL_BULK_RATIO_1_3

#define OHCI_CONTROL_BULK_RATIO_1_3   (0x002)

Definition at line 19 of file hardware.h.

◆ OHCI_CONTROL_BULK_RATIO_1_4

#define OHCI_CONTROL_BULK_RATIO_1_4   (0x003)

Definition at line 20 of file hardware.h.

◆ OHCI_CONTROL_BULK_SERVICE_RATIO_MASK

#define OHCI_CONTROL_BULK_SERVICE_RATIO_MASK   (0x003)

Definition at line 16 of file hardware.h.

◆ OHCI_CONTROL_CURRENT_ED_OFFSET

#define OHCI_CONTROL_CURRENT_ED_OFFSET   0x24

Definition at line 76 of file hardware.h.

◆ OHCI_CONTROL_HEAD_ED_OFFSET

#define OHCI_CONTROL_HEAD_ED_OFFSET   0x20

Definition at line 75 of file hardware.h.

◆ OHCI_CONTROL_LIST_ENABLE

#define OHCI_CONTROL_LIST_ENABLE   (0x010)

Definition at line 23 of file hardware.h.

◆ OHCI_CONTROL_LIST_FILLED

#define OHCI_CONTROL_LIST_FILLED   0x00000002

Definition at line 39 of file hardware.h.

◆ OHCI_CONTROL_OFFSET

#define OHCI_CONTROL_OFFSET   (0x004)

Definition at line 15 of file hardware.h.

◆ OHCI_DONE_INTERRUPTS

#define OHCI_DONE_INTERRUPTS   1

Definition at line 204 of file hardware.h.

◆ OHCI_ENABLE_LIST

#define OHCI_ENABLE_LIST
Value:
#define OHCI_CONTROL_LIST_ENABLE
Definition: hardware.h:23
#define OHCI_BULK_LIST_ENABLE
Definition: hardware.h:24
#define OHCI_ISOCHRONOUS_ENABLE
Definition: hardware.h:22
#define OHCI_PERIODIC_LIST_ENABLE
Definition: hardware.h:21

Definition at line 148 of file hardware.h.

◆ OHCI_ENDPOINT_DIRECTION_DESCRIPTOR

#define OHCI_ENDPOINT_DIRECTION_DESCRIPTOR   0x00000000

Definition at line 245 of file hardware.h.

◆ OHCI_ENDPOINT_DIRECTION_IN

#define OHCI_ENDPOINT_DIRECTION_IN   0x00001000

Definition at line 239 of file hardware.h.

◆ OHCI_ENDPOINT_DIRECTION_OUT

#define OHCI_ENDPOINT_DIRECTION_OUT   0x00000800

Definition at line 238 of file hardware.h.

◆ OHCI_ENDPOINT_FULL_SPEED

#define OHCI_ENDPOINT_FULL_SPEED   0x00000000

Definition at line 237 of file hardware.h.

◆ OHCI_ENDPOINT_GENERAL_FORMAT

#define OHCI_ENDPOINT_GENERAL_FORMAT   0x00000000

Definition at line 240 of file hardware.h.

◆ OHCI_ENDPOINT_GET_DEVICE_ADDRESS

#define OHCI_ENDPOINT_GET_DEVICE_ADDRESS (   s)    ((s) & 0xFF)

Definition at line 231 of file hardware.h.

◆ OHCI_ENDPOINT_GET_ENDPOINT_NUMBER

#define OHCI_ENDPOINT_GET_ENDPOINT_NUMBER (   s)    (((s) >> 7) & 0xf)

Definition at line 232 of file hardware.h.

◆ OHCI_ENDPOINT_GET_MAX_PACKET_SIZE

#define OHCI_ENDPOINT_GET_MAX_PACKET_SIZE (   s)    (((s) >> 16) & 0x07ff)

Definition at line 234 of file hardware.h.

◆ OHCI_ENDPOINT_HALTED

#define OHCI_ENDPOINT_HALTED   0x00000001

Definition at line 243 of file hardware.h.

◆ OHCI_ENDPOINT_HEAD_MASK

#define OHCI_ENDPOINT_HEAD_MASK   0xfffffffc

Definition at line 242 of file hardware.h.

◆ OHCI_ENDPOINT_ISOCHRONOUS_FORMAT

#define OHCI_ENDPOINT_ISOCHRONOUS_FORMAT   0x00008000

Definition at line 241 of file hardware.h.

◆ OHCI_ENDPOINT_LOW_SPEED

#define OHCI_ENDPOINT_LOW_SPEED   0x00002000

Definition at line 236 of file hardware.h.

◆ OHCI_ENDPOINT_SET_DEVICE_ADDRESS

#define OHCI_ENDPOINT_SET_DEVICE_ADDRESS (   s)    (s)

Definition at line 230 of file hardware.h.

◆ OHCI_ENDPOINT_SET_ENDPOINT_NUMBER

#define OHCI_ENDPOINT_SET_ENDPOINT_NUMBER (   s)    ((s) << 7)

Definition at line 233 of file hardware.h.

◆ OHCI_ENDPOINT_SET_MAX_PACKET_SIZE

#define OHCI_ENDPOINT_SET_MAX_PACKET_SIZE (   s)    ((s) << 16)

Definition at line 235 of file hardware.h.

◆ OHCI_ENDPOINT_SKIP

#define OHCI_ENDPOINT_SKIP   0x00004000

Definition at line 229 of file hardware.h.

◆ OHCI_ENDPOINT_TOGGLE_CARRY

#define OHCI_ENDPOINT_TOGGLE_CARRY   0x00000002

Definition at line 244 of file hardware.h.

◆ OHCI_FRAME_INTERVAL_NUMBER_OFFSET

#define OHCI_FRAME_INTERVAL_NUMBER_OFFSET   0x3C

Definition at line 102 of file hardware.h.

◆ OHCI_FRAME_INTERVAL_OFFSET

#define OHCI_FRAME_INTERVAL_OFFSET   0x34

Definition at line 94 of file hardware.h.

◆ OHCI_FRAME_INTERVAL_TOGGLE

#define OHCI_FRAME_INTERVAL_TOGGLE   0x80000000

Definition at line 97 of file hardware.h.

◆ OHCI_FRAME_NUMBER_OVERFLOW

#define OHCI_FRAME_NUMBER_OVERFLOW   0x00000020

Definition at line 54 of file hardware.h.

◆ OHCI_FSMPS

#define OHCI_FSMPS (   i)    (((i - 210) * 6 / 7) << 16)

Definition at line 179 of file hardware.h.

◆ OHCI_GET_FS_LARGEST_DATA_PACKET

#define OHCI_GET_FS_LARGEST_DATA_PACKET (   s)    (((s) >> 16) & 0x7fff)

Definition at line 96 of file hardware.h.

◆ OHCI_GET_INTERVAL_VALUE

#define OHCI_GET_INTERVAL_VALUE (   s)    ((s) & 0x3fff)

Definition at line 95 of file hardware.h.

◆ OHCI_HC_FUNCTIONAL_STATE_MASK

#define OHCI_HC_FUNCTIONAL_STATE_MASK   (0x0C0)

Definition at line 25 of file hardware.h.

◆ OHCI_HC_FUNCTIONAL_STATE_OPERATIONAL

#define OHCI_HC_FUNCTIONAL_STATE_OPERATIONAL   (0x080)

Definition at line 28 of file hardware.h.

◆ OHCI_HC_FUNCTIONAL_STATE_RESET

#define OHCI_HC_FUNCTIONAL_STATE_RESET   (0x000)

Definition at line 26 of file hardware.h.

◆ OHCI_HC_FUNCTIONAL_STATE_RESUME

#define OHCI_HC_FUNCTIONAL_STATE_RESUME   (0x040)

Definition at line 27 of file hardware.h.

◆ OHCI_HC_FUNCTIONAL_STATE_SUSPEND

#define OHCI_HC_FUNCTIONAL_STATE_SUSPEND   (0x0c0)

Definition at line 29 of file hardware.h.

◆ OHCI_HCCA_ALIGN

#define OHCI_HCCA_ALIGN   256

Definition at line 206 of file hardware.h.

◆ OHCI_HCCA_OFFSET

#define OHCI_HCCA_OFFSET   0x18

Definition at line 73 of file hardware.h.

◆ OHCI_HCCA_SIZE

#define OHCI_HCCA_SIZE   256

Definition at line 205 of file hardware.h.

◆ OHCI_HOST_CONTROLLER_RESET

#define OHCI_HOST_CONTROLLER_RESET   0x00000001

Definition at line 38 of file hardware.h.

◆ OHCI_INTERRUPT_DISABLE_OFFSET

#define OHCI_INTERRUPT_DISABLE_OFFSET   0x14

Definition at line 68 of file hardware.h.

◆ OHCI_INTERRUPT_ENABLE_OFFSET

#define OHCI_INTERRUPT_ENABLE_OFFSET   0x10

Definition at line 63 of file hardware.h.

◆ OHCI_INTERRUPT_ROUTING

#define OHCI_INTERRUPT_ROUTING   (0x100)

Definition at line 30 of file hardware.h.

◆ OHCI_INTERRUPT_STATUS_OFFSET

#define OHCI_INTERRUPT_STATUS_OFFSET   0x0c

Definition at line 48 of file hardware.h.

◆ OHCI_ISOCHRONOUS_ENABLE

#define OHCI_ISOCHRONOUS_ENABLE   (0x008)

Definition at line 22 of file hardware.h.

◆ OHCI_ITD_GET_CONDITION_CODE

#define OHCI_ITD_GET_CONDITION_CODE (   x)    ((x) >> 28)

Definition at line 346 of file hardware.h.

◆ OHCI_ITD_GET_DELAY_INTERRUPT

#define OHCI_ITD_GET_DELAY_INTERRUPT (   x)    (((x) >> 21) & 7)

Definition at line 341 of file hardware.h.

◆ OHCI_ITD_GET_FRAME_COUNT

#define OHCI_ITD_GET_FRAME_COUNT (   x)    ((((x) >> 24) & 7) + 1)

Definition at line 344 of file hardware.h.

◆ OHCI_ITD_GET_STARTING_FRAME

#define OHCI_ITD_GET_STARTING_FRAME (   x)    ((x) & 0x0000ffff)

Definition at line 339 of file hardware.h.

◆ OHCI_ITD_NO_CONDITION_CODE

#define OHCI_ITD_NO_CONDITION_CODE   0xf0000000

Definition at line 347 of file hardware.h.

◆ OHCI_ITD_NO_INTERRUPT

#define OHCI_ITD_NO_INTERRUPT   0x00e00000

Definition at line 343 of file hardware.h.

◆ OHCI_ITD_NOFFSET

#define OHCI_ITD_NOFFSET   8

Definition at line 313 of file hardware.h.

◆ OHCI_ITD_SET_DELAY_INTERRUPT

#define OHCI_ITD_SET_DELAY_INTERRUPT (   x)    ((x) << 21)

Definition at line 342 of file hardware.h.

◆ OHCI_ITD_SET_FRAME_COUNT

#define OHCI_ITD_SET_FRAME_COUNT (   x)    (((x) - 1) << 24)

Definition at line 345 of file hardware.h.

◆ OHCI_ITD_SET_STARTING_FRAME

#define OHCI_ITD_SET_STARTING_FRAME (   x)    ((x) & 0xffff)

Definition at line 340 of file hardware.h.

◆ OHCI_MASTER_INTERRUPT_ENABLE

#define OHCI_MASTER_INTERRUPT_ENABLE   0x80000000

Definition at line 57 of file hardware.h.

◆ OHCI_MAX_PORT_COUNT

#define OHCI_MAX_PORT_COUNT   15

Definition at line 250 of file hardware.h.

◆ OHCI_NORMAL_INTERRUPTS

#define OHCI_NORMAL_INTERRUPTS
Value:
#define OHCI_ROOT_HUB_STATUS_CHANGE
Definition: hardware.h:55
#define OHCI_UNRECOVERABLE_ERROR
Definition: hardware.h:53
#define OHCI_WRITEBACK_DONE_HEAD
Definition: hardware.h:50
#define OHCI_OWNERSHIP_CHANGE
Definition: hardware.h:56
#define OHCI_RESUME_DETECTED
Definition: hardware.h:52
#define OHCI_SCHEDULING_OVERRUN
Definition: hardware.h:49

Definition at line 168 of file hardware.h.

◆ OHCI_NUMBER_OF_INTERRUPTS

#define OHCI_NUMBER_OF_INTERRUPTS   32

Definition at line 192 of file hardware.h.

◆ OHCI_OWNERSHIP_CHANGE

#define OHCI_OWNERSHIP_CHANGE   0x40000000

Definition at line 56 of file hardware.h.

◆ OHCI_OWNERSHIP_CHANGE_REQUEST

#define OHCI_OWNERSHIP_CHANGE_REQUEST   0x00000008

Definition at line 41 of file hardware.h.

◆ OHCI_PAGE

#define OHCI_PAGE (   x)    ((x) &~ 0xfff)

Definition at line 208 of file hardware.h.

◆ OHCI_PAGE_OFFSET

#define OHCI_PAGE_OFFSET (   x)    ((x) & 0xfff)

Definition at line 209 of file hardware.h.

◆ OHCI_PAGE_SIZE

#define OHCI_PAGE_SIZE   0x1000

Definition at line 207 of file hardware.h.

◆ OHCI_PERIOD_CURRENT_ED_OFFSET

#define OHCI_PERIOD_CURRENT_ED_OFFSET   0x1c

Definition at line 74 of file hardware.h.

◆ OHCI_PERIODIC [1/2]

#define OHCI_PERIODIC (   i)    ((i) * 9 / 10)

Definition at line 185 of file hardware.h.

◆ OHCI_PERIODIC [2/2]

#define OHCI_PERIODIC (   i)    ((i) * 9 / 10)

Definition at line 185 of file hardware.h.

◆ OHCI_PERIODIC_LIST_ENABLE

#define OHCI_PERIODIC_LIST_ENABLE   (0x004)

Definition at line 21 of file hardware.h.

◆ OHCI_PERIODIC_START_OFFSET

#define OHCI_PERIODIC_START_OFFSET   0x40

Definition at line 107 of file hardware.h.

◆ OHCI_REMORE_WAKEUP_ENABLED

#define OHCI_REMORE_WAKEUP_ENABLED   (0x400)

Definition at line 32 of file hardware.h.

◆ OHCI_REMOTE_WAKEUP_CONNECTED

#define OHCI_REMOTE_WAKEUP_CONNECTED   (0x200)

Definition at line 31 of file hardware.h.

◆ OHCI_RESUME_DETECTED

#define OHCI_RESUME_DETECTED   0x00000008

Definition at line 52 of file hardware.h.

◆ OHCI_REVISION_HIGH

#define OHCI_REVISION_HIGH (   rev)    (((rev) >> 4) & 0x03)

Definition at line 9 of file hardware.h.

◆ OHCI_REVISION_LOW

#define OHCI_REVISION_LOW (   rev)    ((rev) & 0x0f)

Definition at line 8 of file hardware.h.

◆ OHCI_REVISION_OFFSET

#define OHCI_REVISION_OFFSET   (0x00)

Definition at line 7 of file hardware.h.

◆ OHCI_RH_CLEAR_REMOTE_WAKEUP_ENABLE

#define OHCI_RH_CLEAR_REMOTE_WAKEUP_ENABLE   0x80000000

Definition at line 125 of file hardware.h.

◆ OHCI_RH_DESCRIPTOR_A_OFFSET

#define OHCI_RH_DESCRIPTOR_A_OFFSET   0x48

Definition at line 82 of file hardware.h.

◆ OHCI_RH_DESCRIPTOR_B_OFFSET

#define OHCI_RH_DESCRIPTOR_B_OFFSET   0x4c

Definition at line 114 of file hardware.h.

◆ OHCI_RH_DEVICE_REMOTE_WAKEUP_ENABLE

#define OHCI_RH_DEVICE_REMOTE_WAKEUP_ENABLE   0x00008000

Definition at line 122 of file hardware.h.

◆ OHCI_RH_DEVICE_TYPE

#define OHCI_RH_DEVICE_TYPE   0x0400

Definition at line 86 of file hardware.h.

◆ OHCI_RH_GET_PORT_COUNT

#define OHCI_RH_GET_PORT_COUNT (   s)    ((s) & 0xff)

Definition at line 83 of file hardware.h.

◆ OHCI_RH_GET_POWER_ON_TO_POWER_GOOD_TIME

#define OHCI_RH_GET_POWER_ON_TO_POWER_GOOD_TIME (   s)    ((s) >> 24)

Definition at line 89 of file hardware.h.

◆ OHCI_RH_LOCAL_POWER_STATUS

#define OHCI_RH_LOCAL_POWER_STATUS   0x00000001

Definition at line 120 of file hardware.h.

◆ OHCI_RH_LOCAL_POWER_STATUS_CHANGE

#define OHCI_RH_LOCAL_POWER_STATUS_CHANGE   0x00010000

Definition at line 123 of file hardware.h.

◆ OHCI_RH_NO_OVER_CURRENT_PROTECTION

#define OHCI_RH_NO_OVER_CURRENT_PROTECTION   0x1000

Definition at line 88 of file hardware.h.

◆ OHCI_RH_NO_POWER_SWITCHING

#define OHCI_RH_NO_POWER_SWITCHING   0x0200

Definition at line 85 of file hardware.h.

◆ OHCI_RH_OVER_CURRENT_INDICATOR

#define OHCI_RH_OVER_CURRENT_INDICATOR   0x00000002

Definition at line 121 of file hardware.h.

◆ OHCI_RH_OVER_CURRENT_INDICATOR_CHANGE

#define OHCI_RH_OVER_CURRENT_INDICATOR_CHANGE   0x00020000

Definition at line 124 of file hardware.h.

◆ OHCI_RH_OVER_CURRENT_PROTECTION_MODE

#define OHCI_RH_OVER_CURRENT_PROTECTION_MODE   0x0800

Definition at line 87 of file hardware.h.

◆ OHCI_RH_PORT_STATUS

#define OHCI_RH_PORT_STATUS (   n)    (0x54 + (n) * 4)

Definition at line 130 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_CCS

#define OHCI_RH_PORTSTATUS_CCS   0x00000001

Definition at line 131 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_CSC

#define OHCI_RH_PORTSTATUS_CSC   0x00010000

Definition at line 138 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_LSDA

#define OHCI_RH_PORTSTATUS_LSDA   0x00000200

Definition at line 137 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_OCIC

#define OHCI_RH_PORTSTATUS_OCIC   0x00080000

Definition at line 141 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PES

#define OHCI_RH_PORTSTATUS_PES   0x00000002

Definition at line 132 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PESC

#define OHCI_RH_PORTSTATUS_PESC   0x00020000

Definition at line 139 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_POCI

#define OHCI_RH_PORTSTATUS_POCI   0x00000008

Definition at line 134 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PPS

#define OHCI_RH_PORTSTATUS_PPS   0x00000100

Definition at line 136 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PRS

#define OHCI_RH_PORTSTATUS_PRS   0x00000010

Definition at line 135 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PRSC

#define OHCI_RH_PORTSTATUS_PRSC   0x00100000

Definition at line 142 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PSS

#define OHCI_RH_PORTSTATUS_PSS   0x00000004

Definition at line 133 of file hardware.h.

◆ OHCI_RH_PORTSTATUS_PSSC

#define OHCI_RH_PORTSTATUS_PSSC   0x00040000

Definition at line 140 of file hardware.h.

◆ OHCI_RH_POWER_SWITCHING_MODE

#define OHCI_RH_POWER_SWITCHING_MODE   0x0100

Definition at line 84 of file hardware.h.

◆ OHCI_RH_STATUS_OFFSET

#define OHCI_RH_STATUS_OFFSET   0x50

Definition at line 119 of file hardware.h.

◆ OHCI_ROOT_HUB_STATUS_CHANGE

#define OHCI_ROOT_HUB_STATUS_CHANGE   0x00000040

Definition at line 55 of file hardware.h.

◆ OHCI_SCHEDULING_OVERRUN

#define OHCI_SCHEDULING_OVERRUN   0x00000001

Definition at line 49 of file hardware.h.

◆ OHCI_SCHEDULING_OVERRUN_COUNT_MASK

#define OHCI_SCHEDULING_OVERRUN_COUNT_MASK   0x00030000

Definition at line 42 of file hardware.h.

◆ OHCI_START_OF_FRAME

#define OHCI_START_OF_FRAME   0x00000004

Definition at line 51 of file hardware.h.

◆ OHCI_STATIC_ENDPOINT_COUNT

#define OHCI_STATIC_ENDPOINT_COUNT   6

Definition at line 193 of file hardware.h.

◆ OHCI_TD_BUFFER_ROUNDING

#define OHCI_TD_BUFFER_ROUNDING   0x00040000

Definition at line 275 of file hardware.h.

◆ OHCI_TD_CONDITION_BIT_STUFFING

#define OHCI_TD_CONDITION_BIT_STUFFING   0x02

Definition at line 297 of file hardware.h.

◆ OHCI_TD_CONDITION_BUFFER_OVERRUN

#define OHCI_TD_CONDITION_BUFFER_OVERRUN   0x0c

Definition at line 305 of file hardware.h.

◆ OHCI_TD_CONDITION_BUFFER_UNDERRUN

#define OHCI_TD_CONDITION_BUFFER_UNDERRUN   0x0d

Definition at line 306 of file hardware.h.

◆ OHCI_TD_CONDITION_CODE_MASK

#define OHCI_TD_CONDITION_CODE_MASK   0xf0000000

Definition at line 290 of file hardware.h.

◆ OHCI_TD_CONDITION_CRC_ERROR

#define OHCI_TD_CONDITION_CRC_ERROR   0x01

Definition at line 296 of file hardware.h.

◆ OHCI_TD_CONDITION_DATA_OVERRUN

#define OHCI_TD_CONDITION_DATA_OVERRUN   0x08

Definition at line 303 of file hardware.h.

◆ OHCI_TD_CONDITION_DATA_UNDERRUN

#define OHCI_TD_CONDITION_DATA_UNDERRUN   0x09

Definition at line 304 of file hardware.h.

◆ OHCI_TD_CONDITION_NO_ERROR

#define OHCI_TD_CONDITION_NO_ERROR   0x00

Definition at line 295 of file hardware.h.

◆ OHCI_TD_CONDITION_NO_RESPONSE

#define OHCI_TD_CONDITION_NO_RESPONSE   0x05

Definition at line 300 of file hardware.h.

◆ OHCI_TD_CONDITION_NOT_ACCESSED

#define OHCI_TD_CONDITION_NOT_ACCESSED   0x0f

Definition at line 307 of file hardware.h.

◆ OHCI_TD_CONDITION_PID_CHECK_FAILURE

#define OHCI_TD_CONDITION_PID_CHECK_FAILURE   0x06

Definition at line 301 of file hardware.h.

◆ OHCI_TD_CONDITION_STALL

#define OHCI_TD_CONDITION_STALL   0x04

Definition at line 299 of file hardware.h.

◆ OHCI_TD_CONDITION_TOGGLE_MISMATCH

#define OHCI_TD_CONDITION_TOGGLE_MISMATCH   0x03

Definition at line 298 of file hardware.h.

◆ OHCI_TD_CONDITION_UNEXPECTED_PID

#define OHCI_TD_CONDITION_UNEXPECTED_PID   0x07

Definition at line 302 of file hardware.h.

◆ OHCI_TD_DIRECTION_PID_IN

#define OHCI_TD_DIRECTION_PID_IN   0x00100000

Definition at line 279 of file hardware.h.

◆ OHCI_TD_DIRECTION_PID_MASK

#define OHCI_TD_DIRECTION_PID_MASK   0x00180000

Definition at line 276 of file hardware.h.

◆ OHCI_TD_DIRECTION_PID_OUT

#define OHCI_TD_DIRECTION_PID_OUT   0x00080000

Definition at line 278 of file hardware.h.

◆ OHCI_TD_DIRECTION_PID_SETUP

#define OHCI_TD_DIRECTION_PID_SETUP   0x00000000

Definition at line 277 of file hardware.h.

◆ OHCI_TD_GET_CONDITION_CODE

#define OHCI_TD_GET_CONDITION_CODE (   x)    ((x) >> 28)

Definition at line 288 of file hardware.h.

◆ OHCI_TD_GET_DELAY_INTERRUPT

#define OHCI_TD_GET_DELAY_INTERRUPT (   x)    (((x) >> 21) & 7)

Definition at line 280 of file hardware.h.

◆ OHCI_TD_GET_ERROR_COUNT

#define OHCI_TD_GET_ERROR_COUNT (   x)    (((x) >> 26) & 3)

Definition at line 287 of file hardware.h.

◆ OHCI_TD_INTERRUPT_IMMEDIATE

#define OHCI_TD_INTERRUPT_IMMEDIATE   0x00

Definition at line 292 of file hardware.h.

◆ OHCI_TD_INTERRUPT_MASK

#define OHCI_TD_INTERRUPT_MASK   0x00e00000

Definition at line 282 of file hardware.h.

◆ OHCI_TD_INTERRUPT_NONE

#define OHCI_TD_INTERRUPT_NONE   0x07

Definition at line 293 of file hardware.h.

◆ OHCI_TD_SET_CONDITION_CODE

#define OHCI_TD_SET_CONDITION_CODE (   x)    ((x) << 28)

Definition at line 289 of file hardware.h.

◆ OHCI_TD_SET_DELAY_INTERRUPT

#define OHCI_TD_SET_DELAY_INTERRUPT (   x)    ((x) << 21)

Definition at line 281 of file hardware.h.

◆ OHCI_TD_TOGGLE_0

#define OHCI_TD_TOGGLE_0   0x02000000

Definition at line 284 of file hardware.h.

◆ OHCI_TD_TOGGLE_1

#define OHCI_TD_TOGGLE_1   0x03000000

Definition at line 285 of file hardware.h.

◆ OHCI_TD_TOGGLE_CARRY

#define OHCI_TD_TOGGLE_CARRY   0x00000000

Definition at line 283 of file hardware.h.

◆ OHCI_TD_TOGGLE_MASK

#define OHCI_TD_TOGGLE_MASK   0x03000000

Definition at line 286 of file hardware.h.

◆ OHCI_UNRECOVERABLE_ERROR

#define OHCI_UNRECOVERABLE_ERROR   0x00000010

Definition at line 53 of file hardware.h.

◆ OHCI_WRITEBACK_DONE_HEAD

#define OHCI_WRITEBACK_DONE_HEAD   0x00000002

Definition at line 50 of file hardware.h.

Typedef Documentation

◆ OHCI_ENDPOINT_DESCRIPTOR

◆ OHCI_ISO_TD

◆ POHCI_ENDPOINT_DESCRIPTOR

◆ POHCI_GENERAL_TD

◆ POHCI_ISO_TD

◆ POHCIHCCA

Function Documentation

◆ C_ASSERT() [1/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, Flags = =0)

◆ C_ASSERT() [2/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, BufferPhysical)  = =4)

◆ C_ASSERT() [3/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, NextPhysicalDescriptor)  = =8)

◆ C_ASSERT() [4/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, LastPhysicalByteAddress)  = =12)

◆ C_ASSERT() [5/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, Offset = =16)

◆ C_ASSERT() [6/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, PhysicalAddress = =32)

◆ C_ASSERT() [7/8]

C_ASSERT ( FIELD_OFFSET(OHCI_ISO_TD, NextLogicalDescriptor)  = =40)

◆ C_ASSERT() [8/8]

C_ASSERT ( sizeof(OHCI_ISO_TD = =48)