summaryrefslogtreecommitdiff
path: root/sys/dev/pci
AgeCommit message (Collapse)Author
2007-05-19stash the dma tag in sli_softcDavid Gwynne
2007-05-19hook up interrupts, but a little different to what i usually do. this mapsDavid Gwynne
the interrupt before the bus independant code is attached, and establishes the interrupt after that.
2007-05-17copy the lladdr from the arpcom struct onto the hardware when the interfaceDavid Gwynne
is brought up. this driver now supports all the features our network layer expects of it.
2007-05-17support changing the mtu up to the maximum frame size it currentlyDavid Gwynne
supports (MCLBYTES).
2007-05-16add support for multicast addresses. this adds the add/del multi handlersDavid Gwynne
to the ioctl, and programs the multicast filter in tht_iff. we are not using the perfect multicast filters, only the imperfect one. i think there is a requirement that addresses in the perfect filter be in order, but im not sure how to do that nicely (yet). this has taken a long time because i dont know how to write c.
2007-05-16map the pci BARs that we're interested in. this gives us access to theDavid Gwynne
chips registers and io interface, but whats actually in them is still a mystery to me.
2007-05-15start work on a driver for emulex fibre channel controllers.David Gwynne
it is split up into a bus independant chunk (dev/ic/sli*) and the attach glue (dev/pci/sli_pci.c) cos there are sbus varaints of this chip which i hope to get my hands on one day. this does nothing except attach to the LP8000 controllers.
2007-05-14Properly wrap mii_tick() up in splnet().Jonathan Gray
This seems to fix a bizzare problem I was having for some time with msk on MP amd64 where the machine would reboot itself under load. At least sk(4) and rl(4) code seems to have the potential for a similiar problem. ok kettenis@
2007-05-14delete unused code; ok krwTheo de Raadt
2007-05-14Remove crufty unused code.Jonathan Gray
ok kettenis@ krw@ henning@
2007-05-12Take alignment restrictions into account when setting up RAM buffer addresses.Mark Kettenis
This makes Yukon-2 FE chips work reliably. Pointed out by giovanni at gmail dot com.
2007-05-11Ditch acard_pci_intr() as nothing currently uses it.Jonathan Gray
Pointed out by deraadt@
2007-05-10Don't skip channels that don't have the WDCF_IRQ_WAIT flag set. ApparentlyMark Kettenis
some chips generate interrupts we don't expect, but we need to ack those. Fixes the cdrom hangs on various sparc64 systems. tested by some, ok deraadt@
2007-05-10remove and hide code that isn't used.David Gwynne
found by deraadt@
2007-05-09delete unused functions. typical vendor garbage driver..; ok kettenisTheo de Raadt
2007-05-09Revert rev 1.116. For some reason this caused the device to do DMA from/toMark Kettenis
random addresses in some cases, causing watchdog timeouts. tested by many; ok deraadt@
2007-05-08#if 0 a function that is only ever called in #if 0Theo de Raadt
2007-05-08make a start at dealing with interface flags. this toggles the hardwareDavid Gwynne
promiscuity depending on the if_flags IFF_PROMISC bit.
2007-05-08add the multicast filter registersDavid Gwynne
2007-05-08write the mac back to the chip when we bring it up.David Gwynne
2007-05-08regenRobert Nagy
2007-05-08add Radeon RX1650 XT, Radeon RX1650 XT Secondary and SoundBlaster X-FiRobert Nagy
2007-05-07shrink code by not using __inline without static; ok kettenisTheo de Raadt
2007-05-06point the macros for the interrupt coalescing registers at the rightDavid Gwynne
location. they moved from what the doco says to somewhere else. pointed out by Nadav Shemer (thanks)
2007-05-06typoDavid Gwynne
2007-05-05Properly ifdef debug bits to save a bit of space.Jonathan Gray
ok reyk@
2007-05-05disable the interrupts on interface shutdownReyk Floeter
2007-05-05allocate dma memory, setup rx/tx/status rings, initialize the ringReyk Floeter
context, and enable interrupts. it is not yet ready - i still need to implement the rx/tx handlers, handle the producer/consumer ids, and make it work.
2007-05-04the hardware does checksumming on rx as well. mark the mbufs with what theDavid Gwynne
hw says.
2007-05-04advertise tx checksumming to the network stack, and tell the hardware toDavid Gwynne
do it.
2007-05-04increase the number of tx and rx descriptors from 64 to 128 eachDavid Gwynne
2007-05-04call the right function to fill the rxf fifo after rxdDavid Gwynne
2007-05-04disable debugging outputDavid Gwynne
2007-05-04put more rx descriptors back on the chip straight after we've taken someDavid Gwynne
off.
2007-05-04wrap the wptr round when we hit the end of the fifo.David Gwynne
2007-05-04firmload for nx as wellJonathan Gray
2007-05-04bnx requires firmloadJonathan Gray
2007-05-04Initialize the sis_timeout early in attach instead of sis_init.Artur Grabowski
Sometimes we can can call timeout_del on it before we call sis_init. From mickey. art@ ok.
2007-05-04when it does not compile we KNOW it was not tested. come onTheo de Raadt
2007-05-04swap the port register table arrays to make it better readble and fix someReyk Floeter
register typos... on init, wait for the receive engine to be ready before setting up the descriptor rings.
2007-05-04do not call vic_init() on ENETRESET in the ioctl handler, useReyk Floeter
vic_iff() instead. vic_init() calls vic_init_data() which sets up the rings and allocates the dma maps. it could happen that vic_init() was called for multiple times without releasing them first by calling vic_uninit_data(). ouch! this may have caused some problems related to dmamap corruption but we'll do further investigation. ok dlg@
2007-05-03allocate DMA memory for the per-port Rx, Tx (command), and Status ringReyk Floeter
context.
2007-05-03a nxb NIC can have up to 4 nx ports and the latest firmware uses someReyk Floeter
port-specific registers, for the NIU (phy) and the CRB (~mac). fine. but i have to use an ugly mapping table for the port-specific crb registers because their offsets are not consistent and do not allow to use a subregion per port. ugh.
2007-05-03Fix a typo that was preventing the full device name from being printed.Deanna Phillips
ok deraadt@
2007-05-03missed an struct lock to struct rwlock in the softc.David Gwynne
found by and ok claudio@
2007-05-03regenJonathan Gray
2007-05-03Philips/NXP ISP156x USB controllers as found in ONDA Communication H600.Jonathan Gray
2007-05-03The ring replenish threshold change needed to work around a hardwareTom Cosgrove
problem also appears to be required on the BCM5754/5787 in the Dell PowerEdge SC440 and OptiPlex GX745. dlg identified the problem and came up with the fix. Tested by dlg@, ckuethe@, reyk@; thanks. ok dlg@ beck@ reyk@
2007-05-03convert lockmgr style locks to rwlocks.David Gwynne
input from art@
2007-05-03convert lockmgr to rwlocksDavid Gwynne