summaryrefslogtreecommitdiffstats
path: root/include/asm-arm
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-03-19 01:28:40 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-03-19 01:28:40 +0000
commit8abb719409c9060a7c0676f76e9182c1e0b8ca46 (patch)
treeb88cc5a6cd513a04a512b7e6215c873c90a1c5dd /include/asm-arm
parentf01bd7aeafd95a08aafc9e3636bb26974df69d82 (diff)
Merge with 2.3.99-pre1.
Diffstat (limited to 'include/asm-arm')
-rw-r--r--include/asm-arm/arch-cl7500/system.h2
-rw-r--r--include/asm-arm/arch-ebsa285/time.h7
-rw-r--r--include/asm-arm/parport.h58
-rw-r--r--include/asm-arm/procinfo.h6
-rw-r--r--include/asm-arm/ptrace.h5
-rw-r--r--include/asm-arm/system.h100
6 files changed, 101 insertions, 77 deletions
diff --git a/include/asm-arm/arch-cl7500/system.h b/include/asm-arm/arch-cl7500/system.h
index 24b64ede3..6daffc785 100644
--- a/include/asm-arm/arch-cl7500/system.h
+++ b/include/asm-arm/arch-cl7500/system.h
@@ -23,6 +23,4 @@
#define arch_power_off() do { } while (0)
-#define arch_power_off() do { } while (0)
-
#endif
diff --git a/include/asm-arm/arch-ebsa285/time.h b/include/asm-arm/arch-ebsa285/time.h
index b10bdd324..a837d8b0f 100644
--- a/include/asm-arm/arch-ebsa285/time.h
+++ b/include/asm-arm/arch-ebsa285/time.h
@@ -203,7 +203,8 @@ extern __inline__ void setup_timer(void)
{
int irq;
- if (machine_is_co285())
+ if (machine_is_co285() ||
+ machine_is_personal_server())
/*
* Add-in 21285s shouldn't access the RTC
*/
@@ -247,7 +248,9 @@ extern __inline__ void setup_timer(void)
rtc_base = 0;
}
- if (machine_is_ebsa285() || machine_is_co285()) {
+ if (machine_is_ebsa285() ||
+ machine_is_co285() ||
+ machine_is_personal_server()) {
gettimeoffset = timer1_gettimeoffset;
*CSR_TIMER1_CLR = 0;
diff --git a/include/asm-arm/parport.h b/include/asm-arm/parport.h
index 0f6c12151..bab49ad3a 100644
--- a/include/asm-arm/parport.h
+++ b/include/asm-arm/parport.h
@@ -1,7 +1,7 @@
/*
* parport.h: ARM-specific parport initialisation
*
- * Copyright (C) 1999 Tim Waugh <tim@cyberelk.demon.co.uk>
+ * Copyright (C) 1999, 2000 Tim Waugh <tim@cyberelk.demon.co.uk>
*
* This file should only be included by drivers/parport/parport_pc.c.
*/
@@ -9,60 +9,10 @@
#ifndef __ASMARM_PARPORT_H
#define __ASMARM_PARPORT_H
-#include <linux/config.h>
-
-/* Maximum number of ports to support. It is useless to set this greater
- than PARPORT_MAX (in <linux/parport.h>). */
-#define PARPORT_PC_MAX_PORTS 8
-
-/* If parport_cs (PCMCIA) is managing ports for us, we'll need the
- * probing routines forever; otherwise we can lose them at boot time. */
-#ifdef CONFIG_PARPORT_PC_PCMCIA
-#define __maybe_initdata
-#define __maybe_init
-#else
-#define __maybe_initdata __initdata
-#define __maybe_init __init
-#endif
-
-static int __maybe_init parport_pc_init_pci(int irq, int dma);
-static int __devinit parport_pc_init_superio(void);
-
-static int user_specified __maybe_initdata = 0;
-
-
-int __init
-parport_pc_init(int *io, int *io_hi, int *irq, int *dma)
+static int __devinit parport_pc_find_isa_ports (int autoirq, int autodma);
+static int __devinit parport_pc_find_nonpci_ports (int autoirq, int autodma)
{
- int count = 0, i = 0;
-
- if (io && *io) {
- /* Only probe the ports we were given. */
- user_specified = 1;
- do {
- if (!*io_hi) *io_hi = 0x400 + *io;
- if (parport_pc_probe_port(*(io++), *(io_hi++),
- *(irq++), *(dma++), NULL))
- count++;
- } while (*io && (++i < PARPORT_PC_MAX_PORTS));
- } else {
-#ifdef CONFIG_PCI
- count += parport_pc_init_superio ();
-#endif
-
- /* Probe all the likely ports. */
- if (parport_pc_probe_port(0x3bc, 0x7bc, irq[0], dma[0], NULL))
- count++;
- if (parport_pc_probe_port(0x378, 0x778, irq[0], dma[0], NULL))
- count++;
- if (parport_pc_probe_port(0x278, 0x678, irq[0], dma[0], NULL))
- count++;
-#ifdef CONFIG_PCI
- count += parport_pc_init_pci (irq[0], dma[0]);
-#endif
- }
-
- return count;
+ return parport_pc_find_isa_ports (autoirq, autodma);
}
#endif /* !(_ASMARM_PARPORT_H) */
diff --git a/include/asm-arm/procinfo.h b/include/asm-arm/procinfo.h
index 511a78005..0e6fcd87f 100644
--- a/include/asm-arm/procinfo.h
+++ b/include/asm-arm/procinfo.h
@@ -18,8 +18,10 @@ struct proc_info_item {
/*
* Note! struct processor is always defined if we're
* using MULTI_CPU, otherwise this entry is unused,
- * but still exists. NOTE! This structure is used
- * by assembler code! Check:
+ * but still exists.
+ *
+ * NOTE! The following structure is defined by assembly
+ * language, NOT C code. For more information, check:
* arch/arm/mm/proc-*.S and arch/arm/kernel/head-armv.S
*/
struct proc_info_list {
diff --git a/include/asm-arm/ptrace.h b/include/asm-arm/ptrace.h
index 0b4714211..961363cc7 100644
--- a/include/asm-arm/ptrace.h
+++ b/include/asm-arm/ptrace.h
@@ -3,6 +3,11 @@
#include <asm/proc/ptrace.h>
+#define PTRACE_GETREGS 12
+#define PTRACE_SETREGS 13
+#define PTRACE_GETFPREGS 14
+#define PTRACE_SETFPREGS 15
+
#ifndef __ASSEMBLY__
#define pc_pointer(v) \
((v) & ~PCMASK)
diff --git a/include/asm-arm/system.h b/include/asm-arm/system.h
index a0daf6edf..a43117330 100644
--- a/include/asm-arm/system.h
+++ b/include/asm-arm/system.h
@@ -16,22 +16,23 @@ extern unsigned int system_serial_high;
extern unsigned int __machine_arch_type;
/* see arch/arm/kernel/setup.c for a description of these */
-#define MACH_TYPE_EBSA110 0
-#define MACH_TYPE_RISCPC 1
-#define MACH_TYPE_NEXUSPCI 3
-#define MACH_TYPE_EBSA285 4
-#define MACH_TYPE_NETWINDER 5
-#define MACH_TYPE_CATS 6
-#define MACH_TYPE_TBOX 7
-#define MACH_TYPE_CO285 8
-#define MACH_TYPE_CLPS7110 9
-#define MACH_TYPE_ARCHIMEDES 10
-#define MACH_TYPE_A5K 11
-#define MACH_TYPE_ETOILE 12
-#define MACH_TYPE_LACIE_NAS 13
-#define MACH_TYPE_CLPS7500 14
-#define MACH_TYPE_SHARK 15
-#define MACH_TYPE_SA1100 16
+#define MACH_TYPE_EBSA110 0
+#define MACH_TYPE_RISCPC 1
+#define MACH_TYPE_NEXUSPCI 3
+#define MACH_TYPE_EBSA285 4
+#define MACH_TYPE_NETWINDER 5
+#define MACH_TYPE_CATS 6
+#define MACH_TYPE_TBOX 7
+#define MACH_TYPE_CO285 8
+#define MACH_TYPE_CLPS7110 9
+#define MACH_TYPE_ARCHIMEDES 10
+#define MACH_TYPE_A5K 11
+#define MACH_TYPE_ETOILE 12
+#define MACH_TYPE_LACIE_NAS 13
+#define MACH_TYPE_CLPS7500 14
+#define MACH_TYPE_SHARK 15
+#define MACH_TYPE_SA1100 16
+#define MACH_TYPE_PERSONAL_SERVER 17
/*
* Sort out a definition for machine_arch_type
@@ -41,6 +42,11 @@ extern unsigned int __machine_arch_type;
* 2. If two or more architectures are selected, then the selected
* machine_is_xxx() are variable, and the unselected machine_is_xxx()
* are constant zero.
+ *
+ * In general, you should use machine_is_xxxx() in your code, not:
+ * - switch (machine_arch_type) { }
+ * - if (machine_arch_type = xxxx)
+ * - __machine_arch_type
*/
#ifdef CONFIG_ARCH_EBSA110
# ifdef machine_arch_type
@@ -114,6 +120,54 @@ extern unsigned int __machine_arch_type;
# define machine_is_co285() (0)
#endif
+#ifdef CONFIG_ARCH_ARC
+# ifdef machine_arch_type
+# undef machine_arch_type
+# define machine_arch_type __machine_arch_type
+# else
+# define machine_arch_type MACH_TYPE_ARCHIMEDES
+# endif
+# define machine_is_arc() (machine_arch_type == MACH_TYPE_ARCHIMEDES)
+#else
+# define machine_is_arc() (0)
+#endif
+
+#ifdef CONFIG_ARCH_A5K
+# ifdef machine_arch_type
+# undef machine_arch_type
+# define machine_arch_type __machine_arch_type
+# else
+# define machine_arch_type MACH_TYPE_A5K
+# endif
+# define machine_is_a5k() (machine_arch_type == MACH_TYPE_A5K)
+#else
+# define machine_is_a5k() (0)
+#endif
+
+#ifdef CONFIG_ARCH_CLPS7500
+# ifdef machine_arch_type
+# undef machine_arch_type
+# define machine_arch_type __machine_arch_type
+# else
+# define machine_arch_type MACH_TYPE_CLPS7500
+# endif
+# define machine_is_clps7500() (machine_arch_type == MACH_TYPE_CLPS7500)
+#else
+# define machine_is_clps7500() (0)
+#endif
+
+#ifdef CONFIG_ARCH_SHARK
+# ifdef machine_arch_type
+# undef machine_arch_type
+# define machine_arch_type __machine_arch_type
+# else
+# define machine_arch_type MACH_TYPE_SHARK
+# endif
+# define machine_is_shark() (machine_arch_type == MACH_TYPE_SHARK)
+#else
+# define machine_is_shark() (0)
+#endif
+
#ifdef CONFIG_ARCH_SA1100
# ifdef machine_arch_type
# undef machine_arch_type
@@ -121,11 +175,23 @@ extern unsigned int __machine_arch_type;
# else
# define machine_arch_type MACH_TYPE_SA1100
# endif
-# define machine_is_sa1100() (machine_arch_type == MACH_TYPE_SA1100
+# define machine_is_sa1100() (machine_arch_type == MACH_TYPE_SA1100)
#else
# define machine_is_sa1100() (0)
#endif
+#ifdef CONFIG_PERSONAL_SERVER
+# ifdef machine_arch_type
+# undef machine_arch_type
+# define machine_arch_type __machine_arch_type
+# else
+# define machine_arch_type MACH_TYPE_PERSONAL_SERVER
+# endif
+# define machine_is_personal_server() (machine_arch_type == MACH_TYPE_PERSONAL_SERVER)
+#else
+# define machine_is_personal_server() (0)
+#endif
+
#ifndef machine_arch_type
#define machine_arch_type __machine_arch_type
#endif