summaryrefslogtreecommitdiffstats
path: root/sys/mips/idt/obio.c
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2010-01-10 19:39:08 +0000
committerimp <imp@FreeBSD.org>2010-01-10 19:39:08 +0000
commit189babc04f3d09d562bd23889c4dd4c91e5e35f9 (patch)
treea1ff3fb617f8e500080b0b2e0aac7202751b1f9d /sys/mips/idt/obio.c
parent6e222c803abd67a9d45737ec084b86116b65e8f9 (diff)
downloadFreeBSD-src-189babc04f3d09d562bd23889c4dd4c91e5e35f9.zip
FreeBSD-src-189babc04f3d09d562bd23889c4dd4c91e5e35f9.tar.gz
Merge from projects/mips to head by hand:
r201881 | imp | 2010-01-08 20:08:22 -0700 (Fri, 08 Jan 2010) | 3 lines Rename mips_pcpu_init to mips_pcpu0_init since it applies only to the BSP. Provide a missing prototype. r201845 | imp | 2010-01-08 15:48:21 -0700 (Fri, 08 Jan 2010) | 2 lines Centralize initialization of pcpu, and set curthread early... r198669 | rrs | 2009-10-30 02:53:11 -0600 (Fri, 30 Oct 2009) | 5 lines With this commit our friend RMI will now compile. I have not tested it and the chances of it running yet are about ZERO.. but it will now compile. The hard part now begins, making it run ;-) r198154 | rrs | 2009-10-15 15:03:32 -0600 (Thu, 15 Oct 2009) | 10 lines Does 4 things: 1) Adds future RMI directories 2) Places intr_machdep.c in specfic files.arch pointing to the generic intr_machdep.c. This allows us to have an architecture dependant intr_machdep.c (which we will need for RMI) in the machine specific directory 3) removes intr_machdep.c from files.mips 4) Adds some TARGET_XLR_XLS ifdef's for the machine specific intra_machdep.h. We may need to look at finding a better place to put this. But first I want to get this thing compiling. r194216 | gonzo | 2009-06-14 15:16:23 -0600 (Sun, 14 Jun 2009) | 2 lines - Fix prototypes to make compiler happy r194215 | gonzo | 2009-06-14 15:16:04 -0600 (Sun, 14 Jun 2009) | 2 lines - Get rid of mask_fn and fix pre_filter/post_filter functions' prototypes r191282 | gonzo | 2009-04-19 16:02:14 -0600 (Sun, 19 Apr 2009) | 3 lines - Make mips_bus_space_generic be of type bus_space_tag_t instead of struct bus_space and update all relevant places. r191084 | gonzo | 2009-04-14 20:28:26 -0600 (Tue, 14 Apr 2009) | 6 lines Use FreeBSD/arm approach for handling bus space access: space tag is a pointer to bus_space structure that defines access methods and hence every bus can define own accessors. Default space is mips_bus_space_generic. It's a simple interface to physical memory, values are read with regard to host system byte order.
Diffstat (limited to 'sys/mips/idt/obio.c')
-rw-r--r--sys/mips/idt/obio.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/mips/idt/obio.c b/sys/mips/idt/obio.c
index 893e883..44e9bfa 100644
--- a/sys/mips/idt/obio.c
+++ b/sys/mips/idt/obio.c
@@ -76,8 +76,10 @@ static int obio_setup_intr(device_t, device_t, struct resource *, int,
static int obio_teardown_intr(device_t, device_t, struct resource *,
void *);
-static void obio_mask_irq(unsigned int irq)
+static void
+obio_mask_irq(void *arg)
{
+ unsigned int irq = (unsigned int)arg;
int ip_bit, mask, mask_register;
/* mask IRQ */
@@ -88,8 +90,10 @@ static void obio_mask_irq(unsigned int irq)
ICU_REG_WRITE(mask_register, mask | ip_bit);
}
-static void obio_unmask_irq(unsigned int irq)
+static void
+obio_unmask_irq(void *arg)
{
+ unsigned int irq = (unsigned int)arg;
int ip_bit, mask, mask_register;
/* unmask IRQ */
@@ -274,7 +278,7 @@ obio_setup_intr(device_t dev, device_t child, struct resource *ires,
event = sc->sc_eventstab[irq];
if (event == NULL) {
error = intr_event_create(&event, (void *)irq, 0, irq,
- (mask_fn)obio_mask_irq, (mask_fn)obio_unmask_irq,
+ obio_mask_irq, obio_unmask_irq,
NULL, NULL,
"obio intr%d:", irq);
OpenPOWER on IntegriCloud