Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
ba3fe8fb
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看板
提交
ba3fe8fb
编写于
11月 12, 2005
作者:
J
Jeff Garzik
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[libata sata_mv] move code around
No content change, just prepping up future mv_hw_ops modularization.
上级
bca1c4eb
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
48 addition
and
48 deletion
+48
-48
drivers/scsi/sata_mv.c
drivers/scsi/sata_mv.c
+48
-48
未找到文件。
drivers/scsi/sata_mv.c
浏览文件 @
ba3fe8fb
...
...
@@ -1243,11 +1243,59 @@ static irqreturn_t mv_interrupt(int irq, void *dev_instance,
return
IRQ_RETVAL
(
handled
);
}
static
void
mv_cfg_signal5
(
struct
mv_host_priv
*
hpriv
,
int
idx
,
void
__iomem
*
mmio
)
{
/* FIXME */
}
static
void
mv_enable_leds5
(
struct
mv_host_priv
*
hpriv
,
void
__iomem
*
mmio
)
{
/* FIXME */
}
static
void
mv_phy_errata5
(
struct
ata_port
*
ap
)
{
/* FIXME */
}
static
void
mv_cfg_signal6
(
struct
mv_host_priv
*
hpriv
,
int
idx
,
void
__iomem
*
mmio
)
{
void
__iomem
*
port_mmio
;
u32
tmp
;
if
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1A1
)
{
hpriv
->
signal
[
idx
].
amps
=
0x5
<<
8
;
hpriv
->
signal
[
idx
].
pre
=
0x3
<<
5
;
return
;
}
assert
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1B0
);
tmp
=
readl
(
mmio
+
MV_RESET_CFG
);
if
((
tmp
&
(
1
<<
0
))
==
0
)
{
hpriv
->
signal
[
idx
].
amps
=
0x4
<<
8
;
hpriv
->
signal
[
idx
].
pre
=
0x1
<<
5
;
return
;
}
port_mmio
=
mv_port_base
(
mmio
,
idx
);
tmp
=
readl
(
port_mmio
+
PHY_MODE2
);
hpriv
->
signal
[
idx
].
amps
=
tmp
&
0x700
;
/* bits 10:8 */
hpriv
->
signal
[
idx
].
pre
=
tmp
&
0xe0
;
/* bits 7:5 */
}
static
void
mv_enable_leds6
(
struct
mv_host_priv
*
hpriv
,
void
__iomem
*
mmio
)
{
if
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1A1
)
writel
(
0x00020060
,
mmio
+
MV_GPIO_PORT_CTL
);
else
if
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1B0
)
writel
(
0x00000060
,
mmio
+
MV_GPIO_PORT_CTL
);
}
static
void
mv_phy_errata6
(
struct
ata_port
*
ap
)
{
struct
mv_host_priv
*
hpriv
=
ap
->
host_set
->
private_data
;
...
...
@@ -1473,20 +1521,6 @@ static void mv_port_init(struct ata_ioports *port, void __iomem *port_mmio)
readl
(
port_mmio
+
EDMA_ERR_IRQ_MASK_OFS
));
}
static
void
mv_enable_leds5
(
struct
mv_host_priv
*
hpriv
,
void
__iomem
*
mmio
)
{
/* FIXME */
}
static
void
mv_enable_leds6
(
struct
mv_host_priv
*
hpriv
,
void
__iomem
*
mmio
)
{
if
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1A1
)
writel
(
0x00020060
,
mmio
+
MV_GPIO_PORT_CTL
);
else
if
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1B0
)
writel
(
0x00000060
,
mmio
+
MV_GPIO_PORT_CTL
);
}
static
void
mv_enable_leds
(
struct
mv_host_priv
*
hpriv
,
void
__iomem
*
mmio
)
{
if
(
IS_50XX
(
hpriv
))
...
...
@@ -1495,40 +1529,6 @@ static void mv_enable_leds(struct mv_host_priv *hpriv, void __iomem *mmio)
mv_enable_leds6
(
hpriv
,
mmio
);
}
static
void
mv_cfg_signal5
(
struct
mv_host_priv
*
hpriv
,
int
idx
,
void
__iomem
*
mmio
)
{
/* FIXME */
}
static
void
mv_cfg_signal6
(
struct
mv_host_priv
*
hpriv
,
int
idx
,
void
__iomem
*
mmio
)
{
void
__iomem
*
port_mmio
;
u32
tmp
;
if
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1A1
)
{
hpriv
->
signal
[
idx
].
amps
=
0x5
<<
8
;
hpriv
->
signal
[
idx
].
pre
=
0x3
<<
5
;
return
;
}
assert
(
hpriv
->
hp_flags
&
MV_HP_ERRATA_60X1B0
);
tmp
=
readl
(
mmio
+
MV_RESET_CFG
);
if
((
tmp
&
(
1
<<
0
))
==
0
)
{
hpriv
->
signal
[
idx
].
amps
=
0x4
<<
8
;
hpriv
->
signal
[
idx
].
pre
=
0x1
<<
5
;
return
;
}
port_mmio
=
mv_port_base
(
mmio
,
idx
);
tmp
=
readl
(
port_mmio
+
PHY_MODE2
);
hpriv
->
signal
[
idx
].
amps
=
tmp
&
0x700
;
/* bits 10:8 */
hpriv
->
signal
[
idx
].
pre
=
tmp
&
0xe0
;
/* bits 7:5 */
}
static
int
mv_cfg_errata
(
struct
pci_dev
*
pdev
,
struct
mv_host_priv
*
hpriv
,
unsigned
int
board_idx
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录