22593ff9bbc9210ec8f407d9e27634ac8b83a7a8
1 #ifndef __NOUVEAU_VIDEO_H__
2 #define __NOUVEAU_SCREEN_H__
4 #include "nv17_mpeg.xml.h"
5 #include "nv31_mpeg.xml.h"
7 struct nouveau_video_buffer
{
8 struct pipe_video_buffer base
;
10 struct pipe_resource
*resources
[3];
11 struct pipe_sampler_view
*sampler_view_planes
[3];
12 struct pipe_sampler_view
*sampler_view_components
[3];
13 struct pipe_surface
*surfaces
[3];
16 struct nouveau_decoder
{
17 struct pipe_video_decoder base
;
18 struct nouveau_screen
*screen
;
19 struct nouveau_grobj
*mpeg
;
20 struct nouveau_bo
*cmd_bo
, *data_bo
, *fence_bo
;
30 unsigned picture_structure
;
32 unsigned past
, future
, current
;
33 unsigned num_surfaces
;
34 struct nouveau_video_buffer
*surfaces
[8];
38 nouveau_vpe_write(struct nouveau_decoder
*dec
, unsigned data
) {
39 dec
->cmds
[dec
->ofs
++] = data
;