aboutsummaryrefslogtreecommitdiff
path: root/sys/alpha/include
diff options
context:
space:
mode:
Diffstat (limited to 'sys/alpha/include')
-rw-r--r--sys/alpha/include/cpu.h1
-rw-r--r--sys/alpha/include/cpuconf.h4
-rw-r--r--sys/alpha/include/intr.h6
-rw-r--r--sys/alpha/include/ipl.h96
-rw-r--r--sys/alpha/include/md_var.h6
5 files changed, 13 insertions, 100 deletions
diff --git a/sys/alpha/include/cpu.h b/sys/alpha/include/cpu.h
index 99eb79eef6686..cd60cc644ddf3 100644
--- a/sys/alpha/include/cpu.h
+++ b/sys/alpha/include/cpu.h
@@ -154,7 +154,6 @@ int badaddr __P((void *, size_t));
int badaddr_read __P((void *, size_t, void *));
void child_return __P((struct proc *p));
u_int64_t console_restart __P((u_int64_t, u_int64_t, u_int64_t));
-void do_sir __P((void));
void dumpconf __P((void));
void exception_return __P((void)); /* MAGIC */
void frametoreg __P((struct trapframe *, struct reg *));
diff --git a/sys/alpha/include/cpuconf.h b/sys/alpha/include/cpuconf.h
index 7ff7d98812165..db93a1dc9502e 100644
--- a/sys/alpha/include/cpuconf.h
+++ b/sys/alpha/include/cpuconf.h
@@ -75,7 +75,9 @@ extern struct platform {
void (*pci_intr_map) __P((void *));
void (*pci_intr_disable) __P((int));
void (*pci_intr_enable) __P((int));
- int (*pci_setup_ide_intr) __P((int chan, void (*fn)(void*), void *arg));
+ int (*pci_setup_ide_intr) __P((struct device *dev,
+ struct device *child,
+ int chan, void (*fn)(void*), void *arg));
int (*isa_setup_intr) __P((struct device *, struct device *,
struct resource *, int, void *, void *, void **));
int (*isa_teardown_intr) __P((struct device *, struct device *,
diff --git a/sys/alpha/include/intr.h b/sys/alpha/include/intr.h
index 4f003886ec1f9..e43010da5c652 100644
--- a/sys/alpha/include/intr.h
+++ b/sys/alpha/include/intr.h
@@ -29,8 +29,10 @@
#ifndef _MACHINE_INTR_H_
#define _MACHINE_INTR_H_
-int alpha_setup_intr(int vector, driver_intr_t *intr, void *arg,
- void **cookiep, volatile long *cntp);
+int alpha_setup_intr(const char *name, int vector,
+ driver_intr_t *handle, void *arg, int pri,
+ void **cookiep, volatile long *cntp,
+ void (*disable)(int), void (*enable)(int));
int alpha_teardown_intr(void *cookie);
void alpha_dispatch_intr(void *frame, unsigned long vector);
diff --git a/sys/alpha/include/ipl.h b/sys/alpha/include/ipl.h
index 2e9b3cc7b7d9e..79de282280b52 100644
--- a/sys/alpha/include/ipl.h
+++ b/sys/alpha/include/ipl.h
@@ -32,100 +32,8 @@
#include <machine/cpu.h> /* for pal inlines */
-/*
- * Software interrupt bit numbers
- */
-#define SWI_TTY 0
-#define SWI_NET 1
-#define SWI_CAMNET 2
-#define SWI_CAMBIO 3
-#define SWI_VM 4
-#define SWI_CLOCK 5
-#define SWI_TQ 6
#define NSWI 32
-#define NHWI 0
-
-extern u_int32_t ipending;
-
-#define getcpl() (alpha_pal_rdps() & ALPHA_PSL_IPL_MASK)
-
-#define SPLDOWN(name, pri) \
- \
-static __inline int name(void) \
-{ \
- int s; \
- s = alpha_pal_swpipl(ALPHA_PSL_IPL_##pri); \
- return s; \
-}
-
-SPLDOWN(splsoftclock, SOFT)
-SPLDOWN(splsoft, SOFT)
-
-#define SPLUP(name, pri) \
- \
-static __inline int name(void) \
-{ \
- int cpl = getcpl(); \
- if (ALPHA_PSL_IPL_##pri > cpl) { \
- int s = alpha_pal_swpipl(ALPHA_PSL_IPL_##pri); \
- return s; \
- } else \
- return cpl; \
-}
-
-SPLUP(splsoftcam, SOFT)
-SPLUP(splsoftnet, SOFT)
-SPLUP(splsoftvm, SOFT)
-SPLUP(splsofttq, SOFT)
-SPLUP(splnet, IO)
-SPLUP(splbio, IO)
-SPLUP(splcam, IO)
-SPLUP(splimp, IO)
-SPLUP(spltty, IO)
-SPLUP(splvm, IO)
-SPLUP(splclock, CLOCK)
-SPLUP(splstatclock, CLOCK)
-SPLUP(splhigh, HIGH)
-
-static __inline void
-spl0(void)
-{
- if (ipending)
- do_sir(); /* lowers ipl to SOFT */
-
- alpha_pal_swpipl(ALPHA_PSL_IPL_0);
-}
-
-static __inline void
-splx(int s)
-{
- if (s)
- alpha_pal_swpipl(s);
- else
- spl0();
-}
-
-extern void setdelayed(void);
-extern void setsofttty(void);
-extern void setsoftnet(void);
-extern void setsoftcamnet(void);
-extern void setsoftcambio(void);
-extern void setsoftvm(void);
-extern void setsofttq(void);
-extern void setsoftclock(void);
-
-extern void schedsofttty(void);
-extern void schedsoftnet(void);
-extern void schedsoftcamnet(void);
-extern void schedsoftcambio(void);
-extern void schedsoftvm(void);
-extern void schedsofttq(void);
-extern void schedsoftclock(void);
-
-#if 0
-/* XXX bogus */
-extern unsigned cpl; /* current priority level mask */
-#endif
+#define HWHI 0
/*
* Interprocessor interrupts for SMP.
@@ -142,4 +50,4 @@ void smp_ipi_all_but_self(u_int64_t ipi);
void smp_ipi_self(u_int64_t ipi);
void smp_handle_ipi(struct trapframe *frame);
-#endif /* !_MACHINE_MD_VAR_H_ */
+#endif /* !_MACHINE_IPL_H_ */
diff --git a/sys/alpha/include/md_var.h b/sys/alpha/include/md_var.h
index 740d40bbfd3bc..d3e4ea3d54595 100644
--- a/sys/alpha/include/md_var.h
+++ b/sys/alpha/include/md_var.h
@@ -60,10 +60,12 @@ void alpha_register_pci_scsi __P((int bus, int slot, struct cam_sim *sim));
#ifdef _SYS_BUS_H_
struct resource *alpha_platform_alloc_ide_intr(int chan);
int alpha_platform_release_ide_intr(int chan, struct resource *res);
-int alpha_platform_setup_ide_intr(struct resource *res,
+int alpha_platform_setup_ide_intr(struct device *dev,
+ struct resource *res,
driver_intr_t *fn, void *arg,
void **cookiep);
-int alpha_platform_teardown_ide_intr(struct resource *res, void *cookie);
+int alpha_platform_teardown_ide_intr(struct device *dev,
+ struct resource *res, void *cookie);
int alpha_platform_pci_setup_intr(device_t dev, device_t child,
struct resource *irq, int flags,
driver_intr_t *intr, void *arg,