Linux Audio

Check our new training course

In-person Linux kernel drivers training

Jun 16-20, 2025
Register
Loading...
Note: File does not exist in v5.9.
  1/*
  2 * Copyright (c) 2002-2003,2006 Silicon Graphics, Inc.  All Rights Reserved.
  3 * 
  4 * This program is free software; you can redistribute it and/or modify it 
  5 * under the terms of version 2 of the GNU General Public License 
  6 * as published by the Free Software Foundation.
  7 * 
  8 * This program is distributed in the hope that it would be useful, but 
  9 * WITHOUT ANY WARRANTY; without even the implied warranty of 
 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
 11 * 
 12 * Further, this software is distributed without any warranty that it is 
 13 * free of the rightful claim of any third person regarding infringement 
 14 * or the like.  Any license provided herein, whether implied or 
 15 * otherwise, applies only to this software file.  Patent licenses, if 
 16 * any, provided herein do not apply to combinations of this program with 
 17 * other software, or any other product whatsoever.
 18 * 
 19 * You should have received a copy of the GNU General Public 
 20 * License along with this program; if not, write the Free Software 
 21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
 22 * 
 23 * For further information regarding this notice, see: 
 24 * 
 25 * http://oss.sgi.com/projects/GenInfo/NoticeExplan
 26 */
 27
 28#ifndef _ASM_IA64_MACHVEC_SN2_H
 29#define _ASM_IA64_MACHVEC_SN2_H
 30
 31extern ia64_mv_setup_t sn_setup;
 32extern ia64_mv_cpu_init_t sn_cpu_init;
 33extern ia64_mv_irq_init_t sn_irq_init;
 34extern ia64_mv_send_ipi_t sn2_send_IPI;
 35extern ia64_mv_timer_interrupt_t sn_timer_interrupt;
 36extern ia64_mv_global_tlb_purge_t sn2_global_tlb_purge;
 37extern ia64_mv_tlb_migrate_finish_t	sn_tlb_migrate_finish;
 38extern ia64_mv_irq_to_vector sn_irq_to_vector;
 39extern ia64_mv_local_vector_to_irq sn_local_vector_to_irq;
 40extern ia64_mv_pci_get_legacy_mem_t sn_pci_get_legacy_mem;
 41extern ia64_mv_pci_legacy_read_t sn_pci_legacy_read;
 42extern ia64_mv_pci_legacy_write_t sn_pci_legacy_write;
 43extern ia64_mv_inb_t __sn_inb;
 44extern ia64_mv_inw_t __sn_inw;
 45extern ia64_mv_inl_t __sn_inl;
 46extern ia64_mv_outb_t __sn_outb;
 47extern ia64_mv_outw_t __sn_outw;
 48extern ia64_mv_outl_t __sn_outl;
 49extern ia64_mv_mmiowb_t __sn_mmiowb;
 50extern ia64_mv_readb_t __sn_readb;
 51extern ia64_mv_readw_t __sn_readw;
 52extern ia64_mv_readl_t __sn_readl;
 53extern ia64_mv_readq_t __sn_readq;
 54extern ia64_mv_readb_t __sn_readb_relaxed;
 55extern ia64_mv_readw_t __sn_readw_relaxed;
 56extern ia64_mv_readl_t __sn_readl_relaxed;
 57extern ia64_mv_readq_t __sn_readq_relaxed;
 58extern ia64_mv_dma_get_required_mask	sn_dma_get_required_mask;
 59extern ia64_mv_dma_init			sn_dma_init;
 60extern ia64_mv_migrate_t		sn_migrate;
 61extern ia64_mv_kernel_launch_event_t	sn_kernel_launch_event;
 62extern ia64_mv_setup_msi_irq_t		sn_setup_msi_irq;
 63extern ia64_mv_teardown_msi_irq_t	sn_teardown_msi_irq;
 64extern ia64_mv_pci_fixup_bus_t		sn_pci_fixup_bus;
 65
 66
 67/*
 68 * This stuff has dual use!
 69 *
 70 * For a generic kernel, the macros are used to initialize the
 71 * platform's machvec structure.  When compiling a non-generic kernel,
 72 * the macros are used directly.
 73 */
 74#define platform_name			"sn2"
 75#define platform_setup			sn_setup
 76#define platform_cpu_init		sn_cpu_init
 77#define platform_irq_init		sn_irq_init
 78#define platform_send_ipi		sn2_send_IPI
 79#define platform_timer_interrupt	sn_timer_interrupt
 80#define platform_global_tlb_purge       sn2_global_tlb_purge
 81#define platform_tlb_migrate_finish	sn_tlb_migrate_finish
 82#define platform_pci_fixup		sn_pci_fixup
 83#define platform_inb			__sn_inb
 84#define platform_inw			__sn_inw
 85#define platform_inl			__sn_inl
 86#define platform_outb			__sn_outb
 87#define platform_outw			__sn_outw
 88#define platform_outl			__sn_outl
 89#define platform_mmiowb			__sn_mmiowb
 90#define platform_readb			__sn_readb
 91#define platform_readw			__sn_readw
 92#define platform_readl			__sn_readl
 93#define platform_readq			__sn_readq
 94#define platform_readb_relaxed		__sn_readb_relaxed
 95#define platform_readw_relaxed		__sn_readw_relaxed
 96#define platform_readl_relaxed		__sn_readl_relaxed
 97#define platform_readq_relaxed		__sn_readq_relaxed
 98#define platform_irq_to_vector		sn_irq_to_vector
 99#define platform_local_vector_to_irq	sn_local_vector_to_irq
100#define platform_pci_get_legacy_mem	sn_pci_get_legacy_mem
101#define platform_pci_legacy_read	sn_pci_legacy_read
102#define platform_pci_legacy_write	sn_pci_legacy_write
103#define platform_dma_get_required_mask	sn_dma_get_required_mask
104#define platform_dma_init		sn_dma_init
105#define platform_migrate		sn_migrate
106#define platform_kernel_launch_event    sn_kernel_launch_event
107#ifdef CONFIG_PCI_MSI
108#define platform_setup_msi_irq		sn_setup_msi_irq
109#define platform_teardown_msi_irq	sn_teardown_msi_irq
110#else
111#define platform_setup_msi_irq		((ia64_mv_setup_msi_irq_t*)NULL)
112#define platform_teardown_msi_irq	((ia64_mv_teardown_msi_irq_t*)NULL)
113#endif
114#define platform_pci_fixup_bus		sn_pci_fixup_bus
115
116#include <asm/sn/io.h>
117
118#endif /* _ASM_IA64_MACHVEC_SN2_H */