Home | History | Annotate | Download | only in vc5
      1 /*
      2  * Copyright  2014-2017 Broadcom
      3  * Copyright (C) 2012 Rob Clark <robclark (at) freedesktop.org>
      4  *
      5  * Permission is hereby granted, free of charge, to any person obtaining a
      6  * copy of this software and associated documentation files (the "Software"),
      7  * to deal in the Software without restriction, including without limitation
      8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
      9  * and/or sell copies of the Software, and to permit persons to whom the
     10  * Software is furnished to do so, subject to the following conditions:
     11  *
     12  * The above copyright notice and this permission notice (including the next
     13  * paragraph) shall be included in all copies or substantial portions of the
     14  * Software.
     15  *
     16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     19  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
     21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
     22  * IN THE SOFTWARE.
     23  */
     24 
     25 /* This file generates the per-v3d-version function prototypes.  It must only
     26  * be included from vc5_context.h.
     27  */
     28 
     29 struct v3d_hw;
     30 struct vc5_format;
     31 
     32 void v3dX(emit_state)(struct pipe_context *pctx);
     33 void v3dX(emit_rcl)(struct vc5_job *job);
     34 void v3dX(draw_init)(struct pipe_context *pctx);
     35 void v3dX(state_init)(struct pipe_context *pctx);
     36 
     37 void v3dX(simulator_init_regs)(struct v3d_hw *v3d);
     38 int v3dX(simulator_get_param_ioctl)(struct v3d_hw *v3d,
     39                                     struct drm_vc5_get_param *args);
     40 void v3dX(simulator_flush)(struct v3d_hw *v3d, struct drm_vc5_submit_cl *submit,
     41                            uint32_t gmp_ofs);
     42 const struct vc5_format *v3dX(get_format_desc)(enum pipe_format f);
     43 void v3dX(get_internal_type_bpp_for_output_format)(uint32_t format,
     44                                                    uint32_t *type,
     45                                                    uint32_t *bpp);
     46