Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
b054aadf
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
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看板
提交
b054aadf
编写于
7月 04, 2013
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nvf0/gr: magic sequence that makes PGRAPH come out of hiding
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
9ec2dbba
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
48 addition
and
4 deletion
+48
-4
drivers/gpu/drm/nouveau/core/engine/device/nve0.c
drivers/gpu/drm/nouveau/core/engine/device/nve0.c
+0
-2
drivers/gpu/drm/nouveau/core/engine/graph/nvf0.c
drivers/gpu/drm/nouveau/core/engine/graph/nvf0.c
+48
-2
未找到文件。
drivers/gpu/drm/nouveau/core/engine/device/nve0.c
浏览文件 @
b054aadf
...
...
@@ -164,10 +164,8 @@ nve0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_SUBDEV_BAR
]
=
&
nvc0_bar_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DMAOBJ
]
=
&
nvd0_dmaeng_oclass
;
device
->
oclass
[
NVDEV_ENGINE_FIFO
]
=
&
nve0_fifo_oclass
;
#if 0
device
->
oclass
[
NVDEV_ENGINE_SW
]
=
&
nvc0_software_oclass
;
device
->
oclass
[
NVDEV_ENGINE_GR
]
=
nvf0_graph_oclass
;
#endif
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nvf0_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_COPY0
]
=
&
nve0_copy0_oclass
;
device
->
oclass
[
NVDEV_ENGINE_COPY1
]
=
&
nve0_copy1_oclass
;
...
...
drivers/gpu/drm/nouveau/core/engine/graph/nvf0.c
浏览文件 @
b054aadf
...
...
@@ -24,6 +24,15 @@
#include "nvc0.h"
/*******************************************************************************
* Graphics object classes
******************************************************************************/
static
struct
nouveau_oclass
nvf0_graph_sclass
[]
=
{
{}
};
/*******************************************************************************
* PGRAPH engine/subdev functions
******************************************************************************/
...
...
@@ -142,6 +151,43 @@ nvf0_graph_init_tpc[] = {
{}
};
static
int
nvf0_graph_fini
(
struct
nouveau_object
*
object
,
bool
suspend
)
{
struct
nvc0_graph_priv
*
priv
=
(
void
*
)
object
;
static
const
struct
{
u32
addr
;
u32
data
;
}
magic
[]
=
{
{
0x020520
,
0xfffffffc
},
{
0x020524
,
0xfffffffe
},
{
0x020524
,
0xfffffffc
},
{
0x020524
,
0xfffffff8
},
{
0x020524
,
0xffffffe0
},
{
0x020530
,
0xfffffffe
},
{
0x02052c
,
0xfffffffa
},
{
0x02052c
,
0xfffffff0
},
{
0x02052c
,
0xffffffc0
},
{
0x02052c
,
0xffffff00
},
{
0x02052c
,
0xfffffc00
},
{
0x02052c
,
0xfffcfc00
},
{
0x02052c
,
0xfff0fc00
},
{
0x02052c
,
0xff80fc00
},
{
0x020528
,
0xfffffffe
},
{
0x020528
,
0xfffffffc
},
};
int
i
;
nv_mask
(
priv
,
0x000200
,
0x08001000
,
0x00000000
);
nv_mask
(
priv
,
0x0206b4
,
0x00000000
,
0x00000000
);
for
(
i
=
0
;
i
<
ARRAY_SIZE
(
magic
);
i
++
)
{
nv_wr32
(
priv
,
magic
[
i
].
addr
,
magic
[
i
].
data
);
nv_wait
(
priv
,
magic
[
i
].
addr
,
0x80000000
,
0x00000000
);
}
return
nouveau_graph_fini
(
&
priv
->
base
,
suspend
);
}
static
struct
nvc0_graph_init
*
nvf0_graph_init_mmio
[]
=
{
nve4_graph_init_regs
,
...
...
@@ -168,9 +214,9 @@ nvf0_graph_oclass = &(struct nvc0_graph_oclass) {
.
ctor
=
nvc0_graph_ctor
,
.
dtor
=
nvc0_graph_dtor
,
.
init
=
nve4_graph_init
,
.
fini
=
_nouveau
_graph_fini
,
.
fini
=
nvf0
_graph_fini
,
},
.
cclass
=
&
nvf0_grctx_oclass
,
.
sclass
=
NULL
,
.
sclass
=
nvf0_graph_sclass
,
.
mmio
=
nvf0_graph_init_mmio
,
}.
base
;
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录