Age | Commit message (Collapse) | Author | |
---|---|---|---|
2006-12-12 | start implementing the bits that allocate the per port structures and their | David Gwynne | |
ccb lists. this is missing handling of the dmamem each port needs to manage, but that can wait till i figure out how it fits together. insane stuff. | |||
2006-12-12 | remember our dma tag. be able to do dma is like, really cool. man. | David Gwynne | |
2006-12-12 | add functions to get and put ccbs out of each ports command free list. | David Gwynne | |
2006-12-12 | add wrappers for reading and writing a ports registers called ahci_pread, | David Gwynne | |
and ahci_pwrite. these will use an io handle into a window of the controllers register space that can be created with bus_space_subregion, and which is stored in the ahci_port struct. | |||
2006-12-12 | introduce the command control blocks, and the concept that they are managed | David Gwynne | |
per port rather than as a big list for the whole controller. the softc has an array of pointers to a struct that manages all the shizz relevant to a particular port. when we map the controllers ports, we'll allocate these as needed. if the port isnt implemented, we leave its pointer in the softc null and use that to decide if a drive might be there or not, rather than lookup up the PI register all the time. a comparison has to null has to be cheaper than doing bit operations, surely. | |||
2006-12-12 | stash the number of commands each port can do in the softc | David Gwynne | |
2006-12-11 | use oct bits consistently in the format string for %b. pointed out by | David Gwynne | |
deraadt@ | |||
2006-12-11 | On i386, swizzle interrupts for devices for which we don't have explicit | Mark Kettenis | |
inetrrupt routing information. ok deraadt@ | |||
2006-12-11 | do not bus_space_map devices which are at address 0; ok kettenis | Theo de Raadt | |
2006-12-11 | oops, we want to return when everything goes well in ahci_attach, rather | David Gwynne | |
than fall through to the bits that do cleanup when an error occurs. | |||
2006-12-11 | remove the argument to all the port registers that say which port you want | David Gwynne | |
to address. instead make them simply offsets from the start of a ports register space, which is something we can easily set up with bus_space_subregion. this should make the code a lot easier to read later on. | |||
2006-12-11 | dont stash the implemented ports map, im going to use a different | David Gwynne | |
mechanism to figure out if a port is usable or not later on. | |||
2006-12-11 | define the command structs used by the ports. | David Gwynne | |
this stuff isnt endearing me to ata at all, and apparently ahci is a good ata controller. the command path looks way more complicated than it needs to be (or maybe i am used to really good scsi controllers, i dont know). a lot of the terminology seems annoyingly different just for the sake of being different. i mean, what is the advantage of calling a scatter gather lement a "physical region descriptor table"? noone else calls it that. there's a lot of weird stuff in here. blah. | |||
2006-12-11 | pull the wrapper for allocations of dma mem with a single segment in from | David Gwynne | |
arc, which got it from mpi, which got it from ami. grange is right, we should look at pushing it back up into the bus_dma api somewhere. | |||
2006-12-11 | oops, too far for the match/attach funcs | David Gwynne | |
2006-12-11 | give the function prototypes a bit more room for the return type. | David Gwynne | |
2006-12-11 | Only disarm the watchdog if we really want to, not before each re-trigger. | Marc Balmer | |
2006-12-11 | Shorten the code, but no functional changes. | Marc Balmer | |
2006-12-11 | per port register definitions | David Gwynne | |
2006-12-11 | fix %b format string now that deraadt fixed printf | David Gwynne | |
2006-12-11 | stash the field showing which ports are hooked up, and dump it if verbose | David Gwynne | |
debug is on | |||
2006-12-11 | if ahci debug and verbose output is enabled, then dump the cap register. | David Gwynne | |
this also fixes a few reg definition errors i found after having them dumped. something seems really screwy with %b. i cant select the 32nd bit position using \x20 or \040, so im using \32 and the rest are octal (\oNN). hex (\xNN) seems really really borked, and the compiler doesnt like eating some of the dec ones (eg, \8BITNAME). | |||
2006-12-10 | Add missing argument to a DPRINTF call. | Claudio Jeker | |
2006-12-10 | Make sure the bit collecting is restarted after signal loss. | Marc Balmer | |
2006-12-10 | Do not attempt to access scsi_xfer fields after scsi_done() has been invoked. | Miod Vallat | |
2006-12-10 | restart collecting bits immediately after a parity error, i.e. use the frame | Marc Balmer | |
immediately following the corrupt one; there is no no need to skip it by waiting for the next minute gap and the sensor value has valid data one minute earlier than before. | |||
2006-12-10 | Re-arm signal loss detection only after we received a bit, not in itself. This | Marc Balmer | |
prevents the signal loss function from being called repeatedly when we have no signal. | |||
2006-12-10 | Faster synchronization after an unexpected minute gap. | Marc Balmer | |
Only look at the skew value if it is != 0. Remove some dead code. | |||
2006-12-10 | regen | Dimitry Andric | |
2006-12-10 | Add ATI RS200M AGP. | Dimitry Andric | |
2006-12-09 | Add USR5423. -moj | Mats O Jansson | |
2006-12-09 | Better describe the magic done by umass_fixup_sony(), okay krw@ | Pedro Martelletto | |
2006-12-09 | Add quirk for Sony DSC-W50 (which is UFI, not SCSI) and rearrange | Pedro Martelletto | |
umass_fixup_sony() a bit while there, okay krw@ | |||
2006-12-09 | Do not make sun terminal emulation selected by the wsemul_sun frame buffer | Miod Vallat | |
attribute anymore; remove it and use option WSEMUL_SUN instead, which gets added to all sparc* kernels. While there, do not compile vt100 emulation on sparc* kernels, this saves 16+ KB of text. ok deraadt@ | |||
2006-12-09 | sigh, split the bus space mapping and interrupt hookup apart so i can | David Gwynne | |
reset the controller and clear interrupts off it before doing the hookup. | |||
2006-12-09 | reset the hba and set the enable bit. | David Gwynne | |
2006-12-09 | figure out which revision of ahci we're trying to use and print it out. | David Gwynne | |
if we don't know about it, bomb out. | |||
2006-12-09 | split the mapping of the pci resources out of the main attach func | David Gwynne | |
2006-12-09 | add wrappers for safe access to the register space. stolen from arc (which | David Gwynne | |
stole them from mpi). | |||
2006-12-09 | add macros for debug shizz | David Gwynne | |
2006-12-09 | bit definitions for the cap and ghc registers | David Gwynne | |
2006-12-09 | registers for hba control | David Gwynne | |
2006-12-09 | the start of a driver for ahci controllers. this does nothing but map the | David Gwynne | |
register space and hook an interrupt up for the controller i have, but it is going into the tree so i can work on it. commit early, commit often | |||
2006-12-08 | First round of evil macro removal. _acx_set_##name##_tmplt bites the dust. | Claudio Jeker | |
OK mglocker@ | |||
2006-12-08 | regen | Gordon Willem Klok | |
2006-12-08 | Add the Broadcom BCM5787F PCI id. | Gordon Willem Klok | |
Add D-Link DGE-560SX and another Marvell Yukon (unknown model) PCI ids. From the Linux sky2 driver via brad@ | |||
2006-12-08 | From Jon Simola <simola@mecha.com>: | Marcus Glocker | |
Style and whitespace cleanup. | |||
2006-12-08 | If we receive a rate of 0 from the AMRR rate adaption code, set the | Marcus Glocker | |
TX rate to a minimum value of 1Mbit/s instead of doing a panic(). We don't know yet how the rate of 0 is produced in some conditions. ok claudio@ | |||
2006-12-07 | Fix some channel tweaks; e.g. solves a bug which sets the channel to 40 | Marcus Glocker | |
when switching into hostap mode. ok claudio@ | |||
2006-12-07 | attach Novatel Merlin U740 to ubsa | Felix Kronlage | |
ok dlg@ |