machvec.h

来自「linux 内核源代码」· C头文件 代码 · 共 449 行 · 第 1/2 页

H
449
字号
	ia64_mv_pci_fixup_bus_t *pci_fixup_bus;	ia64_mv_kernel_launch_event_t *kernel_launch_event;} __attribute__((__aligned__(16))); /* align attrib? see above comment */#define MACHVEC_INIT(name)			\{						\	#name,					\	platform_setup,				\	platform_cpu_init,			\	platform_irq_init,			\	platform_send_ipi,			\	platform_timer_interrupt,		\	platform_global_tlb_purge,		\	platform_tlb_migrate_finish,		\	platform_dma_init,			\	platform_dma_alloc_coherent,		\	platform_dma_free_coherent,		\	platform_dma_map_single,		\	platform_dma_unmap_single,		\	platform_dma_map_sg,			\	platform_dma_unmap_sg,			\	platform_dma_sync_single_for_cpu,	\	platform_dma_sync_sg_for_cpu,		\	platform_dma_sync_single_for_device,	\	platform_dma_sync_sg_for_device,	\	platform_dma_mapping_error,			\	platform_dma_supported,			\	platform_irq_to_vector,			\	platform_local_vector_to_irq,		\	platform_pci_get_legacy_mem,		\	platform_pci_legacy_read,		\	platform_pci_legacy_write,		\	platform_inb,				\	platform_inw,				\	platform_inl,				\	platform_outb,				\	platform_outw,				\	platform_outl,				\	platform_mmiowb,			\	platform_readb,				\	platform_readw,				\	platform_readl,				\	platform_readq,				\	platform_readb_relaxed,			\	platform_readw_relaxed,			\	platform_readl_relaxed,			\	platform_readq_relaxed,			\	platform_migrate,			\	platform_setup_msi_irq,			\	platform_teardown_msi_irq,		\	platform_pci_fixup_bus,			\	platform_kernel_launch_event            \}extern struct ia64_machine_vector ia64_mv;extern void machvec_init (const char *name);extern void machvec_init_from_cmdline(const char *cmdline);# else#  error Unknown configuration.  Update asm-ia64/machvec.h.# endif /* CONFIG_IA64_GENERIC *//* * Declare default routines which aren't declared anywhere else: */extern ia64_mv_dma_init			swiotlb_init;extern ia64_mv_dma_alloc_coherent	swiotlb_alloc_coherent;extern ia64_mv_dma_free_coherent	swiotlb_free_coherent;extern ia64_mv_dma_map_single		swiotlb_map_single;extern ia64_mv_dma_unmap_single		swiotlb_unmap_single;extern ia64_mv_dma_map_sg		swiotlb_map_sg;extern ia64_mv_dma_unmap_sg		swiotlb_unmap_sg;extern ia64_mv_dma_sync_single_for_cpu	swiotlb_sync_single_for_cpu;extern ia64_mv_dma_sync_sg_for_cpu	swiotlb_sync_sg_for_cpu;extern ia64_mv_dma_sync_single_for_device swiotlb_sync_single_for_device;extern ia64_mv_dma_sync_sg_for_device	swiotlb_sync_sg_for_device;extern ia64_mv_dma_mapping_error	swiotlb_dma_mapping_error;extern ia64_mv_dma_supported		swiotlb_dma_supported;/* * Define default versions so we can extend machvec for new platforms without having * to update the machvec files for all existing platforms. */#ifndef platform_setup# define platform_setup			machvec_setup#endif#ifndef platform_cpu_init# define platform_cpu_init		machvec_noop#endif#ifndef platform_irq_init# define platform_irq_init		machvec_noop#endif#ifndef platform_send_ipi# define platform_send_ipi		ia64_send_ipi	/* default to architected version */#endif#ifndef platform_timer_interrupt# define platform_timer_interrupt 	machvec_timer_interrupt#endif#ifndef platform_global_tlb_purge# define platform_global_tlb_purge	ia64_global_tlb_purge /* default to architected version */#endif#ifndef platform_tlb_migrate_finish# define platform_tlb_migrate_finish	machvec_noop_mm#endif#ifndef platform_kernel_launch_event# define platform_kernel_launch_event	machvec_noop#endif#ifndef platform_dma_init# define platform_dma_init		swiotlb_init#endif#ifndef platform_dma_alloc_coherent# define platform_dma_alloc_coherent	swiotlb_alloc_coherent#endif#ifndef platform_dma_free_coherent# define platform_dma_free_coherent	swiotlb_free_coherent#endif#ifndef platform_dma_map_single# define platform_dma_map_single	swiotlb_map_single#endif#ifndef platform_dma_unmap_single# define platform_dma_unmap_single	swiotlb_unmap_single#endif#ifndef platform_dma_map_sg# define platform_dma_map_sg		swiotlb_map_sg#endif#ifndef platform_dma_unmap_sg# define platform_dma_unmap_sg		swiotlb_unmap_sg#endif#ifndef platform_dma_sync_single_for_cpu# define platform_dma_sync_single_for_cpu	swiotlb_sync_single_for_cpu#endif#ifndef platform_dma_sync_sg_for_cpu# define platform_dma_sync_sg_for_cpu		swiotlb_sync_sg_for_cpu#endif#ifndef platform_dma_sync_single_for_device# define platform_dma_sync_single_for_device	swiotlb_sync_single_for_device#endif#ifndef platform_dma_sync_sg_for_device# define platform_dma_sync_sg_for_device	swiotlb_sync_sg_for_device#endif#ifndef platform_dma_mapping_error# define platform_dma_mapping_error		swiotlb_dma_mapping_error#endif#ifndef platform_dma_supported# define  platform_dma_supported	swiotlb_dma_supported#endif#ifndef platform_irq_to_vector# define platform_irq_to_vector		__ia64_irq_to_vector#endif#ifndef platform_local_vector_to_irq# define platform_local_vector_to_irq	__ia64_local_vector_to_irq#endif#ifndef platform_pci_get_legacy_mem# define platform_pci_get_legacy_mem	ia64_pci_get_legacy_mem#endif#ifndef platform_pci_legacy_read# define platform_pci_legacy_read	ia64_pci_legacy_readextern int ia64_pci_legacy_read(struct pci_bus *bus, u16 port, u32 *val, u8 size);#endif#ifndef platform_pci_legacy_write# define platform_pci_legacy_write	ia64_pci_legacy_writeextern int ia64_pci_legacy_write(struct pci_bus *bus, u16 port, u32 val, u8 size);#endif#ifndef platform_inb# define platform_inb		__ia64_inb#endif#ifndef platform_inw# define platform_inw		__ia64_inw#endif#ifndef platform_inl# define platform_inl		__ia64_inl#endif#ifndef platform_outb# define platform_outb		__ia64_outb#endif#ifndef platform_outw# define platform_outw		__ia64_outw#endif#ifndef platform_outl# define platform_outl		__ia64_outl#endif#ifndef platform_mmiowb# define platform_mmiowb	__ia64_mmiowb#endif#ifndef platform_readb# define platform_readb		__ia64_readb#endif#ifndef platform_readw# define platform_readw		__ia64_readw#endif#ifndef platform_readl# define platform_readl		__ia64_readl#endif#ifndef platform_readq# define platform_readq		__ia64_readq#endif#ifndef platform_readb_relaxed# define platform_readb_relaxed	__ia64_readb_relaxed#endif#ifndef platform_readw_relaxed# define platform_readw_relaxed	__ia64_readw_relaxed#endif#ifndef platform_readl_relaxed# define platform_readl_relaxed	__ia64_readl_relaxed#endif#ifndef platform_readq_relaxed# define platform_readq_relaxed	__ia64_readq_relaxed#endif#ifndef platform_migrate# define platform_migrate machvec_noop_task#endif#ifndef platform_setup_msi_irq# define platform_setup_msi_irq		((ia64_mv_setup_msi_irq_t*)NULL)#endif#ifndef platform_teardown_msi_irq# define platform_teardown_msi_irq	((ia64_mv_teardown_msi_irq_t*)NULL)#endif#ifndef platform_pci_fixup_bus# define platform_pci_fixup_bus	machvec_noop_bus#endif#endif /* _ASM_IA64_MACHVEC_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?