Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
fafa0cb3
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看板
提交
fafa0cb3
编写于
10月 11, 2012
作者:
B
Ben Skeggs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm/nv30-nv40/graph: poke zcomp regs from tile_prog hook
Signed-off-by:
N
Ben Skeggs
<
bskeggs@redhat.com
>
上级
e1344412
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
38 addition
and
5 deletion
+38
-5
drivers/gpu/drm/nouveau/core/engine/graph/nv20.c
drivers/gpu/drm/nouveau/core/engine/graph/nv20.c
+1
-1
drivers/gpu/drm/nouveau/core/engine/graph/nv40.c
drivers/gpu/drm/nouveau/core/engine/graph/nv40.c
+32
-4
drivers/gpu/drm/nouveau/core/engine/graph/regs.h
drivers/gpu/drm/nouveau/core/engine/graph/regs.h
+5
-0
未找到文件。
drivers/gpu/drm/nouveau/core/engine/graph/nv20.c
浏览文件 @
fafa0cb3
...
@@ -183,7 +183,7 @@ nv20_graph_tile_prog(struct nouveau_engine *engine, int i)
...
@@ -183,7 +183,7 @@ nv20_graph_tile_prog(struct nouveau_engine *engine, int i)
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_INDEX
,
0x00EA0010
+
4
*
i
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_INDEX
,
0x00EA0010
+
4
*
i
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_DATA
,
tile
->
addr
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_DATA
,
tile
->
addr
);
if
(
nv_device
(
engine
)
->
c
ard_type
==
NV_20
)
{
if
(
nv_device
(
engine
)
->
c
hipset
!=
0x34
)
{
nv_wr32
(
priv
,
NV20_PGRAPH_ZCOMP
(
i
),
tile
->
zcomp
);
nv_wr32
(
priv
,
NV20_PGRAPH_ZCOMP
(
i
),
tile
->
zcomp
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_INDEX
,
0x00ea0090
+
4
*
i
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_INDEX
,
0x00ea0090
+
4
*
i
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_DATA
,
tile
->
zcomp
);
nv_wr32
(
priv
,
NV10_PGRAPH_RDI_DATA
,
tile
->
zcomp
);
...
...
drivers/gpu/drm/nouveau/core/engine/graph/nv40.c
浏览文件 @
fafa0cb3
...
@@ -216,10 +216,10 @@ nv40_graph_tile_prog(struct nouveau_engine *engine, int i)
...
@@ -216,10 +216,10 @@ nv40_graph_tile_prog(struct nouveau_engine *engine, int i)
switch
(
nv_device
(
priv
)
->
chipset
)
{
switch
(
nv_device
(
priv
)
->
chipset
)
{
case
0x40
:
case
0x40
:
case
0x41
:
/* guess */
case
0x41
:
case
0x42
:
case
0x42
:
case
0x43
:
case
0x43
:
case
0x45
:
/* guess */
case
0x45
:
case
0x4e
:
case
0x4e
:
nv_wr32
(
priv
,
NV20_PGRAPH_TSIZE
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV20_PGRAPH_TSIZE
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV20_PGRAPH_TLIMIT
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV20_PGRAPH_TLIMIT
(
i
),
tile
->
limit
);
...
@@ -227,6 +227,21 @@ nv40_graph_tile_prog(struct nouveau_engine *engine, int i)
...
@@ -227,6 +227,21 @@ nv40_graph_tile_prog(struct nouveau_engine *engine, int i)
nv_wr32
(
priv
,
NV40_PGRAPH_TSIZE1
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV40_PGRAPH_TSIZE1
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV40_PGRAPH_TLIMIT1
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV40_PGRAPH_TLIMIT1
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV40_PGRAPH_TILE1
(
i
),
tile
->
addr
);
nv_wr32
(
priv
,
NV40_PGRAPH_TILE1
(
i
),
tile
->
addr
);
switch
(
nv_device
(
priv
)
->
chipset
)
{
case
0x40
:
case
0x45
:
nv_wr32
(
priv
,
NV20_PGRAPH_ZCOMP
(
i
),
tile
->
zcomp
);
nv_wr32
(
priv
,
NV40_PGRAPH_ZCOMP1
(
i
),
tile
->
zcomp
);
break
;
case
0x41
:
case
0x42
:
case
0x43
:
nv_wr32
(
priv
,
NV41_PGRAPH_ZCOMP0
(
i
),
tile
->
zcomp
);
nv_wr32
(
priv
,
NV41_PGRAPH_ZCOMP1
(
i
),
tile
->
zcomp
);
break
;
default:
break
;
}
break
;
break
;
case
0x44
:
case
0x44
:
case
0x4a
:
case
0x4a
:
...
@@ -235,18 +250,31 @@ nv40_graph_tile_prog(struct nouveau_engine *engine, int i)
...
@@ -235,18 +250,31 @@ nv40_graph_tile_prog(struct nouveau_engine *engine, int i)
nv_wr32
(
priv
,
NV20_PGRAPH_TILE
(
i
),
tile
->
addr
);
nv_wr32
(
priv
,
NV20_PGRAPH_TILE
(
i
),
tile
->
addr
);
break
;
break
;
case
0x46
:
case
0x46
:
case
0x4c
:
case
0x47
:
case
0x47
:
case
0x49
:
case
0x49
:
case
0x4b
:
case
0x4b
:
case
0x
4c
:
case
0x
63
:
case
0x67
:
case
0x67
:
default
:
case
0x68
:
nv_wr32
(
priv
,
NV47_PGRAPH_TSIZE
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV47_PGRAPH_TSIZE
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV47_PGRAPH_TLIMIT
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV47_PGRAPH_TLIMIT
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV47_PGRAPH_TILE
(
i
),
tile
->
addr
);
nv_wr32
(
priv
,
NV47_PGRAPH_TILE
(
i
),
tile
->
addr
);
nv_wr32
(
priv
,
NV40_PGRAPH_TSIZE1
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV40_PGRAPH_TSIZE1
(
i
),
tile
->
pitch
);
nv_wr32
(
priv
,
NV40_PGRAPH_TLIMIT1
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV40_PGRAPH_TLIMIT1
(
i
),
tile
->
limit
);
nv_wr32
(
priv
,
NV40_PGRAPH_TILE1
(
i
),
tile
->
addr
);
nv_wr32
(
priv
,
NV40_PGRAPH_TILE1
(
i
),
tile
->
addr
);
switch
(
nv_device
(
priv
)
->
chipset
)
{
case
0x47
:
case
0x49
:
case
0x4b
:
nv_wr32
(
priv
,
NV47_PGRAPH_ZCOMP0
(
i
),
tile
->
zcomp
);
nv_wr32
(
priv
,
NV47_PGRAPH_ZCOMP1
(
i
),
tile
->
zcomp
);
break
;
default:
break
;
}
break
;
default:
break
;
break
;
}
}
...
...
drivers/gpu/drm/nouveau/core/engine/graph/regs.h
浏览文件 @
fafa0cb3
...
@@ -205,6 +205,7 @@
...
@@ -205,6 +205,7 @@
#define NV20_PGRAPH_TSIZE(i) (0x00400908 + (i*16))
#define NV20_PGRAPH_TSIZE(i) (0x00400908 + (i*16))
#define NV20_PGRAPH_TSTATUS(i) (0x0040090C + (i*16))
#define NV20_PGRAPH_TSTATUS(i) (0x0040090C + (i*16))
#define NV20_PGRAPH_ZCOMP(i) (0x00400980 + 4*(i))
#define NV20_PGRAPH_ZCOMP(i) (0x00400980 + 4*(i))
#define NV41_PGRAPH_ZCOMP0(i) (0x004009c0 + 4*(i))
#define NV10_PGRAPH_TILE(i) (0x00400B00 + (i*16))
#define NV10_PGRAPH_TILE(i) (0x00400B00 + (i*16))
#define NV10_PGRAPH_TLIMIT(i) (0x00400B04 + (i*16))
#define NV10_PGRAPH_TLIMIT(i) (0x00400B04 + (i*16))
#define NV10_PGRAPH_TSIZE(i) (0x00400B08 + (i*16))
#define NV10_PGRAPH_TSIZE(i) (0x00400B08 + (i*16))
...
@@ -216,6 +217,7 @@
...
@@ -216,6 +217,7 @@
#define NV47_PGRAPH_TSTATUS(i) (0x00400D0C + (i*16))
#define NV47_PGRAPH_TSTATUS(i) (0x00400D0C + (i*16))
#define NV04_PGRAPH_V_RAM 0x00400D40
#define NV04_PGRAPH_V_RAM 0x00400D40
#define NV04_PGRAPH_W_RAM 0x00400D80
#define NV04_PGRAPH_W_RAM 0x00400D80
#define NV47_PGRAPH_ZCOMP0(i) (0x00400e00 + 4*(i))
#define NV10_PGRAPH_COMBINER0_IN_ALPHA 0x00400E40
#define NV10_PGRAPH_COMBINER0_IN_ALPHA 0x00400E40
#define NV10_PGRAPH_COMBINER1_IN_ALPHA 0x00400E44
#define NV10_PGRAPH_COMBINER1_IN_ALPHA 0x00400E44
#define NV10_PGRAPH_COMBINER0_IN_RGB 0x00400E48
#define NV10_PGRAPH_COMBINER0_IN_RGB 0x00400E48
...
@@ -261,9 +263,12 @@
...
@@ -261,9 +263,12 @@
#define NV04_PGRAPH_DMA_B_OFFSET 0x00401098
#define NV04_PGRAPH_DMA_B_OFFSET 0x00401098
#define NV04_PGRAPH_DMA_B_SIZE 0x0040109C
#define NV04_PGRAPH_DMA_B_SIZE 0x0040109C
#define NV04_PGRAPH_DMA_B_Y_SIZE 0x004010A0
#define NV04_PGRAPH_DMA_B_Y_SIZE 0x004010A0
#define NV47_PGRAPH_ZCOMP1(i) (0x004068c0 + 4*(i))
#define NV40_PGRAPH_TILE1(i) (0x00406900 + (i*16))
#define NV40_PGRAPH_TILE1(i) (0x00406900 + (i*16))
#define NV40_PGRAPH_TLIMIT1(i) (0x00406904 + (i*16))
#define NV40_PGRAPH_TLIMIT1(i) (0x00406904 + (i*16))
#define NV40_PGRAPH_TSIZE1(i) (0x00406908 + (i*16))
#define NV40_PGRAPH_TSIZE1(i) (0x00406908 + (i*16))
#define NV40_PGRAPH_TSTATUS1(i) (0x0040690C + (i*16))
#define NV40_PGRAPH_TSTATUS1(i) (0x0040690C + (i*16))
#define NV40_PGRAPH_ZCOMP1(i) (0x00406980 + 4*(i))
#define NV41_PGRAPH_ZCOMP1(i) (0x004069c0 + 4*(i))
#endif
#endif
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录