iommu.h 767 B

123456789101112131415161718192021222324252627
  1. /* $Id: iommu.h,v 1.10 2001/03/08 09:55:56 davem Exp $
  2. * iommu.h: Definitions for the sun5 IOMMU.
  3. *
  4. * Copyright (C) 1996, 1999 David S. Miller (davem@caip.rutgers.edu)
  5. */
  6. #ifndef _SPARC64_IOMMU_H
  7. #define _SPARC64_IOMMU_H
  8. /* The format of an iopte in the page tables. */
  9. #define IOPTE_VALID 0x8000000000000000UL
  10. #define IOPTE_64K 0x2000000000000000UL
  11. #define IOPTE_STBUF 0x1000000000000000UL
  12. #define IOPTE_INTRA 0x0800000000000000UL
  13. #define IOPTE_CONTEXT 0x07ff800000000000UL
  14. #define IOPTE_PAGE 0x00007fffffffe000UL
  15. #define IOPTE_CACHE 0x0000000000000010UL
  16. #define IOPTE_WRITE 0x0000000000000002UL
  17. #define IOMMU_NUM_CTXS 4096
  18. struct iommu_arena {
  19. unsigned long *map;
  20. unsigned int hint;
  21. unsigned int limit;
  22. };
  23. #endif /* !(_SPARC_IOMMU_H) */