Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
816fd404
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
160
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
816fd404
编写于
2月 28, 2006
作者:
J
Jeff Garzik
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'for-jeff' of
git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6
上级
ec72070b
576cfa93
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
24 addition
and
16 deletion
+24
-16
drivers/net/8139cp.c
drivers/net/8139cp.c
+21
-16
drivers/net/via-velocity.c
drivers/net/via-velocity.c
+3
-0
未找到文件。
drivers/net/8139cp.c
浏览文件 @
816fd404
...
@@ -1118,13 +1118,18 @@ static int cp_refill_rx (struct cp_private *cp)
...
@@ -1118,13 +1118,18 @@ static int cp_refill_rx (struct cp_private *cp)
return
-
ENOMEM
;
return
-
ENOMEM
;
}
}
static
void
cp_init_rings_index
(
struct
cp_private
*
cp
)
{
cp
->
rx_tail
=
0
;
cp
->
tx_head
=
cp
->
tx_tail
=
0
;
}
static
int
cp_init_rings
(
struct
cp_private
*
cp
)
static
int
cp_init_rings
(
struct
cp_private
*
cp
)
{
{
memset
(
cp
->
tx_ring
,
0
,
sizeof
(
struct
cp_desc
)
*
CP_TX_RING_SIZE
);
memset
(
cp
->
tx_ring
,
0
,
sizeof
(
struct
cp_desc
)
*
CP_TX_RING_SIZE
);
cp
->
tx_ring
[
CP_TX_RING_SIZE
-
1
].
opts1
=
cpu_to_le32
(
RingEnd
);
cp
->
tx_ring
[
CP_TX_RING_SIZE
-
1
].
opts1
=
cpu_to_le32
(
RingEnd
);
cp
->
rx_tail
=
0
;
cp_init_rings_index
(
cp
);
cp
->
tx_head
=
cp
->
tx_tail
=
0
;
return
cp_refill_rx
(
cp
);
return
cp_refill_rx
(
cp
);
}
}
...
@@ -1886,30 +1891,30 @@ static int cp_suspend (struct pci_dev *pdev, pm_message_t state)
...
@@ -1886,30 +1891,30 @@ static int cp_suspend (struct pci_dev *pdev, pm_message_t state)
spin_unlock_irqrestore
(
&
cp
->
lock
,
flags
);
spin_unlock_irqrestore
(
&
cp
->
lock
,
flags
);
if
(
cp
->
pdev
&&
cp
->
wol_enabled
)
{
pci_save_state
(
pdev
);
pci_save_state
(
cp
->
pdev
);
pci_enable_wake
(
pdev
,
pci_choose_state
(
pdev
,
state
),
cp
->
wol_enabled
);
cp_set_d3_state
(
cp
);
pci_set_power_state
(
pdev
,
pci_choose_state
(
pdev
,
state
));
}
return
0
;
return
0
;
}
}
static
int
cp_resume
(
struct
pci_dev
*
pdev
)
static
int
cp_resume
(
struct
pci_dev
*
pdev
)
{
{
struct
net_device
*
dev
;
struct
net_device
*
dev
=
pci_get_drvdata
(
pdev
)
;
struct
cp_private
*
cp
;
struct
cp_private
*
cp
=
netdev_priv
(
dev
)
;
unsigned
long
flags
;
unsigned
long
flags
;
dev
=
pci_get_drvdata
(
pdev
);
if
(
!
netif_running
(
dev
))
cp
=
netdev_priv
(
dev
)
;
return
0
;
netif_device_attach
(
dev
);
netif_device_attach
(
dev
);
if
(
cp
->
pdev
&&
cp
->
wol_enabled
)
{
pci_set_power_state
(
pdev
,
PCI_D0
);
pci_set_power_state
(
cp
->
pdev
,
PCI_D0
);
pci_restore_state
(
pdev
);
pci_restore_state
(
cp
->
pdev
);
pci_enable_wake
(
pdev
,
PCI_D0
,
0
);
}
/* FIXME: sh*t may happen if the Rx ring buffer is depleted */
cp_init_rings_index
(
cp
);
cp_init_hw
(
cp
);
cp_init_hw
(
cp
);
netif_start_queue
(
dev
);
netif_start_queue
(
dev
);
...
...
drivers/net/via-velocity.c
浏览文件 @
816fd404
...
@@ -1106,6 +1106,9 @@ static void velocity_free_rd_ring(struct velocity_info *vptr)
...
@@ -1106,6 +1106,9 @@ static void velocity_free_rd_ring(struct velocity_info *vptr)
for
(
i
=
0
;
i
<
vptr
->
options
.
numrx
;
i
++
)
{
for
(
i
=
0
;
i
<
vptr
->
options
.
numrx
;
i
++
)
{
struct
velocity_rd_info
*
rd_info
=
&
(
vptr
->
rd_info
[
i
]);
struct
velocity_rd_info
*
rd_info
=
&
(
vptr
->
rd_info
[
i
]);
struct
rx_desc
*
rd
=
vptr
->
rd_ring
+
i
;
memset
(
rd
,
0
,
sizeof
(
*
rd
));
if
(
!
rd_info
->
skb
)
if
(
!
rd_info
->
skb
)
continue
;
continue
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录