machvec_init.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #include <asm/iommu.h>
  2. #include <asm/machvec.h>
  3. extern ia64_mv_send_ipi_t ia64_send_ipi;
  4. extern ia64_mv_global_tlb_purge_t ia64_global_tlb_purge;
  5. extern ia64_mv_dma_get_required_mask ia64_dma_get_required_mask;
  6. extern ia64_mv_irq_to_vector __ia64_irq_to_vector;
  7. extern ia64_mv_local_vector_to_irq __ia64_local_vector_to_irq;
  8. extern ia64_mv_pci_get_legacy_mem_t ia64_pci_get_legacy_mem;
  9. extern ia64_mv_pci_legacy_read_t ia64_pci_legacy_read;
  10. extern ia64_mv_pci_legacy_write_t ia64_pci_legacy_write;
  11. extern ia64_mv_inb_t __ia64_inb;
  12. extern ia64_mv_inw_t __ia64_inw;
  13. extern ia64_mv_inl_t __ia64_inl;
  14. extern ia64_mv_outb_t __ia64_outb;
  15. extern ia64_mv_outw_t __ia64_outw;
  16. extern ia64_mv_outl_t __ia64_outl;
  17. extern ia64_mv_mmiowb_t __ia64_mmiowb;
  18. extern ia64_mv_readb_t __ia64_readb;
  19. extern ia64_mv_readw_t __ia64_readw;
  20. extern ia64_mv_readl_t __ia64_readl;
  21. extern ia64_mv_readq_t __ia64_readq;
  22. extern ia64_mv_readb_t __ia64_readb_relaxed;
  23. extern ia64_mv_readw_t __ia64_readw_relaxed;
  24. extern ia64_mv_readl_t __ia64_readl_relaxed;
  25. extern ia64_mv_readq_t __ia64_readq_relaxed;
  26. #define MACHVEC_HELPER(name) \
  27. struct ia64_machine_vector machvec_##name __attribute__ ((unused, __section__ (".machvec"))) \
  28. = MACHVEC_INIT(name);
  29. #define MACHVEC_DEFINE(name) MACHVEC_HELPER(name)
  30. MACHVEC_DEFINE(MACHVEC_PLATFORM_NAME)