Commit 9337a357 authored by David Mosberger's avatar David Mosberger

Merge tiger.hpl.hp.com:/data1/bk/vanilla/linux-2.5

into tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5
parents e67eee86 390611cb
......@@ -16,10 +16,11 @@ config IA64
The Itanium Processor Family is Intel's 64-bit successor to
the 32-bit X86 line. The IA-64 Linux project has a home
page at <http://www.linuxia64.org/> and a mailing list at
linux-ia64@linuxia64.org.
linux-ia64@vger.kernel.org.
config 64BIT
def_bool y
bool
default y
config MMU
bool
......@@ -38,13 +39,13 @@ config EFI
default y
choice
prompt "IA-64 processor type"
prompt "Processor type"
default ITANIUM
config ITANIUM
bool "Itanium"
help
Select your IA-64 processor type. The default is Intel Itanium.
Select your IA-64 processor type. The default is Itanium.
This choice is safe for all IA-64 systems, but may not perform
optimally on systems with, say, Itanium 2 or newer processors.
......@@ -56,7 +57,7 @@ config MCKINLEY
endchoice
choice
prompt "IA-64 system type"
prompt "System type"
default IA64_GENERIC
config IA64_GENERIC
......@@ -65,17 +66,16 @@ config IA64_GENERIC
select ACPI_NUMA
select VIRTUAL_MEM_MAP
select DISCONTIGMEM
---help---
help
This selects the system type of your hardware. A "generic" kernel
will run on any supported IA-64 system. However, if you configure
a kernel for your specific system, it will be faster and smaller.
DIG-compliant For DIG ("Developer's Interface Guide") compliant
systems
HP-zx1 For HP systems
generic For any supported IA-64 system
DIG-compliant For DIG ("Developer's Interface Guide") compliant systems
HP-zx1/sx1000 For HP systems
SGI-SN2 For SGI Altix systems
Ski-simulator For the HP simulator
(<http://www.hpl.hp.com/research/linux/ski/>)
Ski-simulator For the HP simulator (<http://www.hpl.hp.com/research/linux/ski/>)
If you don't know what to do, choose "generic".
......@@ -83,11 +83,10 @@ config IA64_DIG
bool "DIG-compliant"
config IA64_HP_ZX1
bool "HP-zx1"
bool "HP-zx1/sx1000"
help
Build a kernel that runs on HP zx1-based systems. This adds support
for the zx1 I/O MMU and makes root bus bridges appear in PCI config
space (required for zx1 agpgart support).
Build a kernel that runs on HP zx1 and sx1000 systems. This adds
support for the HP I/O MMU.
config IA64_SGI_SN2
bool "SGI-SN2"
......@@ -103,7 +102,7 @@ choice
config IA64_PAGE_SIZE_4KB
bool "4KB"
---help---
help
This lets you select the page size of the kernel. For best IA-64
performance, a page size of 8KB or 16KB is recommended. For best
IA-32 compatibility, a page size of 4KB should be selected (the vast
......@@ -134,7 +133,7 @@ config ACPI
bool
depends on !IA64_HP_SIM
default y
---help---
help
ACPI/OSPM support for Linux is currently under development. As such,
this support is preliminary and EXPERIMENTAL. Configuring ACPI
support enables kernel interfaces that allow higher level software
......@@ -182,7 +181,7 @@ config IA64_BRL_EMU
default y
config ITANIUM_BSTEP_SPECIFIC
bool "Enable Itanium B-step specific code"
bool "Itanium B-step specific code"
depends on ITANIUM
help
Select this option to build a kernel for an Itanium prototype system
......@@ -197,38 +196,30 @@ config IA64_L1_CACHE_SHIFT
# align cache-sensitive data to 64 bytes
config MCKINLEY_ASTEP_SPECIFIC
bool "Enable McKinley A-step specific code"
bool "McKinley A-step specific code"
depends on MCKINLEY
help
Select this option to build a kernel for an IA-64 McKinley prototype
system with any A-stepping CPU.
config MCKINLEY_A0_SPECIFIC
bool "Enable McKinley A0/A1-step specific code"
bool "McKinley A0/A1-step specific code"
depends on MCKINLEY_ASTEP_SPECIFIC
help
Select this option to build a kernel for an IA-64 McKinley prototype
system with an A0 or A1 stepping CPU.
config NUMA
bool "Enable NUMA support" if IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
default y if IA64_SGI_SN2 || IA64_GENERIC
bool "NUMA support"
depends on !IA64_HP_SIM
default y if IA64_SGI_SN2
help
Say Y to compile the kernel to support NUMA (Non-Uniform Memory
Access). This option is for configuring high-end multiprocessor
server systems. If in doubt, say N.
config DISCONTIGMEM
bool "Discontiguous memory support" if (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC) && NUMA && VIRTUAL_MEM_MAP
default y if (IA64_SGI_SN2 || IA64_GENERIC) && NUMA
help
Say Y to support efficient handling of discontiguous physical memory,
for architectures which are either NUMA (Non-Uniform Memory Access)
or have huge holes in the physical address space for other reasons.
See <file:Documentation/vm/numa> for more.
config VIRTUAL_MEM_MAP
bool "Enable Virtual Mem Map"
bool "Virtual mem map"
default y if !IA64_HP_SIM
help
Say Y to compile the kernel with support for a virtual mem map.
......@@ -237,8 +228,18 @@ config VIRTUAL_MEM_MAP
require the DISCONTIGMEM option for your machine. If you are
unsure, say Y.
config DISCONTIGMEM
bool "Discontiguous memory support"
depends on (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC) && NUMA && VIRTUAL_MEM_MAP
default y if (IA64_SGI_SN2 || IA64_GENERIC) && NUMA
help
Say Y to support efficient handling of discontiguous physical memory,
for architectures which are either NUMA (Non-Uniform Memory Access)
or have huge holes in the physical address space for other reasons.
See <file:Documentation/vm/numa> for more.
config IA64_MCA
bool "Enable IA-64 Machine Check Abort"
bool "Machine Check Abort"
default y if !IA64_HP_SIM
help
Say Y here to enable machine check support for IA-64. If you're
......@@ -248,7 +249,7 @@ config PM
bool "Power Management support"
depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
default y
---help---
help
"Power Management" means that parts of your computer are shut
off or put into a power conserving "sleep" mode if they are not
being used. There are two competing standards for doing this: APM
......@@ -257,8 +258,7 @@ config PM
Power Management is most important for battery powered laptop
computers; if you have a laptop, check out the Linux Laptop home
page on the WWW at
<http://www.cs.utexas.edu/users/kharker/linux-laptop/> and the
page on the WWW at <http://www.linux-on-laptops.com/> and the
Battery Powered Linux mini-HOWTO, available from
<http://www.tldp.org/docs.html#howto>.
......@@ -268,11 +268,11 @@ config PM
config IOSAPIC
bool
depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1 || IA64_SGI_SN2
depends on !IA64_HP_SIM
default y
config IA64_SGI_SN_SIM
bool "Enable SGI Medusa Simulator Support"
bool "SGI Medusa Simulator Support"
depends on IA64_SGI_SN2
help
If you are compiling a kernel that will run under SGI's IA-64
......@@ -283,7 +283,7 @@ config FORCE_MAX_ZONEORDER
default "18"
choice
prompt "IA-64 Huge TLB Page Size"
prompt "Huge TLB page size"
depends on HUGETLB_PAGE
default HUGETLB_PAGE_SIZE_16MB
......@@ -317,7 +317,7 @@ endchoice
config IA64_PAL_IDLE
bool "Use PAL_HALT_LIGHT in idle loop"
---help---
help
Say Y here to enable use of PAL_HALT_LIGHT in the cpu_idle loop.
This allows the CPU to enter a low power state when idle. You
can enable CONFIG_IA64_PALINFO and check /proc/pal/cpu0/power_info
......@@ -325,24 +325,35 @@ config IA64_PAL_IDLE
unsure your firmware supports it, answer N.
config SMP
bool "SMP support"
---help---
bool "Symmetric multi-processing support"
help
This enables support for systems with more than one CPU. If you have
a system with only one CPU say N. If you have a system with more than
one CPU, say Y.
a system with only one CPU, say N. If you have a system with more
than one CPU, say Y.
If you say N here, the kernel will run on single and multiprocessor
systems, but will use only one CPU of a multiprocessor system. If
systems, but will use only one CPU of a multiprocessor system. If
you say Y here, the kernel will run on many, but not all,
singleprocessor system. On a singleprocessor system, the kernel
single processor systems. On a single processor system, the kernel
will run faster if you say N here.
See also the <file:Documentation/smp.tex>,
<file:Documentation/smp.txt>, and the SMP-HOWTO available at
<http://www.tldp.org/docs.html#howto>.
See also the <file:Documentation/smp.txt> and the SMP-HOWTO
available at <http://www.tldp.org/docs.html#howto>.
If you don't know what to do here, say N.
config NR_CPUS
int "Maximum number of CPUs (2-512)"
range 2 512
depends on SMP
default "64"
help
You should set this to the number of CPUs in your system, but
keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
only use 2 CPUs on a >2 CPU system. Setting this to a value larger
than 64 will cause the use of a CPU mask array, causing a small
performance hit.
config PREEMPT
bool "Preemptible Kernel"
help
......@@ -355,8 +366,13 @@ config PREEMPT
Say Y here if you are building a kernel for a desktop, embedded
or real-time system. Say N if you are unsure.
config HAVE_DEC_LOCK
bool
depends on (SMP || PREEMPT)
default y
config IA32_SUPPORT
bool "Support running of Linux/x86 binaries"
bool "Support for Linux/x86 binaries"
help
IA-64 processors can execute IA-32 (X86) instructions. By
saying Y here, the kernel will include IA-32 system call
......@@ -369,11 +385,6 @@ config COMPAT
depends on IA32_SUPPORT
default y
config HAVE_DEC_LOCK
bool
depends on (SMP || PREEMPT)
default y
config PERFMON
bool "Performance monitor support"
help
......@@ -393,7 +404,6 @@ config IA64_PALINFO
To use this option, you have to ensure that the "/proc file system
support" (CONFIG_PROC_FS) is enabled, too.
config EFI_VARS
tristate "/proc/efi/vars support"
help
......@@ -404,18 +414,6 @@ config EFI_VARS
To use this option, you have to check that the "/proc file system
support" (CONFIG_PROC_FS) is enabled, too.
config NR_CPUS
int "Maximum number of CPUs (2-512)"
range 2 512
depends on SMP
default "64"
help
You should set this to the number of CPUs in your system, but
keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
only use 2 CPUs on a >2 CPU system. Setting this to a value larger
than 64 will cause the use of a CPU mask array, causing a small
performance hit.
source "fs/Kconfig.binfmt"
if !IA64_HP_SIM
......@@ -443,7 +441,7 @@ source "drivers/pci/Kconfig"
config HOTPLUG
bool "Support for hot-pluggable devices"
---help---
help
Say Y here if you want to plug devices into your computer while
the system is running, and be able to use them quickly. In many
cases, the devices can likewise be unplugged at any time too.
......@@ -510,6 +508,8 @@ source "drivers/input/Kconfig"
source "drivers/char/Kconfig"
source "drivers/i2c/Kconfig"
#source drivers/misc/Config.in
source "drivers/media/Kconfig"
......
......@@ -33,6 +33,5 @@ struct hw_interrupt_type irq_type_ia64_lsapic = {
.enable = lsapic_noop,
.disable = lsapic_noop,
.ack = lsapic_noop,
.end = lsapic_noop,
.set_affinity = (void (*)(unsigned int, unsigned long)) lsapic_noop
.end = lsapic_noop
};
......@@ -467,10 +467,10 @@ smp_build_cpu_map (void)
#ifdef CONFIG_NUMA
/* on which node is each logical CPU (one cacheline even for 64 CPUs) */
volatile u8 cpu_to_node_map[NR_CPUS] __cacheline_aligned;
u8 cpu_to_node_map[NR_CPUS] __cacheline_aligned;
EXPORT_SYMBOL(cpu_to_node_map);
/* which logical CPUs are on which nodes */
volatile cpumask_t node_to_cpu_mask[MAX_NUMNODES] __cacheline_aligned;
cpumask_t node_to_cpu_mask[MAX_NUMNODES] __cacheline_aligned;
/*
* Build cpu to node mapping and initialize the per node cpu masks.
......@@ -566,8 +566,8 @@ smp_cpus_done (unsigned int dummy)
if (cpu_online(cpu))
bogosum += cpu_data(cpu)->loops_per_jiffy;
printk(KERN_INFO "Total of %lu processors activated (%lu.%02lu BogoMIPS).\n",
num_online_cpus(), bogosum/(500000/HZ), (bogosum/(5000/HZ))%100);
printk(KERN_INFO "Total of %d processors activated (%lu.%02lu BogoMIPS).\n",
(int)num_online_cpus(), bogosum/(500000/HZ), (bogosum/(5000/HZ))%100);
}
int __devinit
......
......@@ -21,6 +21,7 @@
#include <linux/profile.h>
#include <linux/timex.h>
#include <asm/machvec.h>
#include <asm/delay.h>
#include <asm/hw_irq.h>
#include <asm/ptrace.h>
......@@ -243,6 +244,8 @@ timer_interrupt (int irq, void *dev_id, struct pt_regs *regs)
{
unsigned long new_itm;
platform_timer_interrupt(irq, dev_id, regs);
new_itm = local_cpu_data->itm_next;
if (!time_after(ia64_get_itc(), new_itm))
......
......@@ -10,4 +10,4 @@
#
obj-y += cache.o io.o ptc_deadlock.o sn2_smp.o sn_proc_fs.o \
prominfo_proc.o timer.o
prominfo_proc.o timer.o timer_interrupt.o
......@@ -50,7 +50,7 @@ wait_piowc(void)
piows = pda->pio_write_status_addr;
do {
__asm__ __volatile__ ("mf.a" ::: "memory");
ia64_mfa();
} while (((ws = *piows) & SH_PIO_WRITE_STATUS_0_PENDING_WRITE_COUNT_MASK) !=
SH_PIO_WRITE_STATUS_0_PENDING_WRITE_COUNT_MASK);
return ws;
......@@ -93,7 +93,8 @@ sn2_global_tlb_purge (unsigned long start, unsigned long end, unsigned long nbit
if (is_headless_node(cnode))
continue;
if (cnode == mycnode) {
asm volatile ("ptc.ga %0,%1;;srlz.i;;" :: "r"(start), "r"(nbits<<2) : "memory");
ia64_ptcga(start, nbits<<2);
ia64_srlz_i();
} else {
nasid = cnodeid_to_nasid(cnode);
ptc0 = CHANGE_NASID(nasid, ptc0);
......
/*
* Copyright (c) 2002 Silicon Graphics, Inc. All Rights Reserved.
*
*
* Copyright (c) 2003 Silicon Graphics, Inc. All Rights Reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of version 2 of the GNU General Public License
......@@ -30,56 +32,33 @@
* http://oss.sgi.com/projects/GenInfo/NoticeExplan
*/
#ifndef _ASM_IA64_MACHVEC_SN1_h
#define _ASM_IA64_MACHVEC_SN1_h
#include <linux/interrupt.h>
#include <asm/sn/pda.h>
#include <asm/sn/leds.h>
extern ia64_mv_setup_t sn1_setup;
extern ia64_mv_cpu_init_t sn_cpu_init;
extern ia64_mv_irq_init_t sn1_irq_init;
extern ia64_mv_send_ipi_t sn1_send_IPI;
extern ia64_mv_global_tlb_purge_t sn1_global_tlb_purge;
extern ia64_mv_inb_t sn1_inb;
extern ia64_mv_inw_t sn1_inw;
extern ia64_mv_inl_t sn1_inl;
extern ia64_mv_outb_t sn1_outb;
extern ia64_mv_outw_t sn1_outw;
extern ia64_mv_outl_t sn1_outl;
extern ia64_mv_dma_alloc_coherent sn1_dma_alloc_coherent;
extern ia64_mv_dma_free_coherent sn1_dma_free_coherent;
extern ia64_mv_dma_map_single sn1_dma_map_single;
extern ia64_mv_dma_unmap_single sn1_dma_unmap_single;
extern ia64_mv_dma_map_sg sn1_dma_map_sg;
extern ia64_mv_dma_unmap_sg sn1_dma_unmap_sg;
extern ia64_mv_dma_sync_single sn1_dma_sync_single;
extern ia64_mv_dma_sync_sg sn1_dma_sync_sg;
extern void sn_lb_int_war_check(void);
extern irqreturn_t timer_interrupt (int irq, void *dev_id, struct pt_regs *regs);
/*
* This stuff has dual use!
*
* For a generic kernel, the macros are used to initialize the
* platform's machvec structure. When compiling a non-generic kernel,
* the macros are used directly.
*/
#define platform_name "sn1"
#define platform_setup sn1_setup
#define platform_cpu_init sn_cpu_init
#define platform_irq_init sn1_irq_init
#define platform_send_ipi sn1_send_IPI
#define platform_global_tlb_purge sn1_global_tlb_purge
#define platform_inb sn1_inb
#define platform_inw sn1_inw
#define platform_inl sn1_inl
#define platform_outb sn1_outb
#define platform_outw sn1_outw
#define platform_outl sn1_outl
#define platform_dma_init machvec_noop
#define platform_dma_alloc_coherent sn1_dma_alloc_coherent
#define platform_dma_free_coherent sn1_dma_free_coherent
#define platform_dma_map_single sn1_dma_map_single
#define platform_dma_unmap_single sn1_dma_unmap_single
#define platform_dma_map_sg sn1_dma_map_sg
#define platform_dma_unmap_sg sn1_dma_unmap_sg
#define platform_dma_sync_single sn1_dma_sync_single
#define platform_dma_sync_sg sn1_dma_sync_sg
#define SN_LB_INT_WAR_INTERVAL 100
void
sn_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{
/* LED blinking */
if (!pda->hb_count--) {
pda->hb_count = HZ/2;
set_led_bits(pda->hb_state ^= LED_CPU_HEARTBEAT, LED_CPU_HEARTBEAT);
printk("Blink\n");
}
#endif /* _ASM_IA64_MACHVEC_SN1_h */
if (enable_shub_wars_1_1()) {
/* Bugfix code for SHUB 1.1 */
if (pda->pio_shub_war_cam_addr)
*pda->pio_shub_war_cam_addr = 0x8000000000000010UL;
}
if (pda->sn_lb_int_war_ticks == 0)
sn_lb_int_war_check();
pda->sn_lb_int_war_ticks++;
if (pda->sn_lb_int_war_ticks >= SN_LB_INT_WAR_INTERVAL)
pda->sn_lb_int_war_ticks = 0;
}
......@@ -7,8 +7,8 @@
* probably would be better to clean up binfmt_elf.c so it does not
* necessarily depend on there being a.out support.
*
* Copyright (C) 1998-2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998-2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co.
*/
#include <linux/types.h>
......
......@@ -4,8 +4,10 @@
* Needs:
* void check_bugs(void);
*
* Copyright (C) 1998, 1999, 2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-alpha/bugs.h>.
*
* Modified 1998, 1999, 2003
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co.
*/
#ifndef _ASM_IA64_BUGS_H
#define _ASM_IA64_BUGS_H
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_BYTEORDER_H
/*
* Copyright (C) 1998, 1999 Hewlett-Packard Co
* Copyright (C) 1998, 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co.
*/
#include <asm/types.h>
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_CHECKSUM_H
/*
* Copyright (C) 1998, 1999 Hewlett-Packard Co
* Copyright (C) 1998, 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
/*
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_CURRENT_H
/*
* Copyright (C) 1998-2000 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998-2000
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#include <asm/intrinsics.h>
......
#ifndef _ASM_IA64_ERRNO_H
#define _ASM_IA64_ERRNO_H
/*
* This is derived from the Linux/x86 version.
*
* Copyright (C) 1998, 1999, 2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
*/
#include <asm-generic/errno.h>
#endif /* _ASM_IA64_ERRNO_H */
#ifndef _ASM_IA64_FCNTL_H
#define _ASM_IA64_FCNTL_H
/*
* This is mostly compatible with Linux/x86.
* Based on <asm-i386/fcntl.h>.
*
* Copyright (C) 1998-2000 Hewlett-Packard Co
* Copyright (C) 1998-2000 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998-2000
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co.
*/
/*
......
......@@ -2,10 +2,10 @@
#define _ASM_IA64_IOCTL_H
/*
* This is mostly derived from the Linux/x86 version.
* Based on <asm-i386/ioctl.h>.
*
* Copyright (C) 1998, 1999 Hewlett-Packard Co
* Copyright (C) 1998, 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
/* ioctl command encoding: 32 bits total, command in lower 16 bits,
......
......@@ -2,8 +2,10 @@
#define _ASM_IA64_IOCTLS_H
/*
* Copyright (C) 1998, 1999, 2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/ioctls.h>
*
* Modified 1998, 1999, 2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#include <asm/ioctl.h>
......
......@@ -28,6 +28,7 @@ typedef void ia64_mv_mca_handler_t (void);
typedef void ia64_mv_cmci_handler_t (int, void *, struct pt_regs *);
typedef void ia64_mv_log_print_t (void);
typedef void ia64_mv_send_ipi_t (int, int, int, int);
typedef void ia64_mv_timer_interrupt_t (int, void *, struct pt_regs *);
typedef void ia64_mv_global_tlb_purge_t (unsigned long, unsigned long, unsigned long);
typedef struct irq_desc *ia64_mv_irq_desc (unsigned int);
typedef u8 ia64_mv_irq_to_vector (u8);
......@@ -90,6 +91,7 @@ extern void machvec_memory_fence (void);
# define platform_cmci_handler ia64_mv.cmci_handler
# define platform_log_print ia64_mv.log_print
# define platform_send_ipi ia64_mv.send_ipi
# define platform_timer_interrupt ia64_mv.timer_interrupt
# define platform_global_tlb_purge ia64_mv.global_tlb_purge
# define platform_dma_init ia64_mv.dma_init
# define platform_dma_alloc_coherent ia64_mv.dma_alloc_coherent
......@@ -131,6 +133,7 @@ struct ia64_machine_vector {
ia64_mv_cmci_handler_t *cmci_handler;
ia64_mv_log_print_t *log_print;
ia64_mv_send_ipi_t *send_ipi;
ia64_mv_timer_interrupt_t *timer_interrupt;
ia64_mv_global_tlb_purge_t *global_tlb_purge;
ia64_mv_dma_init *dma_init;
ia64_mv_dma_alloc_coherent *dma_alloc_coherent;
......@@ -168,6 +171,7 @@ struct ia64_machine_vector {
platform_cmci_handler, \
platform_log_print, \
platform_send_ipi, \
platform_timer_interrupt, \
platform_global_tlb_purge, \
platform_dma_init, \
platform_dma_alloc_coherent, \
......@@ -243,6 +247,9 @@ extern ia64_mv_dma_supported swiotlb_dma_supported;
#ifndef platform_send_ipi
# define platform_send_ipi ia64_send_ipi /* default to architected version */
#endif
#ifndef platform_timer_interrupt
# define platform_timer_interrupt ((ia64_mv_timer_interrupt_t *) machvec_noop)
#endif
#ifndef platform_global_tlb_purge
# define platform_global_tlb_purge ia64_global_tlb_purge /* default to architected version */
#endif
......
......@@ -37,6 +37,7 @@ extern ia64_mv_setup_t sn_setup;
extern ia64_mv_cpu_init_t sn_cpu_init;
extern ia64_mv_irq_init_t sn_irq_init;
extern ia64_mv_send_ipi_t sn2_send_IPI;
extern ia64_mv_timer_interrupt_t sn_timer_interrupt;
extern ia64_mv_global_tlb_purge_t sn2_global_tlb_purge;
extern ia64_mv_irq_desc sn_irq_desc;
extern ia64_mv_irq_to_vector sn_irq_to_vector;
......@@ -73,6 +74,7 @@ extern ia64_mv_dma_supported sn_dma_supported;
#define platform_cpu_init sn_cpu_init
#define platform_irq_init sn_irq_init
#define platform_send_ipi sn2_send_IPI
#define platform_timer_interrupt sn_timer_interrupt
#define platform_global_tlb_purge sn2_global_tlb_purge
#define platform_pci_fixup sn_pci_fixup
#define platform_inb __sn_inb
......
......@@ -2,8 +2,10 @@
#define _ASM_IA64_MMAN_H
/*
* Copyright (C) 1998-2000, 2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/mman.h>.
*
* Modified 1998-2000, 2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#define PROT_READ 0x1 /* page can be read */
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_NAMEI_H
/*
* Copyright (C) 1998, 1999, 2001 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999, 2001
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#include <asm/ptrace.h>
......
......@@ -23,8 +23,8 @@
#include <asm/mmzone.h>
extern volatile u8 cpu_to_node_map[NR_CPUS] __cacheline_aligned;
extern volatile cpumask_t node_to_cpu_mask[MAX_NUMNODES] __cacheline_aligned;
extern u8 cpu_to_node_map[NR_CPUS] __cacheline_aligned;
extern cpumask_t node_to_cpu_mask[MAX_NUMNODES] __cacheline_aligned;
/* Stuff below this line could be architecture independent */
......
......@@ -4,8 +4,10 @@
/*
* Fundamental kernel parameters.
*
* Copyright (C) 1998, 1999, 2002-2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/param.h>.
*
* Modified 1998, 1999, 2002-2003
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#define EXEC_PAGESIZE 65536
......
......@@ -2,10 +2,10 @@
#define _ASM_IA64_POLL_H
/*
* poll(2) bit definitions. Chosen to be compatible with Linux/x86.
* poll(2) bit definitions. Based on <asm-i386/poll.h>.
*
* Copyright (C) 1998, 1999, 2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999, 2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#define POLLIN 0x0001
......
......@@ -6,8 +6,10 @@
* be a little careful about namespace pollution etc. Also, we cannot
* assume GCC is being used.
*
* Copyright (C) 1998-2000, 2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-alpha/posix_types.h>.
*
* Modified 1998-2000, 2003
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
typedef unsigned long __kernel_ino_t;
......
......@@ -53,12 +53,6 @@
*/
#define TASK_UNMAPPED_BASE (current->thread.map_base)
/*
* Bus types
*/
#define MCA_bus 0
#define MCA_bus__is_a_macro /* for versions in ksyms.c */
#define IA64_THREAD_FPH_VALID (__IA64_UL(1) << 0) /* floating-point high state valid? */
#define IA64_THREAD_DBG_VALID (__IA64_UL(1) << 1) /* debug registers valid? */
#define IA64_THREAD_PM_VALID (__IA64_UL(1) << 2) /* performance registers valid? */
......
......@@ -4,8 +4,10 @@
/*
* Resource limits
*
* Copyright (C) 1998, 1999 Hewlett-Packard Co
* Copyright (C) 1998, 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/resource.h>.
*
* Modified 1998, 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#include <asm/ustack.h>
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_SCATTERLIST_H
/*
* Copyright (C) 1998-1999, 2001-2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998-1999, 2001-2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
struct scatterlist {
......
......@@ -2,8 +2,10 @@
#define _ASM_IA64_SIGINFO_H
/*
* Copyright (C) 1998-2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/siginfo.h>.
*
* Modified 1998-2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#define SI_PAD_SIZE ((SI_MAX_SIZE/sizeof(int)) - 4)
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_SIGNAL_H
/*
* Copyright (C) 1998-2001, 2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998-2001, 2003
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*
* Unfortunately, this file is being included by bits/signal.h in
* glibc-2.x. Hence the #ifdef __KERNEL__ ugliness.
......
......@@ -2,10 +2,12 @@
#define _ASM_IA64_SOCKET_H
/*
* Socket related defines. This mostly mirrors the Linux/x86 version.
* Socket related defines.
*
* Copyright (C) 1998-2000 Hewlett-Packard Co
* Copyright (C) 1998-2000 David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/socket.h>.
*
* Modified 1998-2000
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#include <asm/sockios.h>
......
......@@ -2,11 +2,12 @@
#define _ASM_IA64_SOCKIOS_H
/*
* Socket-level I/O control calls. This mostly mirrors the Linux/x86
* version.
* Socket-level I/O control calls.
*
* Copyright (C) 1998, 1999 Hewlett-Packard Co
* Copyright (C) 1998, 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/sockios.h>.
*
* Modified 1998, 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#define FIOSETOWN 0x8901
#define SIOCSPGRP 0x8902
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_STAT_H
/*
* Copyright (C) 1998, 1999 Hewlett-Packard Co
* Copyright (C) 1998, 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
struct stat {
......
......@@ -2,8 +2,10 @@
#define _ASM_IA64_STATFS_H
/*
* Copyright (C) 1998, 1999, 2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/statfs.h>.
*
* Modified 1998, 1999, 2003
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#ifndef __KERNEL_STRICT_NAMES
......
......@@ -2,8 +2,10 @@
#define _ASM_IA64_TERMBITS_H
/*
* Copyright (C) 1999 Hewlett-Packard Co
* Copyright (C) 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-i386/termbits.h>.
*
* Modified 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*
* 99/01/28 Added new baudrates
*/
......
......@@ -2,8 +2,8 @@
#define _ASM_IA64_TERMIOS_H
/*
* Copyright (C) 1999 Hewlett-Packard Co
* Copyright (C) 1999 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1999
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*
* 99/01/28 Added N_IRDA and N_SMSBLOCK
*/
......
#ifndef _ASM_IA64_TLB_H
#define _ASM_IA64_TLB_H
/*
* Based on <asm-generic/tlb.h>.
*
* Copyright (C) 2002-2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
*
* This file was derived from asm-generic/tlb.h.
*/
/*
* Removing a translation from a page table (including TLB-shootdown) is a four-step
......
......@@ -7,8 +7,10 @@
* space pollution is not a major issue. However, for interoperability, libraries still
* need to be careful to avoid a name clashes.
*
* Copyright (C) 1998-2000, 2002 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
* Based on <asm-alpha/types.h>.
*
* Modified 1998-2000, 2002
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#ifdef __ASSEMBLY__
......
......@@ -26,6 +26,8 @@
* associated and, if so, sets r8 to -EFAULT and clears r9 to 0 and
* then resumes execution at the continuation point.
*
* Based on <asm-alpha/uaccess.h>.
*
* Copyright (C) 1998, 1999, 2001-2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
*/
......
......@@ -4,8 +4,9 @@
#include <linux/types.h>
/*
* The main single-value unaligned transfer routines. Derived from
* the Linux/Alpha version.
* The main single-value unaligned transfer routines.
*
* Based on <asm-alpha/unaligned.h>.
*
* Copyright (C) 1998, 1999, 2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
......
......@@ -24,8 +24,8 @@
* current->start_stack, so we round each of these in order to be able
* to write an integer number of pages.
*
* Copyright (C) 1998, 1999, 2001 Hewlett-Packard Co
* Copyright (C) 1998, 1999, 2001 David Mosberger-Tang <davidm@hpl.hp.com>
* Modified 1998, 1999, 2001
* David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
*/
#include <linux/ptrace.h>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment