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
include
scsi
sas_ata.h
Go to the documentation of this file.
1
/*
2
* Support for SATA devices on Serial Attached SCSI (SAS) controllers
3
*
4
* Copyright (C) 2006 IBM Corporation
5
*
6
* Written by: Darrick J. Wong <
[email protected]
>, IBM Corporation
7
*
8
* This program is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License as
10
* published by the Free Software Foundation; either version 2 of the
11
* License, or (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful, but
14
* WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
* General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program; if not, write to the Free Software
20
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
21
* USA
22
*
23
*/
24
25
#ifndef _SAS_ATA_H_
26
#define _SAS_ATA_H_
27
28
#include <
linux/libata.h
>
29
#include <
scsi/libsas.h
>
30
31
#ifdef CONFIG_SCSI_SAS_ATA
32
33
static
inline
int
dev_is_sata(
struct
domain_device
*
dev
)
34
{
35
return
dev->
dev_type
==
SATA_DEV
|| dev->
dev_type
==
SATA_PM
||
36
dev->
dev_type
==
SATA_PM_PORT
|| dev->
dev_type
==
SATA_PENDING
;
37
}
38
39
int
sas_get_ata_info
(
struct
domain_device
*
dev
,
struct
ex_phy
*
phy
);
40
int
sas_ata_init
(
struct
domain_device
*
dev
);
41
void
sas_ata_task_abort
(
struct
sas_task
*
task
);
42
void
sas_ata_strategy_handler
(
struct
Scsi_Host
*
shost
);
43
void
sas_ata_eh
(
struct
Scsi_Host
*
shost
,
struct
list_head
*work_q,
44
struct
list_head
*done_q);
45
void
sas_ata_schedule_reset
(
struct
domain_device
*
dev
);
46
void
sas_ata_wait_eh
(
struct
domain_device
*
dev
);
47
void
sas_probe_sata
(
struct
asd_sas_port
*
port
);
48
void
sas_suspend_sata
(
struct
asd_sas_port
*
port
);
49
void
sas_resume_sata
(
struct
asd_sas_port
*
port
);
50
void
sas_ata_end_eh
(
struct
ata_port
*ap);
51
#else
52
53
54
static
inline
int
dev_is_sata(
struct
domain_device
*
dev
)
55
{
56
return
0;
57
}
58
static
inline
int
sas_ata_init
(
struct
domain_device
*
dev
)
59
{
60
return
0;
61
}
62
static
inline
void
sas_ata_task_abort
(
struct
sas_task
*
task
)
63
{
64
}
65
66
static
inline
void
sas_ata_strategy_handler
(
struct
Scsi_Host
*
shost
)
67
{
68
}
69
70
static
inline
void
sas_ata_eh
(
struct
Scsi_Host
*
shost
,
struct
list_head
*work_q,
71
struct
list_head
*done_q)
72
{
73
}
74
75
static
inline
void
sas_ata_schedule_reset
(
struct
domain_device
*
dev
)
76
{
77
}
78
79
static
inline
void
sas_ata_wait_eh
(
struct
domain_device
*
dev
)
80
{
81
}
82
83
static
inline
void
sas_probe_sata
(
struct
asd_sas_port
*
port
)
84
{
85
}
86
87
static
inline
void
sas_suspend_sata
(
struct
asd_sas_port
*
port
)
88
{
89
}
90
91
static
inline
void
sas_resume_sata
(
struct
asd_sas_port
*
port
)
92
{
93
}
94
95
static
inline
int
sas_get_ata_info
(
struct
domain_device
*
dev
,
struct
ex_phy
*
phy
)
96
{
97
return
0;
98
}
99
100
static
inline
void
sas_ata_end_eh
(
struct
ata_port
*ap)
101
{
102
}
103
#endif
104
105
#endif
/* _SAS_ATA_H_ */
Generated on Thu Jan 10 2013 14:53:27 for Linux Kernel by
1.8.2