summaryrefslogtreecommitdiffstats
path: root/include/asm-mips
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1998-07-10 01:14:47 +0000
committerRalf Baechle <ralf@linux-mips.org>1998-07-10 01:14:47 +0000
commitcf00b9f677c32c4f0ad187bed33e7bf2209db3b8 (patch)
tree6091370501637f7d42c529bc35454aa0719f35d6 /include/asm-mips
parent683c16eb00d32d749c1038f5fd9032d8543e5697 (diff)
o Support for the front panel on the Indy. The panel work now as a
user would expect it to work, like under IRIX with the exception that the machine doesn't freeze solid as long as the button is pressed. o Realtime clock driver (CONFIG_SGI_DS1286) for the Indy. Includes /proc/rtc interface which tells you everything about your RTC which you never wanted to know. You have to configure this driver into your kernel or you won't be able to set your RTC. o Some cleanup of the RTC interfaces in Linux, RTC does no longer mean PC-style RTC. The userland interface definitions are now in <linux/rtc.h>. We still need some more cleanup until we can enable several RTC drivers. o Virtual aliasing fixes for ptrace(2). o Add ptrace(2) interface definitions needed to build GDB to <asm/ptrace.h>. o Revert to some older routines, the newer optimized ones are buggy. o On panic the Indy LED will be blinking fast crying to the admin passing by [music from Rocky Horror show] ``fix me, fix me, fix me''. o On panic the power button will only reboot the machine, not power it down. That's probably more what people want it to do. o Remove some old files. o Did I tell you that CVS is buggy?
Diffstat (limited to 'include/asm-mips')
-rw-r--r--include/asm-mips/checksum.h5
-rw-r--r--include/asm-mips/ds1286.h69
-rw-r--r--include/asm-mips/ptrace.h14
-rw-r--r--include/asm-mips/sgialib.h12
-rw-r--r--include/asm-mips/sgiarcs.h13
-rw-r--r--include/asm-mips/sgihpc.h5
-rw-r--r--include/asm-mips/vector.h0
7 files changed, 99 insertions, 19 deletions
diff --git a/include/asm-mips/checksum.h b/include/asm-mips/checksum.h
index d2ce1edcd..d87c61165 100644
--- a/include/asm-mips/checksum.h
+++ b/include/asm-mips/checksum.h
@@ -1,4 +1,4 @@
-/* $Id: checksum.h,v 1.4 1998/05/06 02:50:12 ralf Exp $
+/* $Id: checksum.h,v 1.4 1998/05/07 03:02:49 ralf Exp $
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
@@ -27,8 +27,7 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum)
* this is a new version of the above that records errors it finds in *errp,
* but continues and zeros the rest of the buffer.
*/
-unsigned int csum_partial_copy_nocheck(const char *src, char *dst, int len,
- unsigned int sum);
+#define csum_partial_copy_nocheck csum_partial_copy
/*
* this is a new version of the above that records errors it finds in *errp,
diff --git a/include/asm-mips/ds1286.h b/include/asm-mips/ds1286.h
new file mode 100644
index 000000000..a4014bf64
--- /dev/null
+++ b/include/asm-mips/ds1286.h
@@ -0,0 +1,69 @@
+/* $Id: ds1286.h,v 1.1 1998/07/09 20:01:30 ralf Exp $
+ *
+ * mc146818rtc.h - register definitions for the Real-Time-Clock / CMOS RAM
+ * Copyright Torsten Duwe <duwe@informatik.uni-erlangen.de> 1993
+ * derived from Data Sheet, Copyright Motorola 1984 (!).
+ * It was written to be part of the Linux operating system.
+ */
+/* permission is hereby granted to copy, modify and redistribute this code
+ * in terms of the GNU Library General Public License, Version 2 or later,
+ * at your option.
+ */
+#ifndef _MC146818RTC_H
+#define _MC146818RTC_H
+
+#include <asm/mc146818rtc.h>
+
+/**********************************************************************
+ * register summary
+ **********************************************************************/
+#define RTC_HUNDREDTH_SECOND 0
+#define RTC_SECONDS 1
+#define RTC_MINUTES 2
+#define RTC_MINUTES_ALARM 3
+#define RTC_HOURS 4
+#define RTC_HOURS_ALARM 5
+#define RTC_DAY 6
+#define RTC_DAY_ALARM 7
+#define RTC_DATE 8
+#define RTC_MONTH 9
+#define RTC_YEAR 10
+#define RTC_CMD 11
+#define RTC_WHSEC 12
+#define RTC_WSEC 13
+#define RTC_UNUSED 14
+
+/* RTC_*_alarm is always true if 2 MSBs are set */
+# define RTC_ALARM_DONT_CARE 0xC0
+
+
+/*
+ * Bits in the month register
+ */
+#define RTC_EOSC 0x80
+#define RTC_ESQW 0x40
+
+/*
+ * Bits in the Command register
+ */
+#define RTC_TDF 0x01
+#define RTC_WAF 0x02
+#define RTC_TDM 0x04
+#define RTC_WAM 0x08
+#define RTC_PU_LVL 0x10
+#define RTC_IBH_LO 0x20
+#define RTC_IPSW 0x40
+#define RTC_TE 0x80
+
+/*
+ * Conversion between binary and BCD.
+ */
+#ifndef BCD_TO_BIN
+#define BCD_TO_BIN(val) ((val)=((val)&15) + ((val)>>4)*10)
+#endif
+
+#ifndef BIN_TO_BCD
+#define BIN_TO_BCD(val) ((val)=(((val)/10)<<4) + (val)%10)
+#endif
+
+#endif /* _MC146818RTC_H */
diff --git a/include/asm-mips/ptrace.h b/include/asm-mips/ptrace.h
index ac3876131..7fccd703e 100644
--- a/include/asm-mips/ptrace.h
+++ b/include/asm-mips/ptrace.h
@@ -1,11 +1,10 @@
-/*
- * linux/include/asm-mips/ptrace.h
+/* $Id: ptrace.h,v 1.3 1998/07/09 21:45:21 ralf Exp $
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
- * Copyright (C) 1994, 1995, 1996 by Ralf Baechle
+ * Copyright (C) 1994, 1995, 1996, 1997, 1998 by Ralf Baechle
*
* Machine dependent structs and defines to help the user use
* the ptrace system call.
@@ -15,6 +14,15 @@
#include <linux/types.h>
+/* 0 - 31 are integer registers, 32 - 63 are fp registers. */
+#define PC 64
+#define CAUSE 65
+#define MMLO 66
+#define MMHI 67
+#define FPC_CSR 68 /* XXX */
+#define FPC_EIR 69 /* XXX */
+#define FPR_BASE 70 /* XXX */
+
#ifndef __ASSEMBLY__
/*
* This struct defines the way the registers are stored on the stack during a
diff --git a/include/asm-mips/sgialib.h b/include/asm-mips/sgialib.h
index 45ac539d4..9102be1d8 100644
--- a/include/asm-mips/sgialib.h
+++ b/include/asm-mips/sgialib.h
@@ -1,4 +1,4 @@
-/* $Id: sgialib.h,v 1.7 1996/06/08 06:05:15 dm Exp $
+/* $Id: sgialib.h,v 1.2 1998/07/08 16:01:13 ralf Exp $
* sgialib.h: SGI ARCS firmware interface library for the Linux kernel.
*
* Copyright (C) 1996 David S. Miller (dm@engr.sgi.com)
@@ -106,11 +106,11 @@ extern long prom_invoke(unsigned long pc, unsigned long sp, long argc, char **ar
extern long prom_exec(char *name, long argc, char **argv, char **envp);
/* Misc. routines. */
-extern void prom_halt(void);
-extern void prom_powerdown(void);
-extern void prom_restart(void);
-extern void prom_reboot(void);
-extern void prom_imode(void);
+extern void prom_halt(void) __attribute__((noreturn));
+extern void prom_powerdown(void) __attribute__((noreturn));
+extern void prom_restart(void) __attribute__((noreturn));
+extern void prom_reboot(void) __attribute__((noreturn));
+extern void prom_imode(void) __attribute__((noreturn));
extern long prom_cfgsave(void);
extern struct linux_sysid *prom_getsysid(void);
extern void prom_cacheflush(void);
diff --git a/include/asm-mips/sgiarcs.h b/include/asm-mips/sgiarcs.h
index 2e820feca..3dc3b8b9f 100644
--- a/include/asm-mips/sgiarcs.h
+++ b/include/asm-mips/sgiarcs.h
@@ -1,4 +1,5 @@
-/* $Id: sgiarcs.h,v 1.4 1996/06/08 04:48:43 dm Exp $
+/* $Id: sgiarcs.h,v 1.2 1998/07/08 16:01:57 ralf Exp $
+ *
* SGI ARCS firmware interface defines.
*
* Copyright (C) 1996 David S. Miller (dm@engr.sgi.com)
@@ -170,11 +171,11 @@ struct linux_romvec {
/* Load and begin execution of a standalong image. */
long (*exec)(char *file, long argc, char **argv, char **envp);
- void (*halt)(void); /* Halt the machine. */
- void (*pdown)(void); /* Power down the machine. */
- void (*restart)(void); /* XXX soft reset??? */
- void (*reboot)(void); /* Reboot the machine. */
- void (*imode)(void); /* Enter PROM interactive mode. */
+ void (*halt)(void) __attribute__((noreturn)); /* Halt the machine. */
+ void (*pdown)(void) __attribute__((noreturn)); /* Power down the machine. */
+ void (*restart)(void) __attribute__((noreturn)); /* XXX soft reset??? */
+ void (*reboot)(void) __attribute__((noreturn)); /* Reboot the machine. */
+ void (*imode)(void) __attribute__((noreturn)); /* Enter PROM interactive mode. */
int _unused1; /* padding */
/* PROM device tree interface. */
diff --git a/include/asm-mips/sgihpc.h b/include/asm-mips/sgihpc.h
index d4369c545..fb2063163 100644
--- a/include/asm-mips/sgihpc.h
+++ b/include/asm-mips/sgihpc.h
@@ -1,4 +1,4 @@
-/* $Id: sgihpc.h,v 1.2 1998/06/25 20:15:04 ralf Exp $
+/* $Id: sgihpc.h,v 1.2 1998/06/30 00:23:11 ralf Exp $
*
* sgihpc.h: Various HPC I/O controller defines. The HPC is basically
* the approximate functional equivalent of the Sun SYSIO
@@ -323,6 +323,9 @@ struct hpc3_miscregs {
extern struct hpc3_miscregs *hpc3mregs;
#define HPC3_MREGS_PBASE 0x1fbd9800 /* physical */
+/* We need software copies of these because they are write only. */
+extern unsigned long sgi_hpc_write1, sgi_hpc_write2;
+
struct hpc_keyb {
#ifdef __MIPSEB__
unsigned char _unused0[3];
diff --git a/include/asm-mips/vector.h b/include/asm-mips/vector.h
deleted file mode 100644
index e69de29bb..000000000
--- a/include/asm-mips/vector.h
+++ /dev/null