Turnstone Operating System
Loading...
Searching...
No Matches
usb_ehci.h File Reference

USB EHCI driver header file. More...

#include <types.h>
#include <driver/usb.h>
#include <pci.h>
#include <utils.h>

Classes

struct  usb_ehci_controller_capabilties_t
 
union  usb_ehci_hcsparams_t
 
union  usb_ehci_hccparams_t
 
struct  usb_ehci_op_regs_t
 
union  usb_ehci_cmd_reg_t
 
union  usb_ehci_sts_reg_t
 
union  usb_ehci_int_enable_reg_t
 
union  usb_ehci_port_sts_and_ctrl_t
 
union  usb_ehci_framelist_item_t
 
struct  usb_ehci_itd_t
 
struct  usb_ehci_sitd_t
 
union  usb_ehci_qtd_pointer_t
 
union  usb_ehci_qtd_token_t
 
struct  usb_ehci_qtd_t
 
struct  usb_ehci_qh_t
 

Typedefs

typedef struct usb_ehci_controller_capabilties_t usb_ehci_controller_capabilties_t
 
typedef union usb_ehci_hcsparams_t usb_ehci_hcsparams_t
 
typedef union usb_ehci_hccparams_t usb_ehci_hccparams_t
 
typedef struct usb_ehci_op_regs_t usb_ehci_op_regs_t
 
typedef union usb_ehci_cmd_reg_t usb_ehci_cmd_reg_t
 
typedef union usb_ehci_sts_reg_t usb_ehci_sts_reg_t
 
typedef union usb_ehci_int_enable_reg_t usb_ehci_int_enable_reg_t
 
typedef union usb_ehci_port_sts_and_ctrl_t usb_ehci_port_sts_and_ctrl_t
 
typedef enum usb_ehci_pid_t usb_ehci_pid_t
 
typedef enum usb_ehci_qtd_type_t usb_ehci_qtd_type_t
 
typedef union usb_ehci_framelist_item_t usb_ehci_framelist_item_t
 
typedef struct usb_ehci_itd_t usb_ehci_itd_t
 
typedef struct usb_ehci_sitd_t usb_ehci_sitd_t
 
typedef union usb_ehci_qtd_pointer_t usb_ehci_qtd_pointer_t
 
typedef union usb_ehci_qtd_token_t usb_ehci_qtd_token_t
 
typedef struct usb_ehci_qtd_t usb_ehci_qtd_t
 
typedef struct usb_ehci_qh_t usb_ehci_qh_t
 

Enumerations

enum  usb_ehci_pid_t { USB_EHCI_PID_OUT = 0 , USB_EHCI_PID_IN = 1 , USB_EHCI_PID_SETUP = 2 }
 
enum  usb_ehci_qtd_type_t { USB_EHCI_QTD_TYPE_ITD = 0 , USB_EHCI_QTD_TYPE_QH = 1 , USB_EHCI_QTD_TYPE_SITD = 2 , USB_EHCI_QTD_TYPE_FSTN = 3 }
 

Functions

 _Static_assert (sizeof(usb_ehci_hcsparams_t)==sizeof(uint32_t), "usb_ehci_hcsparams_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_hccparams_t)==sizeof(uint32_t), "usb_ehci_hccparams_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_cmd_reg_t)==sizeof(uint32_t), "usb_ehci_cmd_reg_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_sts_reg_t)==sizeof(uint32_t), "usb_ehci_sts_reg_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_int_enable_reg_t)==sizeof(uint32_t), "usb_ehci_int_enable_reg_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_port_sts_and_ctrl_t)==sizeof(uint32_t), "usb_ehci_port_sts_and_ctrl_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_framelist_item_t)==sizeof(uint32_t), "usb_ehci_framelist_item_t is not 32 bits")
 
 _Static_assert ((sizeof(usb_ehci_itd_t) % 32)==0, "usb_ehci_itq_t is not 32 bytes boundary aligned")
 
 _Static_assert ((sizeof(usb_ehci_sitd_t) % 32)==0, "usb_ehci_sitq_t is not 32 bytes boundary aligned")
 
 _Static_assert (sizeof(usb_ehci_qtd_pointer_t)==sizeof(uint32_t), "usb_ehci_qtd_pointer_t is not 32 bits")
 
 _Static_assert (sizeof(usb_ehci_qtd_token_t)==sizeof(uint32_t), "usb_ehci_qtd_token_t is not 32 bits")
 
 _Static_assert ((sizeof(usb_ehci_qtd_t) % 32)==0, "usb_ehci_qtd_t is not 32 bit aligned")
 
 _Static_assert ((sizeof(usb_ehci_qh_t) % 32)==0, "usb_ehci_qh_t is not 32 bytes aligned")
 
int8_t usb_ehci_init (usb_controller_t *usb_controller)
 

Detailed Description

USB EHCI driver header file.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.