1 #ifndef __NV30_FORMAT_H__ 2 #define __NV30_FORMAT_H__ 3 4 struct nv30_format_info { 5 unsigned bindings; 6 }; 7 8 struct nv30_format { 9 unsigned hw; 10 }; 11 12 struct nv30_vtxfmt { 13 unsigned hw; 14 }; 15 16 struct nv30_texfmt { 17 unsigned nv30; 18 unsigned nv30_rect; 19 unsigned nv40; 20 struct { 21 unsigned src; 22 unsigned cmp; 23 } swz[6]; 24 unsigned swizzle; 25 unsigned filter; 26 unsigned wrap; 27 }; 28 29 extern const struct nv30_format_info nv30_format_info_table[]; 30 static inline const struct nv30_format_info * nv30_format_info(struct pipe_screen * pscreen,enum pipe_format format)31nv30_format_info(struct pipe_screen *pscreen, enum pipe_format format) 32 { 33 return &nv30_format_info_table[format]; 34 } 35 36 extern const struct nv30_format nv30_format_table[]; 37 static inline const struct nv30_format * nv30_format(struct pipe_screen * pscreen,enum pipe_format format)38nv30_format(struct pipe_screen *pscreen, enum pipe_format format) 39 { 40 return &nv30_format_table[format]; 41 } 42 43 extern const struct nv30_vtxfmt nv30_vtxfmt_table[]; 44 static inline const struct nv30_vtxfmt * nv30_vtxfmt(struct pipe_screen * pscreen,enum pipe_format format)45nv30_vtxfmt(struct pipe_screen *pscreen, enum pipe_format format) 46 { 47 return &nv30_vtxfmt_table[format]; 48 } 49 50 extern const struct nv30_texfmt nv30_texfmt_table[]; 51 static inline const struct nv30_texfmt * nv30_texfmt(struct pipe_screen * pscreen,enum pipe_format format)52nv30_texfmt(struct pipe_screen *pscreen, enum pipe_format format) 53 { 54 return &nv30_texfmt_table[format]; 55 } 56 57 #endif 58