diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2008-02-20 18:46:21 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2008-02-20 18:46:21 +0000 |
commit | b64a4b43e18473c2dab6c606ac57aa8f966612e5 (patch) | |
tree | 4632a00a606e5e9947811546b082a4ab0dbc40b1 /sys/arch/sgi/include | |
parent | bab488fcfb90d7b7090fa84aad7392abd3ef2c56 (diff) |
Completely overhault attachment rules on sgi. No more indirect configuration
inherited from OpenBSD/arc machines with ISA bus; mainbus children match on
device name and other hierarchies match on simplified locators.
As a bonus, attachment lines in dmesg will now print their locators.
ok jsing@
Diffstat (limited to 'sys/arch/sgi/include')
-rw-r--r-- | sys/arch/sgi/include/autoconf.h | 44 |
1 files changed, 1 insertions, 43 deletions
diff --git a/sys/arch/sgi/include/autoconf.h b/sys/arch/sgi/include/autoconf.h index ac4a7610fd6..0591a58cf1b 100644 --- a/sys/arch/sgi/include/autoconf.h +++ b/sys/arch/sgi/include/autoconf.h @@ -1,4 +1,4 @@ -/* $OpenBSD: autoconf.h,v 1.11 2007/05/20 14:34:23 miod Exp $ */ +/* $OpenBSD: autoconf.h,v 1.12 2008/02/20 18:46:20 miod Exp $ */ /* * Copyright (c) 2001-2003 Opsycon AB (www.opsycon.se / www.opsycon.com) @@ -64,12 +64,6 @@ struct sys_rec { void (*_HitSyncDCache)(vaddr_t, int); void (*_IOSyncDCache)(vaddr_t, int, int); void (*_HitInvalidateDCache)(vaddr_t, int); - /* BUS mappings */ - struct mips_bus_space local; - struct mips_bus_space isa_io; - struct mips_bus_space isa_mem; - struct mips_bus_space pci_io[2]; - struct mips_bus_space pci_mem[2]; /* Console/Serial configuration */ int cons_baudclk; struct mips_bus_space console_io; /* for stupid map designs */ @@ -90,47 +84,11 @@ extern struct sys_rec sys_config; /**/ struct confargs; -typedef int (*intr_handler_t)(void *); - -struct abus { - struct device *ab_dv; /* back-pointer to device */ - int ab_type; /* bus type (see below) */ - void *(*ab_intr_establish) /* bus's set-handler function */ - (void *, u_long, int, int, int (*)(void *), void *, char *); - void (*ab_intr_disestablish) /* bus's unset-handler function */ - (void *, void *); - caddr_t (*ab_cvtaddr) /* convert slot/offset to address */ - (struct confargs *); - int (*ab_matchname) /* see if name matches driver */ - (struct confargs *, char *); -}; - -#define BUS_MAIN 1 /* mainbus */ -#define BUS_LOCAL 2 /* localbus */ -#define BUS_ISABR 3 /* ISA Bridge Bus */ -#define BUS_PLCHLDR 4 /* placeholder */ -#define BUS_PCIBR 5 /* PCI bridge Bus */ - -#define BUS_INTR_ESTABLISH(ca, a, b, c, d, e, f, h) \ - (*(ca)->ca_bus->ab_intr_establish)((a),(b),(c),(d),(e),(f),(h)) -#define BUS_INTR_DISESTABLISH(ca) \ - (*(ca)->ca_bus->ab_intr_establish)(ca) -#define BUS_MATCHNAME(ca, name) \ - (((ca)->ca_bus->ab_matchname) ? \ - (*(ca)->ca_bus->ab_matchname)((ca), (name)) : \ - -1) - struct confargs { char *ca_name; /* Device name. */ - struct abus *ca_bus; /* Bus device resides on. */ bus_space_tag_t ca_iot; bus_space_tag_t ca_memt; bus_dma_tag_t ca_dmat; - u_int32_t ca_num; /* which system */ - u_int32_t ca_sys; /* which system */ - int ca_nreg; - u_int32_t *ca_reg; - int ca_nintr; int32_t ca_intr; bus_addr_t ca_baseaddr; }; |