- Main Page
- Modules
- Data Structures
- Files
- Related Pages

# usb_host_task.h File Reference

`#include "modules/usb/host_chap9/usb_host_hub.h"`

Include dependency graph for usb_host_task.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
struct | S_pipe_int
## Defines
#define | PIPE_GOOD 0
#define | PIPE_DATA_TOGGLE 0x01
#define | PIPE_DATA_PID 0x02
#define | PIPE_PID 0x04
#define | PIPE_TIMEOUT 0x08
#define | PIPE_CRC16 0x10
#define | PIPE_STALL 0x20
#define | PIPE_NAK_TIMEOUT 0x40
#define | PIPE_DELAY_TIMEOUT 0x80
#define | Is_host_ready() ((device_state==DEVICE_READY) ? TRUE : FALSE)
#define | Is_host_not_ready() ((device_state==DEVICE_READY) ? FALSE :TRUE)
| Returns true when the high application should not perform request to the device.
#define | Is_host_suspended() (((device_state==DEVICE_WAIT_RESUME) ||(device_state==DEVICE_SUSPENDED)) ? TRUE : FALSE)
| Check if host controller is in suspend mode.
#define | Is_host_not_suspended() (((device_state==DEVICE_WAIT_RESUME) ||(device_state==DEVICE_SUSPENDED)) ? FALSE : TRUE)
| Check if host controller is not suspend mode.
#define | Is_host_unattached() ((device_state==DEVICE_UNATTACHED) ? TRUE : FALSE)
| Check if there is an attached device connected to the host.
#define | Is_host_attached() ((device_state>=DEVICE_UNATTACHED) ? TRUE : FALSE)
| Check if there is an attached device connected to the host.
#define | Host_request_suspend() (device_state=DEVICE_SUSPENDED)
| This function should be called to make the host controller enter USB suspend mode.
#define | Host_request_resume() (request_resume=TRUE)
| This function should be called to request the host controller to resume the USB bus.
#define | Host_ack_request_resume() (request_resume=FALSE)
| Private ack for software event.
#define | Host_force_enumeration() (force_enumeration=TRUE, device_state=DEVICE_ATTACHED, init_usb_tree())
| Force reset and (re)enumeration of the connected device.
#define | Is_host_request_resume() ((request_resume==TRUE) ? TRUE : FALSE)
| Private check for resume sequence.
#define | Is_new_device_connection_event() (new_device_connected ? TRUE : FALSE)
| Returns true when a new device is enumerated.
#define | Is_device_disconnection_event() ((device_state==DEVICE_DISCONNECTED_ACK || device_state==DEVICE_DISCONNECTED || f_hub_port_disconnect) ? TRUE : FALSE)
| Returns true when the device disconnects from the host.
#define | Host_stop_pipe_interrupt(i)
| Stop all interrupt attached to a pipe.
#define | DEVICE_UNATTACHED 0
#define | DEVICE_ATTACHED 1
#define | DEVICE_POWERED 2
#define | DEVICE_DEFAULT 3
#define | DEVICE_ADDRESSED 4
#define | DEVICE_CONFIGURED 5
#define | DEVICE_READY 6
#define | DEVICE_ERROR 7
#define | DEVICE_SUSPENDED 8
#define | DEVICE_WAIT_RESUME 9
#define | DEVICE_DISCONNECTED 10
#define | DEVICE_DISCONNECTED_ACK 11
#define | Host_set_device_supported() (device_status |= 0x01)
#define | Host_clear_device_supported() (device_status &= ~0x01)
#define | Is_host_device_supported() (device_status & 0x01)
#define | Host_set_device_ready() (device_status |= 0x02)
#define | Host_clear_device_ready() (device_status &= ~0x02)
#define | Is_host_device_ready() (device_status & 0x02)
#define | Host_set_configured() (device_status |= 0x04)
#define | Host_clear_configured() (device_status &= ~0x04)
#define | Is_host_configured() (device_status & 0x04)
#define | Host_clear_device_status() (device_status = 0x00)
## Functions
void | usb_host_task_init (void)
void | usb_host_task (void)
U8 | host_send_data (U8 pipe, U16 nb_data, U8 *buf)
U8 | host_get_data (U8 pipe, U16 *nb_data, U8 *buf)
U8 | host_get_data_interrupt (U8 pipe, U16 nb_data, U8 *buf, void(*handle)(U8 status, U16 nb_byte))
U8 | host_send_data_interrupt (U8 pipe, U16 nb_data, U8 *buf, void(*handle)(U8 status, U16 nb_byte))
void | reset_it_pipe_str (void)
U8 | is_any_interrupt_pipe_active (void)
## Variables
U8 | device_state
| Public : U8 device_state Its value represent the current state of the device connected to the usb host controller Value can be: DEVICE_ATTACHED DEVICE_POWERED DEVICE_SUSPENDED DEVICE_DEFAULT DEVICE_BASE_ADDRESSED DEVICE_CONFIGURED DEVICE_ERROR DEVICE_UNATTACHED DEVICE_READY DEVICE_WAIT_RESUME DEVICE_DISCONNECTED DEVICE_DISCONNECTED_ACK /.
U8 | request_resume
U8 | new_device_connected
U8 | force_enumeration

## Detailed Description

This file contains the function declarations for usb host task functions - Compiler: IAR EWAVR and GNU GCC for AVR

- Supported devices: AT90USB1287, AT90USB1286, AT90USB647, AT90USB646
  Author:
    Atmel Corporation: http://www.atmel.com
    Support and FAQ: http://support.atmel.no/

Definition in file usb_host_task.h.

## Define Documentation

#define PIPE_GOOD 0

Definition at line 69 of file usb_host_task.h.

Referenced by host_get_data(), host_mem_cbw_send(), host_mem_csw_read(), host_mem_mem_2_ram(), host_mem_mem_2_ram_stop(), host_mem_read_capacity(), host_mem_request_sense(), host_mem_wr_protect(), host_send_data(), and usb_pipe_interrupt().

#define PIPE_DATA_TOGGLE 0x01

Definition at line 70 of file usb_host_task.h.

#define PIPE_DATA_PID 0x02

Definition at line 71 of file usb_host_task.h.

#define PIPE_PID 0x04

Definition at line 72 of file usb_host_task.h.

#define PIPE_TIMEOUT 0x08

Definition at line 73 of file usb_host_task.h.

Referenced by host_send_data().

#define PIPE_CRC16 0x10

Definition at line 74 of file usb_host_task.h.

#define PIPE_STALL 0x20

Definition at line 75 of file usb_host_task.h.

Referenced by host_get_data(), host_mem_csw_read(), host_mem_inquiry(), host_mem_mem_2_ram(), host_mem_mem_2_ram_stop(), host_mem_ram_2_mem(), host_mem_read_capacity(), host_mem_request_sense(), host_mem_wr_protect(), host_send_data(), and usb_pipe_interrupt().

#define PIPE_NAK_TIMEOUT 0x40

Definition at line 76 of file usb_host_task.h.

Referenced by host_get_data(), host_send_data(), and usb_pipe_interrupt().

#define PIPE_DELAY_TIMEOUT 0x80

Definition at line 77 of file usb_host_task.h.

Referenced by host_get_data(), host_send_data(), and usb_general_interrupt().