Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
5bf561ee
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
5bf561ee
编写于
12月 15, 2015
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nouveau/gr/gf100-: subclass nvkm_object to store channel pointer
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
f01c4e68
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
28 addition
and
0 deletion
+28
-0
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
+28
-0
未找到文件。
drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
浏览文件 @
5bf561ee
...
...
@@ -140,6 +140,12 @@ gf100_gr_zbc_depth_get(struct gf100_gr *gr, int format,
/*******************************************************************************
* Graphics object classes
******************************************************************************/
#define gf100_gr_object(p) container_of((p), struct gf100_gr_object, object)
struct
gf100_gr_object
{
struct
nvkm_object
object
;
struct
gf100_gr_chan
*
chan
;
};
static
int
gf100_fermi_mthd_zbc_color
(
struct
nvkm_object
*
object
,
void
*
data
,
u32
size
)
...
...
@@ -258,6 +264,27 @@ gf100_gr_mthd_sw(struct nvkm_device *device, u16 class, u32 mthd, u32 data)
return
false
;
}
static
const
struct
nvkm_object_func
gf100_gr_object_func
=
{
};
static
int
gf100_gr_object_new
(
const
struct
nvkm_oclass
*
oclass
,
void
*
data
,
u32
size
,
struct
nvkm_object
**
pobject
)
{
struct
gf100_gr_chan
*
chan
=
gf100_gr_chan
(
oclass
->
parent
);
struct
gf100_gr_object
*
object
;
if
(
!
(
object
=
kzalloc
(
sizeof
(
*
object
),
GFP_KERNEL
)))
return
-
ENOMEM
;
*
pobject
=
&
object
->
object
;
nvkm_object_ctor
(
oclass
->
base
.
func
?
oclass
->
base
.
func
:
&
gf100_gr_object_func
,
oclass
,
&
object
->
object
);
object
->
chan
=
chan
;
return
0
;
}
static
int
gf100_gr_object_get
(
struct
nvkm_gr
*
base
,
int
index
,
struct
nvkm_sclass
*
sclass
)
{
...
...
@@ -267,6 +294,7 @@ gf100_gr_object_get(struct nvkm_gr *base, int index, struct nvkm_sclass *sclass)
while
(
gr
->
func
->
sclass
[
c
].
oclass
)
{
if
(
c
++
==
index
)
{
*
sclass
=
gr
->
func
->
sclass
[
index
];
sclass
->
ctor
=
gf100_gr_object_new
;
return
index
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录