NetBSD/sys/dev/marvell
dyoung 2ccede0a9c Start patching up the kernel so that a network driver always has
the opportunity to handle an ioctl before generic ifioctl handling
occurs.  This will ease extending the kernel and sharing of code
between drivers.

First steps:  Make the signature of ifioctl_common() match struct
ifinet->if_ioctl.  Convert SIOCSIFCAP and SIOCSIFMTU to the new
ifioctl() regime, throughout the kernel.
2008-02-07 01:21:52 +00:00
..
README
files.discovery
gt.c Interrupt handling changes, in discussion since February: 2007-12-03 15:33:00 +00:00
gtbrgreg.h
gtethreg.h
gti2c.c Remove a local variable which is no longer used. 2007-12-16 14:21:43 +00:00
gti2creg.h
gtidma.c machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h 2007-10-19 11:59:34 +00:00
gtidmareg.h
gtidmavar.h
gtintrreg.h
gtmpsc.c - Factor out too many copies of the same bit of tty code. 2007-11-19 18:51:36 +00:00
gtmpscreg.h
gtmpscvar.h
gtpci.c Interrupt handling changes, in discussion since February: 2007-12-03 15:33:00 +00:00
gtpcireg.h
gtpcivar.h
gtreg.h
gtsdmareg.h
gtvar.h
if_gfe.c Start patching up the kernel so that a network driver always has 2008-02-07 01:21:52 +00:00
if_gfevar.h
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)