pxa3xx-gcu.h 890 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifndef __PXA3XX_GCU_H__
  2. #define __PXA3XX_GCU_H__
  3. #include <linux/types.h>
  4. /* Number of 32bit words in display list (ring buffer). */
  5. #define PXA3XX_GCU_BUFFER_WORDS ((256 * 1024 - 256) / 4)
  6. /* To be increased when breaking the ABI */
  7. #define PXA3XX_GCU_SHARED_MAGIC 0x30000001
  8. #define PXA3XX_GCU_BATCH_WORDS 8192
  9. struct pxa3xx_gcu_shared {
  10. u32 buffer[PXA3XX_GCU_BUFFER_WORDS];
  11. bool hw_running;
  12. unsigned long buffer_phys;
  13. unsigned int num_words;
  14. unsigned int num_writes;
  15. unsigned int num_done;
  16. unsigned int num_interrupts;
  17. unsigned int num_wait_idle;
  18. unsigned int num_wait_free;
  19. unsigned int num_idle;
  20. u32 magic;
  21. };
  22. /* Initialization and synchronization.
  23. * Hardware is started upon write(). */
  24. #define PXA3XX_GCU_IOCTL_RESET _IO('G', 0)
  25. #define PXA3XX_GCU_IOCTL_WAIT_IDLE _IO('G', 2)
  26. #endif /* __PXA3XX_GCU_H__ */