Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
9fe4e177
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 4 年多
通知
15
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
9fe4e177
编写于
5月 08, 2018
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nouveau/disp/nv50-: fetch mask of available sors during oneinit
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
bf5d1a6b
变更
28
隐藏空白更改
内联
并排
Showing
28 changed file
with
65 addition
and
53 deletion
+65
-53
drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h
drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h
+8
-2
drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c
+5
-2
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.h
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.h
+3
-6
drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgf119.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgf119.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg84.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg84.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg94.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg94.c
+9
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c
+9
-10
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgk104.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgk104.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm107.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm107.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgt215.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgt215.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sormcp77.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sormcp77.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sormcp89.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sormcp89.c
+1
-1
drivers/gpu/drm/nouveau/nvkm/engine/disp/sornv50.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/sornv50.c
+9
-10
未找到文件。
drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c
浏览文件 @
9fe4e177
...
...
@@ -34,7 +34,7 @@ g84_disp = {
.
root
=
&
g84_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
2
,
.
new
=
g84_sor_new
},
.
sor
=
{
.
cnt
=
nv50_sor_cnt
,
.
new
=
g84_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c
浏览文件 @
9fe4e177
...
...
@@ -34,7 +34,7 @@ g94_disp = {
.
root
=
&
g94_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
g94_sor_new
},
.
sor
=
{
.
cnt
=
g94_sor_cnt
,
.
new
=
g94_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c
浏览文件 @
9fe4e177
...
...
@@ -173,7 +173,7 @@ gf119_disp = {
.
root
=
&
gf119_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
dac
=
{
.
cnt
=
gf119_dac_cnt
,
.
new
=
gf119_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gf119_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gf119_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c
浏览文件 @
9fe4e177
...
...
@@ -35,7 +35,7 @@ gk104_disp = {
.
root
=
&
gk104_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
dac
=
{
.
cnt
=
gf119_dac_cnt
,
.
new
=
gf119_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gk104_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gk104_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c
浏览文件 @
9fe4e177
...
...
@@ -35,7 +35,7 @@ gk110_disp = {
.
root
=
&
gk110_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
dac
=
{
.
cnt
=
gf119_dac_cnt
,
.
new
=
gf119_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gk104_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gk104_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c
浏览文件 @
9fe4e177
...
...
@@ -35,7 +35,7 @@ gm107_disp = {
.
root
=
&
gm107_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
dac
=
{
.
cnt
=
gf119_dac_cnt
,
.
new
=
gf119_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gm107_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gm107_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c
浏览文件 @
9fe4e177
...
...
@@ -35,7 +35,7 @@ gm200_disp = {
.
root
=
&
gm200_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
dac
=
{
.
cnt
=
gf119_dac_cnt
,
.
new
=
gf119_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gm200_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gm200_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c
浏览文件 @
9fe4e177
...
...
@@ -34,7 +34,7 @@ gp100_disp = {
.
super
=
gf119_disp_super
,
.
root
=
&
gp100_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gm200_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gm200_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c
浏览文件 @
9fe4e177
...
...
@@ -60,7 +60,7 @@ gp102_disp = {
.
super
=
gf119_disp_super
,
.
root
=
&
gp102_disp_root_oclass
,
.
head
=
{
.
cnt
=
gf119_head_cnt
,
.
new
=
gf119_head_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gm200_sor_new
},
.
sor
=
{
.
cnt
=
gf119_sor_cnt
,
.
new
=
gm200_sor_new
},
};
int
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c
浏览文件 @
9fe4e177
...
...
@@ -34,7 +34,7 @@ gt200_disp = {
.
root
=
&
gt200_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
2
,
.
new
=
g84_sor_new
},
.
sor
=
{
.
cnt
=
nv50_sor_cnt
,
.
new
=
g84_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c
浏览文件 @
9fe4e177
...
...
@@ -34,7 +34,7 @@ gt215_disp = {
.
root
=
&
gt215_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
gt215_sor_new
},
.
sor
=
{
.
cnt
=
g94_sor_cnt
,
.
new
=
gt215_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h
浏览文件 @
9fe4e177
...
...
@@ -106,7 +106,6 @@ nv50_sor_link(struct nvkm_ior *ior)
return
nv50_ior_base
(
ior
)
+
((
ior
->
asy
.
link
==
2
)
*
0x80
);
}
int
nv50_sor_new_
(
const
struct
nvkm_ior_func
*
,
struct
nvkm_disp
*
,
int
id
);
void
nv50_sor_state
(
struct
nvkm_ior
*
,
struct
nvkm_ior_state
*
);
void
nv50_sor_power
(
struct
nvkm_ior
*
,
bool
,
bool
,
bool
,
bool
,
bool
);
void
nv50_sor_clock
(
struct
nvkm_ior
*
);
...
...
@@ -122,7 +121,6 @@ void g94_sor_dp_watermark(struct nvkm_ior *, int, u8);
void
gt215_sor_dp_audio
(
struct
nvkm_ior
*
,
int
,
bool
);
int
gf119_sor_new_
(
const
struct
nvkm_ior_func
*
,
struct
nvkm_disp
*
,
int
id
);
void
gf119_sor_state
(
struct
nvkm_ior
*
,
struct
nvkm_ior_state
*
);
void
gf119_sor_clock
(
struct
nvkm_ior
*
);
int
gf119_sor_dp_links
(
struct
nvkm_ior
*
,
struct
nvkm_i2c_aux
*
);
...
...
@@ -161,13 +159,21 @@ int gf119_dac_new(struct nvkm_disp *, int);
int
nv50_pior_new
(
struct
nvkm_disp
*
,
int
);
int
nv50_sor_cnt
(
struct
nvkm_disp
*
,
unsigned
long
*
);
int
nv50_sor_new
(
struct
nvkm_disp
*
,
int
);
int
g84_sor_new
(
struct
nvkm_disp
*
,
int
);
int
g94_sor_cnt
(
struct
nvkm_disp
*
,
unsigned
long
*
);
int
g94_sor_new
(
struct
nvkm_disp
*
,
int
);
int
mcp77_sor_new
(
struct
nvkm_disp
*
,
int
);
int
gt215_sor_new
(
struct
nvkm_disp
*
,
int
);
int
mcp89_sor_new
(
struct
nvkm_disp
*
,
int
);
int
gf119_sor_cnt
(
struct
nvkm_disp
*
,
unsigned
long
*
);
int
gf119_sor_new
(
struct
nvkm_disp
*
,
int
);
int
gk104_sor_new
(
struct
nvkm_disp
*
,
int
);
int
gm107_sor_new
(
struct
nvkm_disp
*
,
int
);
int
gm200_sor_new
(
struct
nvkm_disp
*
,
int
);
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c
浏览文件 @
9fe4e177
...
...
@@ -32,7 +32,7 @@ mcp77_disp = {
.
root
=
&
g94_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
mcp77_sor_new
},
.
sor
=
{
.
cnt
=
g94_sor_cnt
,
.
new
=
mcp77_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c
浏览文件 @
9fe4e177
...
...
@@ -32,7 +32,7 @@ mcp89_disp = {
.
root
=
&
gt215_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
4
,
.
new
=
mcp89_sor_new
},
.
sor
=
{
.
cnt
=
g94_sor_cnt
,
.
new
=
mcp89_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c
浏览文件 @
9fe4e177
...
...
@@ -93,7 +93,10 @@ nv50_disp_oneinit_(struct nvkm_disp *base)
return
ret
;
}
for
(
i
=
0
;
func
->
sor
.
new
&&
i
<
func
->
sor
.
nr
;
i
++
)
{
disp
->
sor
.
nr
=
func
->
sor
.
cnt
(
&
disp
->
base
,
&
disp
->
sor
.
mask
);
nvkm_debug
(
subdev
,
" SOR(s): %d (%02lx)
\n
"
,
disp
->
sor
.
nr
,
disp
->
sor
.
mask
);
for_each_set_bit
(
i
,
&
disp
->
sor
.
mask
,
disp
->
sor
.
nr
)
{
ret
=
func
->
sor
.
new
(
&
disp
->
base
,
i
);
if
(
ret
)
return
ret
;
...
...
@@ -643,7 +646,7 @@ nv50_disp = {
.
root
=
&
nv50_disp_root_oclass
,
.
head
=
{
.
cnt
=
nv50_head_cnt
,
.
new
=
nv50_head_new
},
.
dac
=
{
.
cnt
=
nv50_dac_cnt
,
.
new
=
nv50_dac_new
},
.
sor
=
{
.
nr
=
2
,
.
new
=
nv50_sor_new
},
.
sor
=
{
.
cnt
=
nv50_sor_cnt
,
.
new
=
nv50_sor_new
},
.
pior
=
{
.
nr
=
3
,
.
new
=
nv50_pior_new
},
};
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.h
浏览文件 @
9fe4e177
...
...
@@ -21,6 +21,8 @@ struct nv50_disp {
}
head
,
dac
;
struct
{
unsigned
long
mask
;
int
nr
;
u32
lvdsconf
;
}
sor
;
...
...
@@ -53,12 +55,7 @@ struct nv50_disp_func {
struct
{
int
(
*
cnt
)(
struct
nvkm_disp
*
,
unsigned
long
*
mask
);
int
(
*
new
)(
struct
nvkm_disp
*
,
int
id
);
}
head
,
dac
;
struct
{
int
nr
;
int
(
*
new
)(
struct
nvkm_disp
*
,
int
id
);
}
sor
;
}
head
,
dac
,
sor
;
struct
{
int
nr
;
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgf119.c
浏览文件 @
9fe4e177
...
...
@@ -70,7 +70,7 @@ gf119_disp_root_init(struct nv50_disp_root *root)
}
/* ... SOR caps */
for
(
i
=
0
;
i
<
disp
->
func
->
sor
.
nr
;
i
++
)
{
for
(
i
=
0
;
i
<
disp
->
sor
.
nr
;
i
++
)
{
tmp
=
nvkm_rd32
(
device
,
0x61c000
+
(
i
*
0x800
));
nvkm_wr32
(
device
,
0x6301c4
+
(
i
*
0x800
),
tmp
);
}
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c
浏览文件 @
9fe4e177
...
...
@@ -433,7 +433,7 @@ nv50_disp_root_init(struct nv50_disp_root *root)
}
/* ... SOR caps */
for
(
i
=
0
;
i
<
disp
->
func
->
sor
.
nr
;
i
++
)
{
for
(
i
=
0
;
i
<
disp
->
sor
.
nr
;
i
++
)
{
tmp
=
nvkm_rd32
(
device
,
0x61c000
+
(
i
*
0x800
));
nvkm_wr32
(
device
,
0x6101e0
+
(
i
*
0x04
),
tmp
);
}
...
...
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg84.c
浏览文件 @
9fe4e177
...
...
@@ -34,5 +34,5 @@ g84_sor = {
int
g84_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
nv
50_sor_new_
(
&
g84_sor
,
disp
,
id
);
return
nv
km_ior_new_
(
&
g84_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg94.c
浏览文件 @
9fe4e177
...
...
@@ -279,5 +279,13 @@ g94_sor = {
int
g94_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
nv50_sor_new_
(
&
g94_sor
,
disp
,
id
);
return
nvkm_ior_new_
(
&
g94_sor
,
disp
,
SOR
,
id
);
}
int
g94_sor_cnt
(
struct
nvkm_disp
*
disp
,
unsigned
long
*
pmask
)
{
struct
nvkm_device
*
device
=
disp
->
engine
.
subdev
.
device
;
*
pmask
=
(
nvkm_rd32
(
device
,
0x610184
)
&
0x0f000000
)
>>
24
;
return
4
;
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c
浏览文件 @
9fe4e177
...
...
@@ -152,15 +152,6 @@ gf119_sor_state(struct nvkm_ior *sor, struct nvkm_ior_state *state)
state
->
head
=
ctrl
&
0x0000000f
;
}
int
gf119_sor_new_
(
const
struct
nvkm_ior_func
*
func
,
struct
nvkm_disp
*
disp
,
int
id
)
{
struct
nvkm_device
*
device
=
disp
->
engine
.
subdev
.
device
;
if
(
!
(
nvkm_rd32
(
device
,
0x612004
)
&
(
0x00000100
<<
id
)))
return
0
;
return
nvkm_ior_new_
(
func
,
disp
,
SOR
,
id
);
}
static
const
struct
nvkm_ior_func
gf119_sor
=
{
.
state
=
gf119_sor_state
,
...
...
@@ -189,5 +180,13 @@ gf119_sor = {
int
gf119_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
gf119_sor_new_
(
&
gf119_sor
,
disp
,
id
);
return
nvkm_ior_new_
(
&
gf119_sor
,
disp
,
SOR
,
id
);
}
int
gf119_sor_cnt
(
struct
nvkm_disp
*
disp
,
unsigned
long
*
pmask
)
{
struct
nvkm_device
*
device
=
disp
->
engine
.
subdev
.
device
;
*
pmask
=
(
nvkm_rd32
(
device
,
0x612004
)
&
0x0000ff00
)
>>
8
;
return
8
;
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgk104.c
浏览文件 @
9fe4e177
...
...
@@ -49,5 +49,5 @@ gk104_sor = {
int
gk104_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
gf119_sor_new_
(
&
gk104_sor
,
disp
,
id
);
return
nvkm_ior_new_
(
&
gk104_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm107.c
浏览文件 @
9fe4e177
...
...
@@ -63,5 +63,5 @@ gm107_sor = {
int
gm107_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
gf119_sor_new_
(
&
gm107_sor
,
disp
,
id
);
return
nvkm_ior_new_
(
&
gm107_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c
浏览文件 @
9fe4e177
...
...
@@ -120,5 +120,5 @@ gm200_sor = {
int
gm200_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
gf119_sor_new_
(
&
gm200_sor
,
disp
,
id
);
return
nvkm_ior_new_
(
&
gm200_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgt215.c
浏览文件 @
9fe4e177
...
...
@@ -65,5 +65,5 @@ gt215_sor = {
int
gt215_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
nv
50_sor_new_
(
&
gt215_sor
,
disp
,
id
);
return
nv
km_ior_new_
(
&
gt215_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sormcp77.c
浏览文件 @
9fe4e177
...
...
@@ -44,5 +44,5 @@ mcp77_sor = {
int
mcp77_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
nv
50_sor_new_
(
&
mcp77_sor
,
disp
,
id
);
return
nv
km_ior_new_
(
&
mcp77_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sormcp89.c
浏览文件 @
9fe4e177
...
...
@@ -49,5 +49,5 @@ mcp89_sor = {
int
mcp89_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
nv
50_sor_new_
(
&
mcp89_sor
,
disp
,
id
);
return
nv
km_ior_new_
(
&
mcp89_sor
,
disp
,
SOR
,
id
);
}
drivers/gpu/drm/nouveau/nvkm/engine/disp/sornv50.c
浏览文件 @
9fe4e177
...
...
@@ -84,15 +84,6 @@ nv50_sor_state(struct nvkm_ior *sor, struct nvkm_ior_state *state)
state
->
head
=
ctrl
&
0x00000003
;
}
int
nv50_sor_new_
(
const
struct
nvkm_ior_func
*
func
,
struct
nvkm_disp
*
disp
,
int
id
)
{
struct
nvkm_device
*
device
=
disp
->
engine
.
subdev
.
device
;
if
(
!
(
nvkm_rd32
(
device
,
0x610184
)
&
(
0x01000000
<<
id
)))
return
0
;
return
nvkm_ior_new_
(
func
,
disp
,
SOR
,
id
);
}
static
const
struct
nvkm_ior_func
nv50_sor
=
{
.
state
=
nv50_sor_state
,
...
...
@@ -103,5 +94,13 @@ nv50_sor = {
int
nv50_sor_new
(
struct
nvkm_disp
*
disp
,
int
id
)
{
return
nv50_sor_new_
(
&
nv50_sor
,
disp
,
id
);
return
nvkm_ior_new_
(
&
nv50_sor
,
disp
,
SOR
,
id
);
}
int
nv50_sor_cnt
(
struct
nvkm_disp
*
disp
,
unsigned
long
*
pmask
)
{
struct
nvkm_device
*
device
=
disp
->
engine
.
subdev
.
device
;
*
pmask
=
(
nvkm_rd32
(
device
,
0x610184
)
&
0x03000000
)
>>
24
;
return
2
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录