sis_drm.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /* sis_drv.h -- Private header for sis driver -*- linux-c -*- */
  2. /*
  3. * Copyright 2005 Eric Anholt
  4. * All Rights Reserved.
  5. *
  6. * Permission is hereby granted, free of charge, to any person obtaining a
  7. * copy of this software and associated documentation files (the "Software"),
  8. * to deal in the Software without restriction, including without limitation
  9. * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  10. * and/or sell copies of the Software, and to permit persons to whom the
  11. * Software is furnished to do so, subject to the following conditions:
  12. *
  13. * The above copyright notice and this permission notice (including the next
  14. * paragraph) shall be included in all copies or substantial portions of the
  15. * Software.
  16. *
  17. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  18. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  19. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  20. * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  21. * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  22. * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  23. * SOFTWARE.
  24. *
  25. */
  26. #ifndef __SIS_DRM_H__
  27. #define __SIS_DRM_H__
  28. #include "drm.h"
  29. #if defined(__cplusplus)
  30. extern "C" {
  31. #endif
  32. /* SiS specific ioctls */
  33. #define NOT_USED_0_3
  34. #define DRM_SIS_FB_ALLOC 0x04
  35. #define DRM_SIS_FB_FREE 0x05
  36. #define NOT_USED_6_12
  37. #define DRM_SIS_AGP_INIT 0x13
  38. #define DRM_SIS_AGP_ALLOC 0x14
  39. #define DRM_SIS_AGP_FREE 0x15
  40. #define DRM_SIS_FB_INIT 0x16
  41. #define DRM_IOCTL_SIS_FB_ALLOC DRM_IOWR(DRM_COMMAND_BASE + DRM_SIS_FB_ALLOC, drm_sis_mem_t)
  42. #define DRM_IOCTL_SIS_FB_FREE DRM_IOW( DRM_COMMAND_BASE + DRM_SIS_FB_FREE, drm_sis_mem_t)
  43. #define DRM_IOCTL_SIS_AGP_INIT DRM_IOWR(DRM_COMMAND_BASE + DRM_SIS_AGP_INIT, drm_sis_agp_t)
  44. #define DRM_IOCTL_SIS_AGP_ALLOC DRM_IOWR(DRM_COMMAND_BASE + DRM_SIS_AGP_ALLOC, drm_sis_mem_t)
  45. #define DRM_IOCTL_SIS_AGP_FREE DRM_IOW( DRM_COMMAND_BASE + DRM_SIS_AGP_FREE, drm_sis_mem_t)
  46. #define DRM_IOCTL_SIS_FB_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_SIS_FB_INIT, drm_sis_fb_t)
  47. /*
  48. #define DRM_IOCTL_SIS_FLIP DRM_IOW( 0x48, drm_sis_flip_t)
  49. #define DRM_IOCTL_SIS_FLIP_INIT DRM_IO( 0x49)
  50. #define DRM_IOCTL_SIS_FLIP_FINAL DRM_IO( 0x50)
  51. */
  52. typedef struct {
  53. int context;
  54. unsigned long offset;
  55. unsigned long size;
  56. unsigned long free;
  57. } drm_sis_mem_t;
  58. typedef struct {
  59. unsigned long offset, size;
  60. } drm_sis_agp_t;
  61. typedef struct {
  62. unsigned long offset, size;
  63. } drm_sis_fb_t;
  64. #if defined(__cplusplus)
  65. }
  66. #endif
  67. #endif /* __SIS_DRM_H__ */