summaryrefslogtreecommitdiff
path: root/sys/dev
AgeCommit message (Collapse)Author
2007-04-19Save volume and chunk metadata as well.Marco Peereboom
2007-04-19Cleanup phy selection code, simplifying the code considerably. Attach onlyMark Kettenis
one phy on Sun ERI; gets rid of the duplicate phy on the blade1k. tested by many, ok drahn@
2007-04-19descend into thtDavid Gwynne
2007-04-19this is two (and a half) changes, but im too lazy to split them up.David Gwynne
the first is the addition of handlers for the fifos. you can now check if there the fifo is ready to be used, pre sync it for use, do many incremental updates to it, then post sync it to tell the hardware that you've done something. the ready, pre, and post funcs are done for both the reader and writer fifos, but only updates to the writer fifos is implemented so far. the second change is the firmware loading. i needed the above changes to do this, and i needed firmware loading to test them, so this change gets both. so we have a mountroot hook (that was the half change) that allocates the tx task fifo, reads the firmware from disk, and then pushes the firmware onto the fifo. once that is done it spins till the firmware is ready, then cleans up everything it allocated for loading the firmware. this diff wont time out if anything goes wrong during fw_load. if anyone wants to look at a nice way of doing it, please do.
2007-04-19make it compile again if LMDEBUG is defined;Robert Nagy
ok kettenis@
2007-04-19format and knf the array so it looks more like c and less like a csv.David Gwynne
2007-04-19the tht firmware isnt technically a firmware, its a series of commandsDavid Gwynne
interleaved with data, which is copied directly into the task fifo of a tht controller. the commands and data are all 32bit words, and they all have to be little endian. this byteswaps the host ordered values in microcode.h into little endian values for the controller to eat. you can now build the firmware correctly on big endian archs.
2007-04-19add bits to turn microcode.h into an actual blob. needs endian fixes yet.David Gwynne
2007-04-19tehuti are allowing us to distribute their firmware under a 4 clause bsdDavid Gwynne
license. thanks to Alexander Indenbaum and Nick Bhavsar at Tehuti for sorting this out.
2007-04-19Add initial metadata write function and hook it up.Marco Peereboom
2007-04-19Silly tedu, partitions are measured in blocks not in bytes.Marco Peereboom
2007-04-18Pass arguments to DPRINTF in the right order.Mark Kettenis
2007-04-18Remove the ``new i/o'' code. It has never worked well, noone has stepped upMiod Vallat
to fix it, and it goes in the way of good changes pedro is brewing. No functional change, tested todd@ millert@
2007-04-18start implementing support for the fifos on these chips.David Gwynne
there are four types of fifos: a tx task fifo (packets get sent via this), a tx free fifo (for us to know when packets have been sent), a rx descriptor fifo (to give empty packets for the nic to fill), and an rx free fifo (when packets are recieved). each port can have four sets of these fifos, so you can effectively have completely independant io paths. however, due to the nature of our kernel there is no advantage in implementing the use of more than one set of these. so this diff creates wrappers around fifos, the allocation of the dma regions for them, and a description of which registers are used to manage them.
2007-04-18move the tht attach args up a bit, for greater feng shuiDavid Gwynne
2007-04-18add a wrapper around single segment dmaable memory allocations. this hasDavid Gwynne
now been copied from ami into mpi, arc, vic, ahci, sili, and mfi. ive probably forgotten some others too.
2007-04-18callers of sw_reset will print an error message if anythign goes wrong, soDavid Gwynne
sw_reset itself doesnt have to
2007-04-18reset the port before establishing the interrupt handler during attachDavid Gwynne
2007-04-18implement the software reset of a port as per the specificationDavid Gwynne
2007-04-18code to busy wait on registers and bits in bus_spaceDavid Gwynne
2007-04-18tiny register additionsDavid Gwynne
2007-04-18define the bits in the RX_FLT registerDavid Gwynne
2007-04-17Whenever there are mutliple outstanding IOs a chunk can transtion multipleMarco Peereboom
times to the same state. Ignore that. Tested by thib@
2007-04-17The debug printf in malo_newstate() is too verbose so require debug level 2Claudio Jeker
to print it.
2007-04-17Now that acpidock no longer hangs machines during boot (at leastMichael Knudsen
according to the reports I've been getting) it should be safe to enable it again, so remove the #if 0 stuff around it. ok marco
2007-04-17Fix a really emberrassing bug: Do not unconditionally call _DCK with aMichael Knudsen
parameter of 1 (dock). This was causing acpidock to attempt to dock even if the machine was not in its dock which was causing hangs on pre-60 series ThinkPads. It was also causing my X60 to not see NOTIFY 0 (dock) messages which would initiate the docking sequence. Diff from Matthew R. Dempsky. Tested on X60 by me, on T42/43 by brad, ckuethe, reyk, Johan M:son, and on T21 by reyk. I think someone also tested on X40/41 but I don't remember who. Thanks a lot.
2007-04-17lots of registersDavid Gwynne
2007-04-17start defining the hardware structuresDavid Gwynne
2007-04-17Shuffle ccb contents and clean up a loopMarco Peereboom
2007-04-17a break in the default case, while unnecessary, is still nice.David Gwynne
2007-04-17add some ifmedia goop.David Gwynne
it looks like the firmware used to have an interface for figuring out what the device was plugged into, and what it had negotiated, but the newer fw just has a bit saying "link up" or "link down". so all we will use the ifmedia stuff for is to show if the link is up or down.
2007-04-17point ifreq in the ioctl path at something, so we can void dereferencingDavid Gwynne
random memory.
2007-04-17initial bits for the network interface glue.David Gwynne
2007-04-16Fix debug info when docking/undocking so it tells users what they needMichael Knudsen
to know: acpidock0: undock: status undocked acpidock0: dock: status docked This gets rid of all the garbage output that I used long ago.
2007-04-16do some byteswapping to make the mac address look more believable. i dontDavid Gwynne
know if this will work on big endian machines but its should be trivial to fix.
2007-04-16regenClaudio Jeker
2007-04-16Add Tenda TWL541U and XBOX 360 wireless adapter ids.Claudio Jeker
2007-04-16During the drives detection only check the status register to be notAlexander Yurchenko
0xff, this will allow to detect some certain microdrives plugged into soekris. Patch from Jochen <jochen@penguin-breeder.org> via PR 5340.
2007-04-16move nxb_map_pci code into nxb_attachReyk Floeter
2007-04-16not yetReyk Floeter
2007-04-16establish the interrupt per port and not per board (inspired by theReyk Floeter
tht driver)
2007-04-16move the nxb_tick function to a per-port nx_tick functionReyk Floeter
2007-04-16Start a driver for the NetXen Inc. multi port 10Gb and GigabitReyk Floeter
Ethernet devices. The driver attaches as nxb at pci for the controller/board and nx at nxb for each port.
2007-04-16read the mac address off the port. i hope its the right way round.David Gwynne
sleep time for me
2007-04-16add wrappers around bus space ops for each portDavid Gwynne
2007-04-16add a point from tht_softc back to thtc_softc so we can use thtc's busDavid Gwynne
space bits.
2007-04-16sigh, move tht autoconf stuff after thtc autoconf stuff. it will workDavid Gwynne
better this way
2007-04-16create a register window for each port.David Gwynne
2007-04-16move handling interrupts from thtc into separate handlers for each port.David Gwynne
this means that the pci interrupt handling code iterates over our ports, not our driver, and counts the work they do separately.
2007-04-16move the tht autoconf glue before the thtc autoconf glueDavid Gwynne