From 825423e4c4f18289df2393951cfd2a7a31fc0464 Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Wed, 31 Jan 2001 22:22:27 +0000 Subject: Merge with Linux 2.4.1. --- include/asm-sparc64/mostek.h | 3 ++- include/asm-sparc64/pbm.h | 17 +++++++++-------- include/asm-sparc64/watchdog.h | 31 +++++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 9 deletions(-) create mode 100644 include/asm-sparc64/watchdog.h (limited to 'include/asm-sparc64') diff --git a/include/asm-sparc64/mostek.h b/include/asm-sparc64/mostek.h index e153a36cf..b000c1586 100644 --- a/include/asm-sparc64/mostek.h +++ b/include/asm-sparc64/mostek.h @@ -1,4 +1,4 @@ -/* $Id: mostek.h,v 1.3 1999/08/30 10:14:50 davem Exp $ +/* $Id: mostek.h,v 1.4 2001/01/11 15:07:09 davem Exp $ * mostek.h: Describes the various Mostek time of day clock registers. * * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) @@ -66,6 +66,7 @@ static __inline__ void mostek_write(unsigned long addr, u8 val) #define MOSTEK_MONTH 0x07feUL #define MOSTEK_YEAR 0x07ffUL +extern spinlock_t mostek_lock; extern unsigned long mstk48t02_regs; /* Control register values. */ diff --git a/include/asm-sparc64/pbm.h b/include/asm-sparc64/pbm.h index c17e9bf23..082626725 100644 --- a/include/asm-sparc64/pbm.h +++ b/include/asm-sparc64/pbm.h @@ -1,4 +1,4 @@ -/* $Id: pbm.h,v 1.22 2000/03/25 05:18:30 davem Exp $ +/* $Id: pbm.h,v 1.23 2001/01/11 16:26:45 davem Exp $ * pbm.h: UltraSparc PCI controller software state. * * Copyright (C) 1997, 1998, 1999 David S. Miller (davem@redhat.com) @@ -18,11 +18,12 @@ /* The abstraction used here is that there are PCI controllers, * each with one (Sabre) or two (PSYCHO/SCHIZO) PCI bus modules - * underneath. Each PCI controller has a single IOMMU shared - * by the PCI bus modules underneath, and if a streaming buffer + * underneath. Each PCI bus module uses an IOMMU (shared by both + * PBMs of a controller, or per-PBM), and if a streaming buffer * is present, each PCI bus module has it's own. (ie. the IOMMU - * is shared between PBMs, the STC is not) Furthermore, each - * PCI bus module controls it's own autonomous PCI bus. + * might be shared between PBMs, the STC is never shared) + * Furthermore, each PCI bus module controls it's own autonomous + * PCI bus. */ #define PBM_LOGCLUSTERS 3 @@ -150,6 +151,9 @@ struct pci_pbm_info { /* This PBM's streaming buffer. */ struct pci_strbuf stc; + /* IOMMU state, potentially shared by both PBM segments. */ + struct pci_iommu *iommu; + /* Now things for the actual PCI bus probes. */ unsigned int pci_first_busno; unsigned int pci_last_busno; @@ -189,9 +193,6 @@ struct pci_controller_info { unsigned int pci_first_busno; unsigned int pci_last_busno; - /* IOMMU state shared by both PBM segments. */ - struct pci_iommu iommu; - void *starfire_cookie; }; diff --git a/include/asm-sparc64/watchdog.h b/include/asm-sparc64/watchdog.h new file mode 100644 index 000000000..4d5b03b60 --- /dev/null +++ b/include/asm-sparc64/watchdog.h @@ -0,0 +1,31 @@ +/* $Id: watchdog.h,v 1.1 2001/01/18 04:47:44 davem Exp $ + * + * watchdog - Driver interface for the hardware watchdog timers + * present on Sun Microsystems boardsets + * + * Copyright (c) 2000 Eric Brower + * + */ + +#ifndef _SPARC64_WATCHDOG_H +#define _SPARC64_WATCHDOG_H + +#include + +/* Solaris compatibility ioctls-- + * Ref. for standard linux watchdog ioctls + */ +#define WIOCSTART _IO (WATCHDOG_IOCTL_BASE, 10) /* Start Timer */ +#define WIOCSTOP _IO (WATCHDOG_IOCTL_BASE, 11) /* Stop Timer */ +#define WIOCGSTAT _IOR(WATCHDOG_IOCTL_BASE, 12, int)/* Get Timer Status */ + +/* Status flags from WIOCGSTAT ioctl + */ +#define WD_FREERUN 0x01 /* timer is running, interrupts disabled */ +#define WD_EXPIRED 0x02 /* timer has expired */ +#define WD_RUNNING 0x04 /* timer is running, interrupts enabled */ +#define WD_STOPPED 0x08 /* timer has not been started */ +#define WD_SERVICED 0x10 /* timer interrupt was serviced */ + +#endif /* ifndef _SPARC64_WATCHDOG_H */ + -- cgit v1.2.3