Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
218f3d30
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 3 年多
通知
13
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
218f3d30
编写于
10月 25, 2007
作者:
J
Jeff Garzik
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[libata] Create internal helper ata_dev_set_feature()
Signed-off-by:
N
Jeff Garzik
<
jgarzik@redhat.com
>
上级
c9927c2b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
15 deletion
+11
-15
drivers/ata/libata-core.c
drivers/ata/libata-core.c
+11
-15
未找到文件。
drivers/ata/libata-core.c
浏览文件 @
218f3d30
...
...
@@ -68,7 +68,8 @@ const unsigned long sata_deb_timing_long[] = { 100, 2000, 5000 };
static
unsigned
int
ata_dev_init_params
(
struct
ata_device
*
dev
,
u16
heads
,
u16
sectors
);
static
unsigned
int
ata_dev_set_xfermode
(
struct
ata_device
*
dev
);
static
unsigned
int
ata_dev_set_AN
(
struct
ata_device
*
dev
,
u8
enable
);
static
unsigned
int
ata_dev_set_feature
(
struct
ata_device
*
dev
,
u8
enable
,
u8
feature
);
static
void
ata_dev_xfermask
(
struct
ata_device
*
dev
);
static
unsigned
long
ata_dev_blacklisted
(
const
struct
ata_device
*
dev
);
...
...
@@ -1799,13 +1800,7 @@ int ata_dev_read_id(struct ata_device *dev, unsigned int *p_class,
* SET_FEATURES spin-up subcommand before it will accept
* anything other than the original IDENTIFY command.
*/
ata_tf_init
(
dev
,
&
tf
);
tf
.
command
=
ATA_CMD_SET_FEATURES
;
tf
.
feature
=
SETFEATURES_SPINUP
;
tf
.
protocol
=
ATA_PROT_NODATA
;
tf
.
flags
|=
ATA_TFLAG_ISADDR
|
ATA_TFLAG_DEVICE
;
err_mask
=
ata_exec_internal
(
dev
,
&
tf
,
NULL
,
DMA_NONE
,
NULL
,
0
,
0
);
err_mask
=
ata_dev_set_feature
(
dev
,
SETFEATURES_SPINUP
,
0
);
if
(
err_mask
&&
id
[
2
]
!=
0x738c
)
{
rc
=
-
EIO
;
reason
=
"SPINUP failed"
;
...
...
@@ -2075,7 +2070,8 @@ int ata_dev_configure(struct ata_device *dev)
unsigned
int
err_mask
;
/* issue SET feature command to turn this on */
err_mask
=
ata_dev_set_AN
(
dev
,
SETFEATURES_SATA_ENABLE
);
err_mask
=
ata_dev_set_feature
(
dev
,
SETFEATURES_SATA_ENABLE
,
SATA_AN
);
if
(
err_mask
)
ata_dev_printk
(
dev
,
KERN_ERR
,
"failed to enable ATAPI AN "
...
...
@@ -4181,15 +4177,14 @@ static unsigned int ata_dev_set_xfermode(struct ata_device *dev)
DPRINTK
(
"EXIT, err_mask=%x
\n
"
,
err_mask
);
return
err_mask
;
}
/**
* ata_dev_set_
AN
- Issue SET FEATURES - SATA FEATURES
* ata_dev_set_
feature
- Issue SET FEATURES - SATA FEATURES
* @dev: Device to which command will be sent
* @enable: Whether to enable or disable the feature
* @feature: The sector count represents the feature to set
*
* Issue SET FEATURES - SATA FEATURES command to device @dev
* on port @ap with sector count set to indicate Asynchronous
* Notification feature
* on port @ap with sector count
*
* LOCKING:
* PCI/etc. bus probe sem.
...
...
@@ -4197,7 +4192,8 @@ static unsigned int ata_dev_set_xfermode(struct ata_device *dev)
* RETURNS:
* 0 on success, AC_ERR_* mask otherwise.
*/
static
unsigned
int
ata_dev_set_AN
(
struct
ata_device
*
dev
,
u8
enable
)
static
unsigned
int
ata_dev_set_feature
(
struct
ata_device
*
dev
,
u8
enable
,
u8
feature
)
{
struct
ata_taskfile
tf
;
unsigned
int
err_mask
;
...
...
@@ -4210,7 +4206,7 @@ static unsigned int ata_dev_set_AN(struct ata_device *dev, u8 enable)
tf
.
feature
=
enable
;
tf
.
flags
|=
ATA_TFLAG_ISADDR
|
ATA_TFLAG_DEVICE
;
tf
.
protocol
=
ATA_PROT_NODATA
;
tf
.
nsect
=
SATA_AN
;
tf
.
nsect
=
feature
;
err_mask
=
ata_exec_internal
(
dev
,
&
tf
,
NULL
,
DMA_NONE
,
NULL
,
0
,
0
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录