Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
c67x00-ll-hpi.c File Reference
#include <asm/byteorder.h>
#include <linux/io.h>
#include <linux/jiffies.h>
#include <linux/usb/c67x00.h>
#include "c67x00.h"

Go to the source code of this file.

Data Structures

struct  c67x00_lcp_int_data
 

Macros

#define COMM_REGS   14
 
#define COMM_ACK   0x0FED
 
#define COMM_NAK   0xDEAD
 
#define COMM_RESET   0xFA50
 
#define COMM_EXEC_INT   0xCE01
 
#define COMM_INT_NUM   0x01C2
 
#define COMM_R(x)   (0x01C4 + 2 * (x))
 
#define HUSB_SIE_pCurrentTDPtr(x)   ((x) ? 0x01B2 : 0x01B0)
 
#define HUSB_SIE_pTDListDone_Sem(x)   ((x) ? 0x01B8 : 0x01B6)
 
#define HUSB_pEOT   0x01B4
 
#define HUSB_SIE_INIT_INT(x)   ((x) ? 0x0073 : 0x0072)
 
#define HUSB_RESET_INT   0x0074
 
#define SUSB_INIT_INT   0x0071
 
#define SUSB_INIT_INT_LOC   (SUSB_INIT_INT * 2)
 
#define HPI_DATA   0
 
#define HPI_MAILBOX   1
 
#define HPI_ADDR   2
 
#define HPI_STATUS   3
 

Functions

u16 c67x00_ll_hpi_status (struct c67x00_device *dev)
 
void c67x00_ll_hpi_reg_init (struct c67x00_device *dev)
 
void c67x00_ll_hpi_enable_sofeop (struct c67x00_sie *sie)
 
void c67x00_ll_hpi_disable_sofeop (struct c67x00_sie *sie)
 
u16 c67x00_ll_fetch_siemsg (struct c67x00_device *dev, int sie_num)
 
u16 c67x00_ll_get_usb_ctl (struct c67x00_sie *sie)
 
void c67x00_ll_usb_clear_status (struct c67x00_sie *sie, u16 bits)
 
u16 c67x00_ll_usb_get_status (struct c67x00_sie *sie)
 
void c67x00_ll_set_husb_eot (struct c67x00_device *dev, u16 value)
 
void c67x00_ll_husb_reset (struct c67x00_sie *sie, int port)
 
void c67x00_ll_husb_set_current_td (struct c67x00_sie *sie, u16 addr)
 
u16 c67x00_ll_husb_get_current_td (struct c67x00_sie *sie)
 
u16 c67x00_ll_husb_get_frame (struct c67x00_sie *sie)
 
void c67x00_ll_husb_init_host_port (struct c67x00_sie *sie)
 
void c67x00_ll_husb_reset_port (struct c67x00_sie *sie, int port)
 
void c67x00_ll_irq (struct c67x00_device *dev, u16 int_status)
 
int c67x00_ll_reset (struct c67x00_device *dev)
 
void c67x00_ll_write_mem_le16 (struct c67x00_device *dev, u16 addr, void *data, int len)
 
void c67x00_ll_read_mem_le16 (struct c67x00_device *dev, u16 addr, void *data, int len)
 
void c67x00_ll_init (struct c67x00_device *dev)
 
void c67x00_ll_release (struct c67x00_device *dev)
 

Macro Definition Documentation

#define COMM_ACK   0x0FED

Definition at line 39 of file c67x00-ll-hpi.c.

#define COMM_EXEC_INT   0xCE01

Definition at line 43 of file c67x00-ll-hpi.c.

#define COMM_INT_NUM   0x01C2

Definition at line 44 of file c67x00-ll-hpi.c.

#define COMM_NAK   0xDEAD

Definition at line 40 of file c67x00-ll-hpi.c.

#define COMM_R (   x)    (0x01C4 + 2 * (x))

Definition at line 47 of file c67x00-ll-hpi.c.

#define COMM_REGS   14

Definition at line 30 of file c67x00-ll-hpi.c.

#define COMM_RESET   0xFA50

Definition at line 42 of file c67x00-ll-hpi.c.

#define HPI_ADDR   2

Definition at line 73 of file c67x00-ll-hpi.c.

#define HPI_DATA   0

Definition at line 71 of file c67x00-ll-hpi.c.

#define HPI_MAILBOX   1

Definition at line 72 of file c67x00-ll-hpi.c.

#define HPI_STATUS   3

Definition at line 74 of file c67x00-ll-hpi.c.

#define HUSB_pEOT   0x01B4

Definition at line 51 of file c67x00-ll-hpi.c.

#define HUSB_RESET_INT   0x0074

Definition at line 56 of file c67x00-ll-hpi.c.

#define HUSB_SIE_INIT_INT (   x)    ((x) ? 0x0073 : 0x0072)

Definition at line 55 of file c67x00-ll-hpi.c.

#define HUSB_SIE_pCurrentTDPtr (   x)    ((x) ? 0x01B2 : 0x01B0)

Definition at line 49 of file c67x00-ll-hpi.c.

#define HUSB_SIE_pTDListDone_Sem (   x)    ((x) ? 0x01B8 : 0x01B6)

Definition at line 50 of file c67x00-ll-hpi.c.

#define SUSB_INIT_INT   0x0071

Definition at line 58 of file c67x00-ll-hpi.c.

#define SUSB_INIT_INT_LOC   (SUSB_INIT_INT * 2)

Definition at line 59 of file c67x00-ll-hpi.c.

Function Documentation

u16 c67x00_ll_fetch_siemsg ( struct c67x00_device dev,
int  sie_num 
)

Definition at line 253 of file c67x00-ll-hpi.c.

u16 c67x00_ll_get_usb_ctl ( struct c67x00_sie sie)

Definition at line 264 of file c67x00-ll-hpi.c.

void c67x00_ll_hpi_disable_sofeop ( struct c67x00_sie sie)

Definition at line 231 of file c67x00-ll-hpi.c.

void c67x00_ll_hpi_enable_sofeop ( struct c67x00_sie sie)

Definition at line 225 of file c67x00-ll-hpi.c.

void c67x00_ll_hpi_reg_init ( struct c67x00_device dev)

Definition at line 211 of file c67x00-ll-hpi.c.

u16 c67x00_ll_hpi_status ( struct c67x00_device dev)

Definition at line 199 of file c67x00-ll-hpi.c.

u16 c67x00_ll_husb_get_current_td ( struct c67x00_sie sie)

Definition at line 337 of file c67x00-ll-hpi.c.

u16 c67x00_ll_husb_get_frame ( struct c67x00_sie sie)

Definition at line 342 of file c67x00-ll-hpi.c.

void c67x00_ll_husb_init_host_port ( struct c67x00_sie sie)

Definition at line 347 of file c67x00-ll-hpi.c.

void c67x00_ll_husb_reset ( struct c67x00_sie sie,
int  port 
)

Definition at line 320 of file c67x00-ll-hpi.c.

void c67x00_ll_husb_reset_port ( struct c67x00_sie sie,
int  port 
)

Definition at line 360 of file c67x00-ll-hpi.c.

void c67x00_ll_husb_set_current_td ( struct c67x00_sie sie,
u16  addr 
)

Definition at line 332 of file c67x00-ll-hpi.c.

void c67x00_ll_init ( struct c67x00_device dev)

Definition at line 473 of file c67x00-ll-hpi.c.

void c67x00_ll_irq ( struct c67x00_device dev,
u16  int_status 
)

Definition at line 377 of file c67x00-ll-hpi.c.

void c67x00_ll_read_mem_le16 ( struct c67x00_device dev,
u16  addr,
void data,
int  len 
)

c67x00_ll_read_mem_le16 - read from c67x00 memory Only data is little endian, addr has cpu endianess.

Definition at line 445 of file c67x00-ll-hpi.c.

void c67x00_ll_release ( struct c67x00_device dev)

Definition at line 479 of file c67x00-ll-hpi.c.

int c67x00_ll_reset ( struct c67x00_device dev)

Definition at line 388 of file c67x00-ll-hpi.c.

void c67x00_ll_set_husb_eot ( struct c67x00_device dev,
u16  value 
)

Definition at line 303 of file c67x00-ll-hpi.c.

void c67x00_ll_usb_clear_status ( struct c67x00_sie sie,
u16  bits 
)

c67x00_ll_usb_clear_status - clear the USB status bits

Definition at line 272 of file c67x00-ll-hpi.c.

u16 c67x00_ll_usb_get_status ( struct c67x00_sie sie)

Definition at line 277 of file c67x00-ll-hpi.c.

void c67x00_ll_write_mem_le16 ( struct c67x00_device dev,
u16  addr,
void data,
int  len 
)

c67x00_ll_write_mem_le16 - write into c67x00 memory Only data is little endian, addr has cpu endianess.

Definition at line 406 of file c67x00-ll-hpi.c.