Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
[sfrench/cifs-2.6.git] / arch / ia64 / include / asm / machvec_init.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #include <asm/iommu.h>
3 #include <asm/machvec.h>
4
5 extern ia64_mv_send_ipi_t ia64_send_ipi;
6 extern ia64_mv_global_tlb_purge_t ia64_global_tlb_purge;
7 extern ia64_mv_dma_get_required_mask ia64_dma_get_required_mask;
8 extern ia64_mv_irq_to_vector __ia64_irq_to_vector;
9 extern ia64_mv_local_vector_to_irq __ia64_local_vector_to_irq;
10 extern ia64_mv_pci_get_legacy_mem_t ia64_pci_get_legacy_mem;
11 extern ia64_mv_pci_legacy_read_t ia64_pci_legacy_read;
12 extern ia64_mv_pci_legacy_write_t ia64_pci_legacy_write;
13
14 extern ia64_mv_inb_t __ia64_inb;
15 extern ia64_mv_inw_t __ia64_inw;
16 extern ia64_mv_inl_t __ia64_inl;
17 extern ia64_mv_outb_t __ia64_outb;
18 extern ia64_mv_outw_t __ia64_outw;
19 extern ia64_mv_outl_t __ia64_outl;
20 extern ia64_mv_mmiowb_t __ia64_mmiowb;
21 extern ia64_mv_readb_t __ia64_readb;
22 extern ia64_mv_readw_t __ia64_readw;
23 extern ia64_mv_readl_t __ia64_readl;
24 extern ia64_mv_readq_t __ia64_readq;
25 extern ia64_mv_readb_t __ia64_readb_relaxed;
26 extern ia64_mv_readw_t __ia64_readw_relaxed;
27 extern ia64_mv_readl_t __ia64_readl_relaxed;
28 extern ia64_mv_readq_t __ia64_readq_relaxed;
29
30 #define MACHVEC_HELPER(name)                                                                    \
31  struct ia64_machine_vector machvec_##name __attribute__ ((unused, __section__ (".machvec")))   \
32         = MACHVEC_INIT(name);
33
34 #define MACHVEC_DEFINE(name)    MACHVEC_HELPER(name)
35
36 MACHVEC_DEFINE(MACHVEC_PLATFORM_NAME)