Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
usb.c File Reference
#include <linux/module.h>
#include <linux/usb.h>
#include "debug.h"
#include "core.h"

Go to the source code of this file.

Data Structures

struct  ath6kl_usb_pipe
 
struct  ath6kl_usb
 
struct  ath6kl_urb_context
 
struct  ath6kl_usb_ctrl_diag_cmd_write
 
struct  ath6kl_usb_ctrl_diag_cmd_read
 
struct  ath6kl_usb_ctrl_diag_resp_read
 

Macros

#define TX_URB_COUNT   32
 
#define RX_URB_COUNT   32
 
#define ATH6KL_USB_RX_BUFFER_SIZE   1700
 
#define ATH6KL_USB_PIPE_INVALID   ATH6KL_USB_PIPE_MAX
 
#define ATH6KL_USB_PIPE_FLAG_TX   (1 << 0)
 
#define ATH6KL_USB_EP_ADDR_APP_CTRL_IN   0x81
 
#define ATH6KL_USB_EP_ADDR_APP_DATA_IN   0x82
 
#define ATH6KL_USB_EP_ADDR_APP_DATA2_IN   0x83
 
#define ATH6KL_USB_EP_ADDR_APP_INT_IN   0x84
 
#define ATH6KL_USB_EP_ADDR_APP_CTRL_OUT   0x01
 
#define ATH6KL_USB_EP_ADDR_APP_DATA_LP_OUT   0x02
 
#define ATH6KL_USB_EP_ADDR_APP_DATA_MP_OUT   0x03
 
#define ATH6KL_USB_EP_ADDR_APP_DATA_HP_OUT   0x04
 
#define ATH6KL_USB_CONTROL_REQ_SEND_BMI_CMD   1
 
#define ATH6KL_USB_CONTROL_REQ_RECV_BMI_RESP   2
 
#define ATH6KL_USB_CONTROL_REQ_DIAG_CMD   3
 
#define ATH6KL_USB_CONTROL_REQ_DIAG_RESP   4
 
#define ATH6KL_USB_CTRL_DIAG_CC_READ   0
 
#define ATH6KL_USB_CTRL_DIAG_CC_WRITE   1
 
#define ATH6KL_USB_IS_BULK_EP(attr)   (((attr) & 3) == 0x02)
 
#define ATH6KL_USB_IS_INT_EP(attr)   (((attr) & 3) == 0x03)
 
#define ATH6KL_USB_IS_ISOC_EP(attr)   (((attr) & 3) == 0x01)
 
#define ATH6KL_USB_IS_DIR_IN(addr)   ((addr) & 0x80)
 
#define ATH6KL_USB_MAX_DIAG_CMD   (sizeof(struct ath6kl_usb_ctrl_diag_cmd_write))
 
#define ATH6KL_USB_MAX_DIAG_RESP   (sizeof(struct ath6kl_usb_ctrl_diag_resp_read))
 
#define ath6kl_usb_suspend   NULL
 
#define ath6kl_usb_resume   NULL
 
#define ath6kl_usb_reset_resume   NULL
 

Enumerations

enum  ATH6KL_USB_PIPE_ID {
  ATH6KL_USB_PIPE_TX_CTRL = 0, ATH6KL_USB_PIPE_TX_DATA_LP, ATH6KL_USB_PIPE_TX_DATA_MP, ATH6KL_USB_PIPE_TX_DATA_HP,
  ATH6KL_USB_PIPE_RX_CTRL, ATH6KL_USB_PIPE_RX_DATA, ATH6KL_USB_PIPE_RX_DATA2, ATH6KL_USB_PIPE_RX_INT,
  ATH6KL_USB_PIPE_MAX
}
 

Functions

 MODULE_DEVICE_TABLE (usb, ath6kl_usb_ids)
 
 module_init (ath6kl_usb_init)
 
 module_exit (ath6kl_usb_exit)
 
 MODULE_AUTHOR ("Atheros Communications, Inc.")
 
 MODULE_DESCRIPTION ("Driver support for Atheros AR600x USB devices")
 
 MODULE_LICENSE ("Dual BSD/GPL")
 
 MODULE_FIRMWARE (AR6004_HW_1_0_FIRMWARE_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_0_BOARD_DATA_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_0_DEFAULT_BOARD_DATA_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_1_FIRMWARE_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_1_BOARD_DATA_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_1_DEFAULT_BOARD_DATA_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_2_FIRMWARE_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_2_BOARD_DATA_FILE)
 
 MODULE_FIRMWARE (AR6004_HW_1_2_DEFAULT_BOARD_DATA_FILE)
 

Variables

struct
ath6kl_usb_ctrl_diag_cmd_write 
__packed
 

Macro Definition Documentation

#define ATH6KL_USB_CONTROL_REQ_DIAG_CMD   3

Definition at line 98 of file usb.c.

#define ATH6KL_USB_CONTROL_REQ_DIAG_RESP   4

Definition at line 99 of file usb.c.

#define ATH6KL_USB_CONTROL_REQ_RECV_BMI_RESP   2

Definition at line 97 of file usb.c.

#define ATH6KL_USB_CONTROL_REQ_SEND_BMI_CMD   1

Definition at line 96 of file usb.c.

#define ATH6KL_USB_CTRL_DIAG_CC_READ   0

Definition at line 101 of file usb.c.

#define ATH6KL_USB_CTRL_DIAG_CC_WRITE   1

Definition at line 102 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_CTRL_IN   0x81

Definition at line 85 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_CTRL_OUT   0x01

Definition at line 90 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_DATA2_IN   0x83

Definition at line 87 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_DATA_HP_OUT   0x04

Definition at line 93 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_DATA_IN   0x82

Definition at line 86 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_DATA_LP_OUT   0x02

Definition at line 91 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_DATA_MP_OUT   0x03

Definition at line 92 of file usb.c.

#define ATH6KL_USB_EP_ADDR_APP_INT_IN   0x84

Definition at line 88 of file usb.c.

#define ATH6KL_USB_IS_BULK_EP (   attr)    (((attr) & 3) == 0x02)

Definition at line 123 of file usb.c.

#define ATH6KL_USB_IS_DIR_IN (   addr)    ((addr) & 0x80)

Definition at line 126 of file usb.c.

#define ATH6KL_USB_IS_INT_EP (   attr)    (((attr) & 3) == 0x03)

Definition at line 124 of file usb.c.

#define ATH6KL_USB_IS_ISOC_EP (   attr)    (((attr) & 3) == 0x01)

Definition at line 125 of file usb.c.

#define ATH6KL_USB_MAX_DIAG_CMD   (sizeof(struct ath6kl_usb_ctrl_diag_cmd_write))

Definition at line 598 of file usb.c.

#define ATH6KL_USB_MAX_DIAG_RESP   (sizeof(struct ath6kl_usb_ctrl_diag_resp_read))

Definition at line 599 of file usb.c.

#define ATH6KL_USB_PIPE_FLAG_TX   (1 << 0)

Definition at line 61 of file usb.c.

#define ATH6KL_USB_PIPE_INVALID   ATH6KL_USB_PIPE_MAX

Definition at line 42 of file usb.c.

#define ath6kl_usb_reset_resume   NULL

Definition at line 1173 of file usb.c.

#define ath6kl_usb_resume   NULL

Definition at line 1172 of file usb.c.

#define ATH6KL_USB_RX_BUFFER_SIZE   1700

Definition at line 27 of file usb.c.

#define ath6kl_usb_suspend   NULL

Definition at line 1171 of file usb.c.

#define RX_URB_COUNT   32

Definition at line 26 of file usb.c.

#define TX_URB_COUNT   32

Definition at line 25 of file usb.c.

Enumeration Type Documentation

Enumerator:
ATH6KL_USB_PIPE_TX_CTRL 
ATH6KL_USB_PIPE_TX_DATA_LP 
ATH6KL_USB_PIPE_TX_DATA_MP 
ATH6KL_USB_PIPE_TX_DATA_HP 
ATH6KL_USB_PIPE_RX_CTRL 
ATH6KL_USB_PIPE_RX_DATA 
ATH6KL_USB_PIPE_RX_DATA2 
ATH6KL_USB_PIPE_RX_INT 
ATH6KL_USB_PIPE_MAX 

Definition at line 30 of file usb.c.

Function Documentation

MODULE_AUTHOR ( "Atheros  Communications,
Inc."   
)
MODULE_DESCRIPTION ( "Driver support for Atheros AR600x USB devices )
MODULE_DEVICE_TABLE ( usb  ,
ath6kl_usb_ids   
)
module_exit ( ath6kl_usb_exit  )
MODULE_FIRMWARE ( AR6004_HW_1_0_FIRMWARE_FILE  )
MODULE_FIRMWARE ( AR6004_HW_1_0_BOARD_DATA_FILE  )
MODULE_FIRMWARE ( AR6004_HW_1_1_FIRMWARE_FILE  )
MODULE_FIRMWARE ( AR6004_HW_1_1_BOARD_DATA_FILE  )
MODULE_FIRMWARE ( AR6004_HW_1_2_FIRMWARE_FILE  )
MODULE_FIRMWARE ( AR6004_HW_1_2_BOARD_DATA_FILE  )
module_init ( ath6kl_usb_init  )
MODULE_LICENSE ( "Dual BSD/GPL"  )

Variable Documentation