radeonsi: set BIG_PAGE fields on gfx10.3
[mesa.git] / src / gallium / drivers / radeon / radeon_video.h
index 7e70be98bf14d5adc62612dc85f9515e26ff7dc2..5ef0a21346232ef1809877662d94be96be9e9777 100644 (file)
  *
  **************************************************************************/
 
-/*
- * Authors:
- *      Christian König <christian.koenig@amd.com>
- *
- */
-
 #ifndef RADEON_VIDEO_H
 #define RADEON_VIDEO_H
 
 #include "radeon/radeon_winsys.h"
 #include "vl/vl_video_buffer.h"
 
-#define RVID_ERR(fmt, args...) \
-       fprintf(stderr, "EE %s:%d %s UVD - "fmt, __FILE__, __LINE__, __func__, ##args)
+#define RVID_ERR(fmt, args...)                                                                     \
+   fprintf(stderr, "EE %s:%d %s UVD - " fmt, __FILE__, __LINE__, __func__, ##args)
+
+#define UVD_FW_1_66_16 ((1 << 24) | (66 << 16) | (16 << 8))
 
 /* video buffer representation */
-struct rvid_buffer
-{
-       unsigned                usage;
-       struct r600_resource    *res;
+struct rvid_buffer {
+   unsigned usage;
+   struct si_resource *res;
 };
 
 /* generate an stream handle */
 unsigned si_vid_alloc_stream_handle(void);
 
 /* create a buffer in the winsys */
-bool si_vid_create_buffer(struct pipe_screen *screen, struct rvid_buffer *buffer,
-                         unsigned size, unsigned usage);
+bool si_vid_create_buffer(struct pipe_screen *screen, struct rvid_buffer *buffer, unsigned size,
+                          unsigned usage);
 
 /* destroy a buffer */
 void si_vid_destroy_buffer(struct rvid_buffer *buffer);
 
 /* reallocate a buffer, preserving its content */
-bool si_vid_resize_buffer(struct pipe_screen *screen, struct radeon_winsys_cs *cs,
-                         struct rvid_buffer *new_buf, unsigned new_size);
+bool si_vid_resize_buffer(struct pipe_screen *screen, struct radeon_cmdbuf *cs,
+                          struct rvid_buffer *new_buf, unsigned new_size);
 
 /* clear the buffer with zeros */
-void si_vid_clear_buffer(struct pipe_context *context, struct rvid_buffer* buffer);
-
-/* join surfaces into the same buffer with identical tiling params
-   sumup their sizes and replace the backend buffers with a single bo */
-void si_vid_join_surfaces(struct r600_common_context *rctx,
-                         struct pb_buffer** buffers[VL_NUM_COMPONENTS],
-                         struct radeon_surf *surfaces[VL_NUM_COMPONENTS]);
-
-/* returns supported codecs and other parameters */
-int si_vid_get_video_param(struct pipe_screen *screen,
-                          enum pipe_video_profile profile,
-                          enum pipe_video_entrypoint entrypoint,
-                          enum pipe_video_cap param);
-
-/* the hardware only supports NV12 */
-boolean si_vid_is_format_supported(struct pipe_screen *screen,
-                                  enum pipe_format format,
-                                  enum pipe_video_profile profile,
-                                  enum pipe_video_entrypoint entrypoint);
+void si_vid_clear_buffer(struct pipe_context *context, struct rvid_buffer *buffer);
 
 #endif // RADEON_VIDEO_H