Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
rts_pstor
rtsx_transport.h
Go to the documentation of this file.
1
/* Driver for Realtek PCI-Express card reader
2
* Header file
3
*
4
* Copyright(c) 2009 Realtek Semiconductor Corp. All rights reserved.
5
*
6
* This program is free software; you can redistribute it and/or modify it
7
* under the terms of the GNU General Public License as published by the
8
* Free Software Foundation; either version 2, or (at your option) any
9
* later version.
10
*
11
* This program is distributed in the hope that it will be useful, but
12
* WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License along
17
* with this program; if not, see <http://www.gnu.org/licenses/>.
18
*
19
* Author:
20
* wwang (
[email protected]
)
21
* No. 450, Shenhu Road, Suzhou Industry Park, Suzhou, China
22
*/
23
24
#ifndef __REALTEK_RTSX_TRANSPORT_H
25
#define __REALTEK_RTSX_TRANSPORT_H
26
27
#include "
rtsx.h
"
28
#include "
rtsx_chip.h
"
29
30
#define WAIT_TIME 2000
31
32
unsigned
int
rtsx_stor_access_xfer_buf
(
unsigned
char
*
buffer
,
33
unsigned
int
buflen
,
struct
scsi_cmnd
*
srb
,
unsigned
int
*
index
,
34
unsigned
int
*
offset
,
enum
xfer_buf_dir
dir);
35
void
rtsx_stor_set_xfer_buf
(
unsigned
char
*
buffer
,
36
unsigned
int
buflen
,
struct
scsi_cmnd
*
srb
);
37
void
rtsx_stor_get_xfer_buf
(
unsigned
char
*
buffer
,
38
unsigned
int
buflen
,
struct
scsi_cmnd
*
srb
);
39
void
rtsx_invoke_transport
(
struct
scsi_cmnd
*
srb
,
struct
rtsx_chip
*
chip
);
40
41
42
#define rtsx_init_cmd(chip) ((chip)->ci = 0)
43
44
void
rtsx_add_cmd
(
struct
rtsx_chip
*
chip
,
45
u8
cmd_type,
u16
reg_addr
,
u8
mask
,
u8
data
);
46
void
rtsx_send_cmd_no_wait
(
struct
rtsx_chip
*
chip
);
47
int
rtsx_send_cmd
(
struct
rtsx_chip
*
chip
,
u8
card
,
int
timeout);
48
49
extern
inline
u8
*
rtsx_get_cmd_data
(
struct
rtsx_chip
*
chip
)
50
{
51
#ifdef CMD_USING_SG
52
return
(
u8
*)(chip->
host_sg_tbl_ptr
);
53
#else
54
return
(
u8
*)(chip->
host_cmds_ptr
);
55
#endif
56
}
57
58
int
rtsx_transfer_data
(
struct
rtsx_chip
*
chip
,
u8
card
,
void
*
buf
,
size_t
len,
59
int
use_sg,
enum
dma_data_direction
dma_dir,
int
timeout);
60
61
int
rtsx_transfer_data_partial
(
struct
rtsx_chip
*
chip
,
u8
card
,
void
*
buf
,
size_t
len,
62
int
use_sg,
unsigned
int
*
index
,
unsigned
int
*
offset
,
63
enum
dma_data_direction
dma_dir,
int
timeout);
64
65
#endif
/* __REALTEK_RTSX_TRANSPORT_H */
66
Generated on Thu Jan 10 2013 14:31:26 for Linux Kernel by
1.8.2