Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
0a84a513
K
Kernel
项目概览
openeuler
/
Kernel
接近 2 年 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
0a84a513
编写于
5月 08, 2018
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nouveau/gr/gf100-: virtualise init_419eb4 + apply fixes from traces
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
0feab025
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
37 addition
and
3 deletion
+37
-3
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
+10
-2
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h
+4
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c
+1
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c
+1
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c
+1
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c
+1
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c
+1
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c
+2
-1
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c
+15
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c
+1
-0
未找到文件。
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
浏览文件 @
0a84a513
...
...
@@ -1914,6 +1914,13 @@ gf100_gr_new_(const struct gf100_gr_func *func, struct nvkm_device *device,
return
0
;
}
void
gf100_gr_init_419eb4
(
struct
gf100_gr
*
gr
)
{
struct
nvkm_device
*
device
=
gr
->
base
.
engine
.
subdev
.
device
;
nvkm_mask
(
device
,
0x419eb4
,
0x00001000
,
0x00001000
);
}
void
gf100_gr_init_419cc0
(
struct
gf100_gr
*
gr
)
{
...
...
@@ -2059,8 +2066,8 @@ gf100_gr_init(struct gf100_gr *gr)
if
(
gr
->
func
->
init_419cc0
)
gr
->
func
->
init_419cc0
(
gr
);
nvkm_mask
(
device
,
0x419eb4
,
0x00001000
,
0x00001000
);
if
(
gr
->
func
->
init_419eb4
)
gr
->
func
->
init_419eb4
(
gr
);
for
(
gpc
=
0
;
gpc
<
gr
->
gpc_nr
;
gpc
++
)
{
nvkm_wr32
(
device
,
GPC_UNIT
(
gpc
,
0x0420
),
0xc0000000
);
...
...
@@ -2130,6 +2137,7 @@ gf100_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_40601c
=
gf100_gr_init_40601c
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
mmio
=
gf100_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gf100_gr_fecs_ucode
,
.
gpccs
.
ucode
=
&
gf100_gr_gpccs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h
浏览文件 @
0a84a513
...
...
@@ -135,6 +135,7 @@ struct gf100_gr_func {
void
(
*
init_40601c
)(
struct
gf100_gr
*
);
void
(
*
init_sked_hww_esr
)(
struct
gf100_gr
*
);
void
(
*
init_419cc0
)(
struct
gf100_gr
*
);
void
(
*
init_419eb4
)(
struct
gf100_gr
*
);
void
(
*
init_ppc_exceptions
)(
struct
gf100_gr
*
);
void
(
*
set_hww_esr_report_mask
)(
struct
gf100_gr
*
);
const
struct
gf100_gr_pack
*
mmio
;
...
...
@@ -159,6 +160,7 @@ void gf100_gr_init_num_active_ltcs(struct gf100_gr *);
void
gf100_gr_init_fecs_exceptions
(
struct
gf100_gr
*
);
void
gf100_gr_init_40601c
(
struct
gf100_gr
*
);
void
gf100_gr_init_419cc0
(
struct
gf100_gr
*
);
void
gf100_gr_init_419eb4
(
struct
gf100_gr
*
);
void
gf117_gr_init_zcull
(
struct
gf100_gr
*
);
...
...
@@ -168,6 +170,8 @@ void gk104_gr_init_rop_active_fbps(struct gf100_gr *);
void
gk104_gr_init_ppc_exceptions
(
struct
gf100_gr
*
);
void
gk104_gr_init_sked_hww_esr
(
struct
gf100_gr
*
);
void
gk110_gr_init_419eb4
(
struct
gf100_gr
*
);
int
gk20a_gr_init
(
struct
gf100_gr
*
);
int
gm200_gr_rops
(
struct
gf100_gr
*
);
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c
浏览文件 @
0a84a513
...
...
@@ -122,6 +122,7 @@ gf104_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_40601c
=
gf100_gr_init_40601c
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
mmio
=
gf104_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gf100_gr_fecs_ucode
,
.
gpccs
.
ucode
=
&
gf100_gr_gpccs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c
浏览文件 @
0a84a513
...
...
@@ -120,6 +120,7 @@ gf108_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_40601c
=
gf100_gr_init_40601c
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
mmio
=
gf108_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gf100_gr_fecs_ucode
,
.
gpccs
.
ucode
=
&
gf100_gr_gpccs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c
浏览文件 @
0a84a513
...
...
@@ -94,6 +94,7 @@ gf110_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_40601c
=
gf100_gr_init_40601c
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
mmio
=
gf110_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gf100_gr_fecs_ucode
,
.
gpccs
.
ucode
=
&
gf100_gr_gpccs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c
浏览文件 @
0a84a513
...
...
@@ -158,6 +158,7 @@ gf117_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_40601c
=
gf100_gr_init_40601c
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
mmio
=
gf117_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gf117_gr_fecs_ucode
,
.
gpccs
.
ucode
=
&
gf117_gr_gpccs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c
浏览文件 @
0a84a513
...
...
@@ -185,6 +185,7 @@ gf119_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_40601c
=
gf100_gr_init_40601c
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
mmio
=
gf119_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gf100_gr_fecs_ucode
,
.
gpccs
.
ucode
=
&
gf100_gr_gpccs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c
浏览文件 @
0a84a513
...
...
@@ -461,7 +461,7 @@ gk104_gr_init(struct gf100_gr *gr)
nvkm_wr32
(
device
,
0x405840
,
0xc0000000
);
nvkm_wr32
(
device
,
0x405844
,
0x00ffffff
);
gr
->
func
->
init_419cc0
(
gr
);
nvkm_mask
(
device
,
0x419eb4
,
0x00001000
,
0x00001000
);
gr
->
func
->
init_419eb4
(
gr
);
gr
->
func
->
init_ppc_exceptions
(
gr
);
...
...
@@ -534,6 +534,7 @@ gk104_gr = {
.
init_fecs_exceptions
=
gk104_gr_init_fecs_exceptions
,
.
init_sked_hww_esr
=
gk104_gr_init_sked_hww_esr
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gf100_gr_init_419eb4
,
.
init_ppc_exceptions
=
gk104_gr_init_ppc_exceptions
,
.
mmio
=
gk104_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gk104_gr_fecs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c
浏览文件 @
0a84a513
...
...
@@ -334,6 +334,20 @@ gk110_gr_gpccs_ucode = {
.
data
.
size
=
sizeof
(
gk110_grgpc_data
),
};
void
gk110_gr_init_419eb4
(
struct
gf100_gr
*
gr
)
{
struct
nvkm_device
*
device
=
gr
->
base
.
engine
.
subdev
.
device
;
nvkm_mask
(
device
,
0x419eb4
,
0x00001000
,
0x00001000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00002000
,
0x00002000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00004000
,
0x00004000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00008000
,
0x00008000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00001000
,
0x00000000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00002000
,
0x00000000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00004000
,
0x00000000
);
nvkm_mask
(
device
,
0x419eb4
,
0x00008000
,
0x00000000
);
}
static
const
struct
gf100_gr_func
gk110_gr
=
{
.
init
=
gk104_gr_init
,
...
...
@@ -345,6 +359,7 @@ gk110_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_sked_hww_esr
=
gk104_gr_init_sked_hww_esr
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gk110_gr_init_419eb4
,
.
init_ppc_exceptions
=
gk104_gr_init_ppc_exceptions
,
.
mmio
=
gk110_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gk110_gr_fecs_ucode
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c
浏览文件 @
0a84a513
...
...
@@ -111,6 +111,7 @@ gk110b_gr = {
.
init_fecs_exceptions
=
gf100_gr_init_fecs_exceptions
,
.
init_sked_hww_esr
=
gk104_gr_init_sked_hww_esr
,
.
init_419cc0
=
gf100_gr_init_419cc0
,
.
init_419eb4
=
gk110_gr_init_419eb4
,
.
init_ppc_exceptions
=
gk104_gr_init_ppc_exceptions
,
.
mmio
=
gk110b_gr_pack_mmio
,
.
fecs
.
ucode
=
&
gk110_gr_fecs_ucode
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录