Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
e7163b19
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看板
提交
e7163b19
编写于
5月 08, 2018
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nouveau/gr/gf100-: virtualise r406500
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
60770fa2
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
21 addition
and
6 deletion
+21
-6
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c
+2
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h
+2
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c
+7
-2
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm200.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm200.c
+7
-2
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp100.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp100.c
+1
-2
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c
+1
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp107.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp107.c
+1
-0
未找到文件。
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c
浏览文件 @
e7163b19
...
...
@@ -1362,6 +1362,8 @@ gf100_grctx_generate_floorsweep(struct gf100_gr *gr)
func
->
max_ways_evict
(
gr
);
if
(
func
->
dist_skip_table
)
func
->
dist_skip_table
(
gr
);
if
(
func
->
r406500
)
func
->
r406500
(
gr
);
}
void
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h
浏览文件 @
e7163b19
...
...
@@ -58,6 +58,7 @@ struct gf100_grctx_func {
void
(
*
alpha_beta_tables
)(
struct
gf100_gr
*
);
void
(
*
max_ways_evict
)(
struct
gf100_gr
*
);
void
(
*
dist_skip_table
)(
struct
gf100_gr
*
);
void
(
*
r406500
)(
struct
gf100_gr
*
);
};
extern
const
struct
gf100_grctx_func
gf100_grctx
;
...
...
@@ -115,6 +116,7 @@ void gm107_grctx_generate_attrib(struct gf100_grctx *);
extern
const
struct
gf100_grctx_func
gm200_grctx
;
void
gm200_grctx_generate_dist_skip_table
(
struct
gf100_gr
*
);
void
gm200_grctx_generate_r406500
(
struct
gf100_gr
*
);
void
gm200_grctx_generate_405b60
(
struct
gf100_gr
*
);
extern
const
struct
gf100_grctx_func
gm20b_grctx
;
...
...
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c
浏览文件 @
e7163b19
...
...
@@ -930,6 +930,12 @@ gm107_grctx_generate_attrib(struct gf100_grctx *info)
}
}
static
void
gm107_grctx_generate_r406500
(
struct
gf100_gr
*
gr
)
{
nvkm_wr32
(
gr
->
base
.
engine
.
subdev
.
device
,
0x406500
,
0x00000001
);
}
void
gm107_grctx_generate_sm_id
(
struct
gf100_gr
*
gr
,
int
gpc
,
int
tpc
,
int
sm
)
{
...
...
@@ -961,8 +967,6 @@ gm107_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)
gf100_grctx_generate_floorsweep
(
gr
);
nvkm_wr32
(
device
,
0x406500
,
0x00000001
);
nvkm_wr32
(
device
,
0x405b00
,
(
gr
->
tpc_total
<<
8
)
|
gr
->
gpc_nr
);
gf100_gr_icmd
(
gr
,
grctx
->
icmd
);
...
...
@@ -1002,4 +1006,5 @@ gm107_grctx = {
.
rop_mapping
=
gf117_grctx_generate_rop_mapping
,
.
alpha_beta_tables
=
gk104_grctx_generate_alpha_beta_tables
,
.
dist_skip_table
=
gf117_grctx_generate_dist_skip_table
,
.
r406500
=
gm107_grctx_generate_r406500
,
};
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm200.c
浏览文件 @
e7163b19
...
...
@@ -59,6 +59,12 @@ gm200_grctx_generate_405b60(struct gf100_gr *gr)
nvkm_wr32
(
device
,
0x405ba0
+
(
i
*
4
),
gpcs
[
i
]);
}
void
gm200_grctx_generate_r406500
(
struct
gf100_gr
*
gr
)
{
nvkm_wr32
(
gr
->
base
.
engine
.
subdev
.
device
,
0x406500
,
0x00000000
);
}
static
void
gm200_grctx_generate_main
(
struct
gf100_gr
*
gr
,
struct
gf100_grctx
*
info
)
{
...
...
@@ -78,8 +84,6 @@ gm200_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)
gf100_grctx_generate_floorsweep
(
gr
);
nvkm_wr32
(
device
,
0x406500
,
0x00000000
);
nvkm_wr32
(
device
,
0x405b00
,
(
gr
->
tpc_total
<<
8
)
|
gr
->
gpc_nr
);
for
(
tmp
=
0
,
i
=
0
;
i
<
gr
->
gpc_nr
;
i
++
)
...
...
@@ -136,4 +140,5 @@ gm200_grctx = {
.
sm_id
=
gm107_grctx_generate_sm_id
,
.
rop_mapping
=
gf117_grctx_generate_rop_mapping
,
.
dist_skip_table
=
gm200_grctx_generate_dist_skip_table
,
.
r406500
=
gm200_grctx_generate_r406500
,
};
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp100.c
浏览文件 @
e7163b19
...
...
@@ -140,8 +140,6 @@ gp100_grctx_generate_main(struct gf100_gr *gr, struct gf100_grctx *info)
gf100_grctx_generate_floorsweep
(
gr
);
nvkm_wr32
(
device
,
0x406500
,
0x00000000
);
nvkm_wr32
(
device
,
0x405b00
,
(
gr
->
tpc_total
<<
8
)
|
gr
->
gpc_nr
);
for
(
tmp
=
0
,
i
=
0
;
i
<
gr
->
gpc_nr
;
i
++
)
...
...
@@ -173,4 +171,5 @@ gp100_grctx = {
.
sm_id
=
gm107_grctx_generate_sm_id
,
.
rop_mapping
=
gf117_grctx_generate_rop_mapping
,
.
dist_skip_table
=
gm200_grctx_generate_dist_skip_table
,
.
r406500
=
gm200_grctx_generate_r406500
,
};
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c
浏览文件 @
e7163b19
...
...
@@ -97,4 +97,5 @@ gp102_grctx = {
.
sm_id
=
gm107_grctx_generate_sm_id
,
.
rop_mapping
=
gf117_grctx_generate_rop_mapping
,
.
dist_skip_table
=
gm200_grctx_generate_dist_skip_table
,
.
r406500
=
gm200_grctx_generate_r406500
,
};
drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp107.c
浏览文件 @
e7163b19
...
...
@@ -47,4 +47,5 @@ gp107_grctx = {
.
sm_id
=
gm107_grctx_generate_sm_id
,
.
rop_mapping
=
gf117_grctx_generate_rop_mapping
,
.
dist_skip_table
=
gm200_grctx_generate_dist_skip_table
,
.
r406500
=
gm200_grctx_generate_r406500
,
};
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录