diff options
author | rnoland <rnoland@FreeBSD.org> | 2010-01-31 14:30:39 +0000 |
---|---|---|
committer | rnoland <rnoland@FreeBSD.org> | 2010-01-31 14:30:39 +0000 |
commit | 4f2c2891b7a3685d0996a9366ce828673d45caed (patch) | |
tree | ffa9a2a797da24cc61c08f0cb47116e004901075 /sys/dev/drm/via_verifier.h | |
parent | 04aaff5298149d2d2df6b4d11d782ff989614101 (diff) | |
download | FreeBSD-src-4f2c2891b7a3685d0996a9366ce828673d45caed.zip FreeBSD-src-4f2c2891b7a3685d0996a9366ce828673d45caed.tar.gz |
Welcome drm support for VIA unichrome chips.
MFC after: 2 weeks
Diffstat (limited to 'sys/dev/drm/via_verifier.h')
-rw-r--r-- | sys/dev/drm/via_verifier.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/sys/dev/drm/via_verifier.h b/sys/dev/drm/via_verifier.h new file mode 100644 index 0000000..153b472 --- /dev/null +++ b/sys/dev/drm/via_verifier.h @@ -0,0 +1,65 @@ +/*- + * Copyright 2004 The Unichrome Project. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sub license, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial portions + * of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL + * THE UNICHROME PROJECT, AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + * + * Author: Thomas Hellström 2004. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#ifndef _VIA_VERIFIER_H_ +#define _VIA_VERIFIER_H_ + +typedef enum { + no_sequence = 0, + z_address, + dest_address, + tex_address +} drm_via_sequence_t; + +typedef struct { + unsigned texture; + uint32_t z_addr; + uint32_t d_addr; + uint32_t t_addr[2][10]; + uint32_t pitch[2][10]; + uint32_t height[2][10]; + uint32_t tex_level_lo[2]; + uint32_t tex_level_hi[2]; + uint32_t tex_palette_size[2]; + uint32_t tex_npot[2]; + drm_via_sequence_t unfinished; + int agp_texture; + int multitex; + struct drm_device *dev; + drm_local_map_t *map_cache; + uint32_t vertex_count; + int agp; + const uint32_t *buf_start; +} drm_via_state_t; + +extern int via_verify_command_stream(const uint32_t * buf, unsigned int size, + struct drm_device * dev, int agp); +extern int via_parse_command_stream(struct drm_device *dev, const uint32_t *buf, + unsigned int size); + +#endif |