Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
f9360c3a
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看板
提交
f9360c3a
编写于
5月 08, 2018
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nouveau/fifo/gk104-: simplify definition of channel classes
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
a7cf0180
变更
18
隐藏空白更改
内联
并排
Showing
18 changed file
with
71 addition
and
171 deletion
+71
-171
drivers/gpu/drm/nouveau/nvkm/engine/fifo/Kbuild
drivers/gpu/drm/nouveau/nvkm/engine/fifo/Kbuild
+0
-3
drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c
+17
-7
drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h
drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h
+1
-6
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c
+20
-8
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h
+5
-1
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm200.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm200.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm20b.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm20b.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp100.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp100.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp10b.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp10b.c
+3
-4
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c
+1
-10
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk110.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk110.c
+0
-34
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogm200.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogm200.c
+0
-34
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogp100.c
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogp100.c
+0
-34
drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h
drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h
+3
-2
未找到文件。
drivers/gpu/drm/nouveau/nvkm/engine/fifo/Kbuild
浏览文件 @
f9360c3a
...
@@ -31,6 +31,3 @@ nvkm-y += nvkm/engine/fifo/gpfifonv50.o
...
@@ -31,6 +31,3 @@ nvkm-y += nvkm/engine/fifo/gpfifonv50.o
nvkm-y += nvkm/engine/fifo/gpfifog84.o
nvkm-y += nvkm/engine/fifo/gpfifog84.o
nvkm-y += nvkm/engine/fifo/gpfifogf100.o
nvkm-y += nvkm/engine/fifo/gpfifogf100.o
nvkm-y += nvkm/engine/fifo/gpfifogk104.o
nvkm-y += nvkm/engine/fifo/gpfifogk104.o
nvkm-y += nvkm/engine/fifo/gpfifogk110.o
nvkm-y += nvkm/engine/fifo/gpfifogm200.o
nvkm-y += nvkm/engine/fifo/gpfifogp100.o
drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c
浏览文件 @
f9360c3a
...
@@ -215,6 +215,20 @@ nvkm_fifo_uevent(struct nvkm_fifo *fifo)
...
@@ -215,6 +215,20 @@ nvkm_fifo_uevent(struct nvkm_fifo *fifo)
nvkm_event_send
(
&
fifo
->
uevent
,
1
,
0
,
&
rep
,
sizeof
(
rep
));
nvkm_event_send
(
&
fifo
->
uevent
,
1
,
0
,
&
rep
,
sizeof
(
rep
));
}
}
static
int
nvkm_fifo_class_new_
(
struct
nvkm_device
*
device
,
const
struct
nvkm_oclass
*
oclass
,
void
*
data
,
u32
size
,
struct
nvkm_object
**
pobject
)
{
struct
nvkm_fifo
*
fifo
=
nvkm_fifo
(
oclass
->
engine
);
return
fifo
->
func
->
class_new
(
fifo
,
oclass
,
data
,
size
,
pobject
);
}
static
const
struct
nvkm_device_oclass
nvkm_fifo_class_
=
{
.
ctor
=
nvkm_fifo_class_new_
,
};
static
int
static
int
nvkm_fifo_class_new
(
struct
nvkm_device
*
device
,
nvkm_fifo_class_new
(
struct
nvkm_device
*
device
,
const
struct
nvkm_oclass
*
oclass
,
void
*
data
,
u32
size
,
const
struct
nvkm_oclass
*
oclass
,
void
*
data
,
u32
size
,
...
@@ -239,13 +253,9 @@ nvkm_fifo_class_get(struct nvkm_oclass *oclass, int index,
...
@@ -239,13 +253,9 @@ nvkm_fifo_class_get(struct nvkm_oclass *oclass, int index,
int
c
=
0
;
int
c
=
0
;
if
(
fifo
->
func
->
class_get
)
{
if
(
fifo
->
func
->
class_get
)
{
int
ret
=
fifo
->
func
->
class_get
(
fifo
,
index
,
&
sclass
);
int
ret
=
fifo
->
func
->
class_get
(
fifo
,
index
,
oclass
);
if
(
ret
==
0
)
{
if
(
ret
==
0
)
oclass
->
base
=
sclass
->
base
;
*
class
=
&
nvkm_fifo_class_
;
oclass
->
engn
=
sclass
;
*
class
=
&
nvkm_fifo_class
;
return
0
;
}
return
ret
;
return
ret
;
}
}
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h
浏览文件 @
f9360c3a
...
@@ -19,11 +19,6 @@ struct gk104_fifo_chan {
...
@@ -19,11 +19,6 @@ struct gk104_fifo_chan {
}
engn
[
NVKM_SUBDEV_NR
];
}
engn
[
NVKM_SUBDEV_NR
];
};
};
int
gk104_fifo_gpfifo_new
(
struct
nvkm
_fifo
*
,
const
struct
nvkm_oclass
*
,
int
gk104_fifo_gpfifo_new
(
struct
gk104
_fifo
*
,
const
struct
nvkm_oclass
*
,
void
*
data
,
u32
size
,
struct
nvkm_object
**
);
void
*
data
,
u32
size
,
struct
nvkm_object
**
);
extern
const
struct
nvkm_fifo_chan_oclass
gk104_fifo_gpfifo_oclass
;
extern
const
struct
nvkm_fifo_chan_oclass
gk110_fifo_gpfifo_oclass
;
extern
const
struct
nvkm_fifo_chan_oclass
gm200_fifo_gpfifo_oclass
;
extern
const
struct
nvkm_fifo_chan_oclass
gp100_fifo_gpfifo_oclass
;
#endif
#endif
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c
浏览文件 @
f9360c3a
...
@@ -94,16 +94,30 @@ gk104_fifo_engine_status(struct gk104_fifo *fifo, int engn,
...
@@ -94,16 +94,30 @@ gk104_fifo_engine_status(struct gk104_fifo *fifo, int engn,
status
->
chan
==
&
status
->
next
?
"*"
:
" "
);
status
->
chan
==
&
status
->
next
?
"*"
:
" "
);
}
}
static
int
gk104_fifo_class_new
(
struct
nvkm_fifo
*
base
,
const
struct
nvkm_oclass
*
oclass
,
void
*
argv
,
u32
argc
,
struct
nvkm_object
**
pobject
)
{
struct
gk104_fifo
*
fifo
=
gk104_fifo
(
base
);
if
(
oclass
->
engn
==
&
fifo
->
func
->
chan
)
{
const
struct
gk104_fifo_chan_user
*
user
=
oclass
->
engn
;
return
user
->
ctor
(
fifo
,
oclass
,
argv
,
argc
,
pobject
);
}
WARN_ON
(
1
);
return
-
EINVAL
;
}
static
int
static
int
gk104_fifo_class_get
(
struct
nvkm_fifo
*
base
,
int
index
,
gk104_fifo_class_get
(
struct
nvkm_fifo
*
base
,
int
index
,
const
struct
nvkm_fifo_chan_oclass
**
ps
class
)
struct
nvkm_oclass
*
o
class
)
{
{
struct
gk104_fifo
*
fifo
=
gk104_fifo
(
base
);
struct
gk104_fifo
*
fifo
=
gk104_fifo
(
base
);
int
c
=
0
;
int
c
=
0
;
while
((
*
psclass
=
fifo
->
func
->
chan
[
c
]))
{
if
(
fifo
->
func
->
chan
.
ctor
&&
c
++
==
index
)
{
if
(
c
++
==
index
)
oclass
->
base
=
fifo
->
func
->
chan
.
user
;
return
0
;
oclass
->
engn
=
&
fifo
->
func
->
chan
;
return
0
;
}
}
return
c
;
return
c
;
...
@@ -950,6 +964,7 @@ gk104_fifo_ = {
...
@@ -950,6 +964,7 @@ gk104_fifo_ = {
.
uevent_fini
=
gk104_fifo_uevent_fini
,
.
uevent_fini
=
gk104_fifo_uevent_fini
,
.
recover_chan
=
gk104_fifo_recover_chan
,
.
recover_chan
=
gk104_fifo_recover_chan
,
.
class_get
=
gk104_fifo_class_get
,
.
class_get
=
gk104_fifo_class_get
,
.
class_new
=
gk104_fifo_class_new
,
};
};
int
int
...
@@ -1096,10 +1111,7 @@ gk104_fifo = {
...
@@ -1096,10 +1111,7 @@ gk104_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
KEPLER_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gk104_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h
浏览文件 @
f9360c3a
...
@@ -51,7 +51,11 @@ struct gk104_fifo_func {
...
@@ -51,7 +51,11 @@ struct gk104_fifo_func {
const
struct
nvkm_enum
*
gpcclient
;
const
struct
nvkm_enum
*
gpcclient
;
}
fault
;
}
fault
;
const
struct
nvkm_fifo_chan_oclass
*
chan
[];
struct
gk104_fifo_chan_user
{
struct
nvkm_sclass
user
;
int
(
*
ctor
)(
struct
gk104_fifo
*
,
const
struct
nvkm_oclass
*
,
void
*
,
u32
,
struct
nvkm_object
**
);
}
chan
;
};
};
int
gk104_fifo_new_
(
const
struct
gk104_fifo_func
*
,
struct
nvkm_device
*
,
int
gk104_fifo_new_
(
const
struct
gk104_fifo_func
*
,
struct
nvkm_device
*
,
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c
浏览文件 @
f9360c3a
...
@@ -24,6 +24,8 @@
...
@@ -24,6 +24,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
static
const
struct
gk104_fifo_func
static
const
struct
gk104_fifo_func
gk110_fifo
=
{
gk110_fifo
=
{
.
fault
.
access
=
gk104_fifo_fault_access
,
.
fault
.
access
=
gk104_fifo_fault_access
,
...
@@ -31,10 +33,7 @@ gk110_fifo = {
...
@@ -31,10 +33,7 @@ gk110_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
KEPLER_CHANNEL_GPFIFO_B
},
gk104_fifo_gpfifo_new
},
&
gk110_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.c
浏览文件 @
f9360c3a
...
@@ -24,6 +24,8 @@
...
@@ -24,6 +24,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
static
const
struct
gk104_fifo_func
static
const
struct
gk104_fifo_func
gk208_fifo
=
{
gk208_fifo
=
{
.
fault
.
access
=
gk104_fifo_fault_access
,
.
fault
.
access
=
gk104_fifo_fault_access
,
...
@@ -31,10 +33,7 @@ gk208_fifo = {
...
@@ -31,10 +33,7 @@ gk208_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
KEPLER_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gk104_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.c
浏览文件 @
f9360c3a
...
@@ -22,6 +22,8 @@
...
@@ -22,6 +22,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
static
const
struct
gk104_fifo_func
static
const
struct
gk104_fifo_func
gk20a_fifo
=
{
gk20a_fifo
=
{
.
fault
.
access
=
gk104_fifo_fault_access
,
.
fault
.
access
=
gk104_fifo_fault_access
,
...
@@ -29,10 +31,7 @@ gk20a_fifo = {
...
@@ -29,10 +31,7 @@ gk20a_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
KEPLER_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gk104_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.c
浏览文件 @
f9360c3a
...
@@ -24,6 +24,8 @@
...
@@ -24,6 +24,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
const
struct
nvkm_enum
const
struct
nvkm_enum
gm107_fifo_fault_engine
[]
=
{
gm107_fifo_fault_engine
[]
=
{
{
0x01
,
"DISPLAY"
},
{
0x01
,
"DISPLAY"
},
...
@@ -54,10 +56,7 @@ gm107_fifo = {
...
@@ -54,10 +56,7 @@ gm107_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
KEPLER_CHANNEL_GPFIFO_B
},
gk104_fifo_gpfifo_new
},
&
gk110_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm200.c
浏览文件 @
f9360c3a
...
@@ -24,6 +24,8 @@
...
@@ -24,6 +24,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
static
const
struct
gk104_fifo_func
static
const
struct
gk104_fifo_func
gm200_fifo
=
{
gm200_fifo
=
{
.
fault
.
access
=
gk104_fifo_fault_access
,
.
fault
.
access
=
gk104_fifo_fault_access
,
...
@@ -31,10 +33,7 @@ gm200_fifo = {
...
@@ -31,10 +33,7 @@ gm200_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
MAXWELL_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gm200_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm20b.c
浏览文件 @
f9360c3a
...
@@ -22,6 +22,8 @@
...
@@ -22,6 +22,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
static
const
struct
gk104_fifo_func
static
const
struct
gk104_fifo_func
gm20b_fifo
=
{
gm20b_fifo
=
{
.
fault
.
access
=
gk104_fifo_fault_access
,
.
fault
.
access
=
gk104_fifo_fault_access
,
...
@@ -29,10 +31,7 @@ gm20b_fifo = {
...
@@ -29,10 +31,7 @@ gm20b_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
MAXWELL_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gm200_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp100.c
浏览文件 @
f9360c3a
...
@@ -24,6 +24,8 @@
...
@@ -24,6 +24,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
const
struct
nvkm_enum
const
struct
nvkm_enum
gp100_fifo_fault_engine
[]
=
{
gp100_fifo_fault_engine
[]
=
{
{
0x01
,
"DISPLAY"
},
{
0x01
,
"DISPLAY"
},
...
@@ -55,10 +57,7 @@ gp100_fifo = {
...
@@ -55,10 +57,7 @@ gp100_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
PASCAL_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gp100_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp10b.c
浏览文件 @
f9360c3a
...
@@ -22,6 +22,8 @@
...
@@ -22,6 +22,8 @@
#include "gk104.h"
#include "gk104.h"
#include "changk104.h"
#include "changk104.h"
#include <nvif/class.h>
static
const
struct
gk104_fifo_func
static
const
struct
gk104_fifo_func
gp10b_fifo
=
{
gp10b_fifo
=
{
.
fault
.
access
=
gk104_fifo_fault_access
,
.
fault
.
access
=
gk104_fifo_fault_access
,
...
@@ -29,10 +31,7 @@ gp10b_fifo = {
...
@@ -29,10 +31,7 @@ gp10b_fifo = {
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
reason
=
gk104_fifo_fault_reason
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
hubclient
=
gk104_fifo_fault_hubclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
fault
.
gpcclient
=
gk104_fifo_fault_gpcclient
,
.
chan
=
{
.
chan
=
{{
0
,
0
,
PASCAL_CHANNEL_GPFIFO_A
},
gk104_fifo_gpfifo_new
},
&
gp100_fifo_gpfifo_oclass
,
NULL
},
};
};
int
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c
浏览文件 @
f9360c3a
...
@@ -296,14 +296,13 @@ gk104_fifo_gpfifo_new_(struct gk104_fifo *fifo, u64 *runlists, u16 *chid,
...
@@ -296,14 +296,13 @@ gk104_fifo_gpfifo_new_(struct gk104_fifo *fifo, u64 *runlists, u16 *chid,
}
}
int
int
gk104_fifo_gpfifo_new
(
struct
nvkm_fifo
*
base
,
const
struct
nvkm_oclass
*
oclass
,
gk104_fifo_gpfifo_new
(
struct
gk104_fifo
*
fifo
,
const
struct
nvkm_oclass
*
oclass
,
void
*
data
,
u32
size
,
struct
nvkm_object
**
pobject
)
void
*
data
,
u32
size
,
struct
nvkm_object
**
pobject
)
{
{
struct
nvkm_object
*
parent
=
oclass
->
parent
;
struct
nvkm_object
*
parent
=
oclass
->
parent
;
union
{
union
{
struct
kepler_channel_gpfifo_a_v0
v0
;
struct
kepler_channel_gpfifo_a_v0
v0
;
}
*
args
=
data
;
}
*
args
=
data
;
struct
gk104_fifo
*
fifo
=
gk104_fifo
(
base
);
int
ret
=
-
ENOSYS
;
int
ret
=
-
ENOSYS
;
nvif_ioctl
(
parent
,
"create channel gpfifo size %d
\n
"
,
size
);
nvif_ioctl
(
parent
,
"create channel gpfifo size %d
\n
"
,
size
);
...
@@ -324,11 +323,3 @@ gk104_fifo_gpfifo_new(struct nvkm_fifo *base, const struct nvkm_oclass *oclass,
...
@@ -324,11 +323,3 @@ gk104_fifo_gpfifo_new(struct nvkm_fifo *base, const struct nvkm_oclass *oclass,
return
ret
;
return
ret
;
}
}
const
struct
nvkm_fifo_chan_oclass
gk104_fifo_gpfifo_oclass
=
{
.
base
.
oclass
=
KEPLER_CHANNEL_GPFIFO_A
,
.
base
.
minver
=
0
,
.
base
.
maxver
=
0
,
.
ctor
=
gk104_fifo_gpfifo_new
,
};
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk110.c
已删除
100644 → 0
浏览文件 @
a7cf0180
/*
* Copyright 2016 Red Hat Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* Authors: Ben Skeggs
*/
#include "changk104.h"
#include <nvif/class.h>
const
struct
nvkm_fifo_chan_oclass
gk110_fifo_gpfifo_oclass
=
{
.
base
.
oclass
=
KEPLER_CHANNEL_GPFIFO_B
,
.
base
.
minver
=
0
,
.
base
.
maxver
=
0
,
.
ctor
=
gk104_fifo_gpfifo_new
,
};
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogm200.c
已删除
100644 → 0
浏览文件 @
a7cf0180
/*
* Copyright 2015 Red Hat Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* Authors: Ben Skeggs
*/
#include "changk104.h"
#include <nvif/class.h>
const
struct
nvkm_fifo_chan_oclass
gm200_fifo_gpfifo_oclass
=
{
.
base
.
oclass
=
MAXWELL_CHANNEL_GPFIFO_A
,
.
base
.
minver
=
0
,
.
base
.
maxver
=
0
,
.
ctor
=
gk104_fifo_gpfifo_new
,
};
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogp100.c
已删除
100644 → 0
浏览文件 @
a7cf0180
/*
* Copyright 2016 Red Hat Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* Authors: Ben Skeggs
*/
#include "changk104.h"
#include <nvif/class.h>
const
struct
nvkm_fifo_chan_oclass
gp100_fifo_gpfifo_oclass
=
{
.
base
.
oclass
=
PASCAL_CHANNEL_GPFIFO_A
,
.
base
.
minver
=
0
,
.
base
.
maxver
=
0
,
.
ctor
=
gk104_fifo_gpfifo_new
,
};
drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h
浏览文件 @
f9360c3a
...
@@ -28,8 +28,9 @@ struct nvkm_fifo_func {
...
@@ -28,8 +28,9 @@ struct nvkm_fifo_func {
void
(
*
uevent_init
)(
struct
nvkm_fifo
*
);
void
(
*
uevent_init
)(
struct
nvkm_fifo
*
);
void
(
*
uevent_fini
)(
struct
nvkm_fifo
*
);
void
(
*
uevent_fini
)(
struct
nvkm_fifo
*
);
void
(
*
recover_chan
)(
struct
nvkm_fifo
*
,
int
chid
);
void
(
*
recover_chan
)(
struct
nvkm_fifo
*
,
int
chid
);
int
(
*
class_get
)(
struct
nvkm_fifo
*
,
int
index
,
int
(
*
class_get
)(
struct
nvkm_fifo
*
,
int
index
,
struct
nvkm_oclass
*
);
const
struct
nvkm_fifo_chan_oclass
**
);
int
(
*
class_new
)(
struct
nvkm_fifo
*
,
const
struct
nvkm_oclass
*
,
void
*
,
u32
,
struct
nvkm_object
**
);
const
struct
nvkm_fifo_chan_oclass
*
chan
[];
const
struct
nvkm_fifo_chan_oclass
*
chan
[];
};
};
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录