NetBSD/sys/dev/marvell
ad 4b293a84e1 Interrupt handling changes, in discussion since February:
- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.
2007-12-03 15:33:00 +00:00
..
README
files.discovery merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gt.c Interrupt handling changes, in discussion since February: 2007-12-03 15:33:00 +00:00
gtbrgreg.h
gtethreg.h merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gti2c.c Interrupt handling changes, in discussion since February: 2007-12-03 15:33:00 +00:00
gti2creg.h Use the SI capitalization for "Hz", "kHz", and "MHz" in comments and strings. 2006-03-08 23:46:22 +00:00
gtidma.c machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h 2007-10-19 11:59:34 +00:00
gtidmareg.h Change "inline" back to "__inline" in .h files -- C99 is still too 2006-02-16 20:17:12 +00:00
gtidmavar.h Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
gtintrreg.h merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gtmpsc.c - Factor out too many copies of the same bit of tty code. 2007-11-19 18:51:36 +00:00
gtmpscreg.h merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gtmpscvar.h Remove another instance of the SET/CLR/ISSET macro triplet, now found 2006-03-06 08:13:58 +00:00
gtpci.c Interrupt handling changes, in discussion since February: 2007-12-03 15:33:00 +00:00
gtpcireg.h merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gtpcivar.h Replace the Mach-derived boolean_t type with the C99 bool type. A 2007-02-21 22:59:35 +00:00
gtreg.h merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gtsdmareg.h merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
gtvar.h Replace the Mach-derived boolean_t type with the C99 bool type. A 2007-02-21 22:59:35 +00:00
if_gfe.c machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h 2007-10-19 11:59:34 +00:00
if_gfevar.h Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
obio.c machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h 2007-10-19 11:59:34 +00:00

README

External m.d. interface points:

To config, code should configure 'gt' with a struct gtbus_attach_args
filled in.  The code should have already set up the bus_space and
bus_dma tags that are passed in.

m.d. pci_chipset_tag_t should contain at least a copy of the
gtpci_chipset_tag_t data structure.

m.d. code must provide the following functions:

pci_intr_map
pci_intr_string
pci_intr_establish,
pci_intr_disestablish

void *gtmpp_intr_establish(struct gt_softc *gt, int mpp_pin, int ipl,
		     int (*handler)(void *), void *arg);
	Add an interrupt attached to Discovery MPP pin <mpp_pin> at
	the given ipl with the given handler.

void gtmpp_intr_disestablish(struct gt_softc *gt, void *cookie);
	Remove an interrupt attached to Discovery MPP pin.

int gtget_macaddr(struct gt_softc *gt, int function, char *enaddr);
	Get MAC for Discovery ethernet <function>

void intr_enable(void);
	Enable all interrupts (disregarding spls)

void intr_disable(void);
	Disable all interrupts (disregarding spls)