Home | History | Annotate | Download | only in ic
History log of /src/sys/dev/ic/isp_netbsd.h
RevisionDateAuthorComments
 1.76  20-Sep-2019  christos declare printflike functions and fix another printf format.
also change 0x%x -> %#x.
 1.75  28-Aug-2015  joerg branches: 1.75.18;
Add parenthesis for a macro to prevent surprises when it is negated.
 1.74  17-Jul-2011  joerg branches: 1.74.12; 1.74.30;
Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.73  28-Feb-2011  mjacob Update isp driver to be in sync with other platforms. Mostly very minor changes
with effectively zero impact on NetBSD.
 1.72  26-Mar-2010  mjacob branches: 1.72.2; 1.72.4;
Synchronize with other platforms:

Strongly architect handles so we can more easily detect bogus
handles. This switches us to a full 32 bits for all handles.

Handle the case of FC disks disappearing and then reappearing-
at least at the FC transport level.

Some better and finer control of debug and non-debug printouts.
 1.71  11-Jan-2010  mjacob branches: 1.71.2; 1.71.4;
Keep track of what appear to be live Fibre Channel disks and store up the
Port WWNs for them as well as attaching them as a "port-wwn" property to
the device node in question. This allows MD code to find the boot device
on some platforms.

This is less clean than it should be. A better solution would be to make
some changes to the scsi infrastructure so that periphs can query and
use and store their own "native" transport addresses. However, that's
a much more invasive change and it is not clear how many ports or devices
really want or need that information (yet).
 1.70  03-Dec-2009  mjacob Have as a backup at least *some* usable WWN.
 1.69  23-Nov-2009  rmind Remove some unecessary includes sys/user.h header.
 1.68  07-Sep-2009  tsutsui Split device_t/softc.
Tested QLogic 1020 Fast Wide SCSI HBA at PCI.
Sbus attachment is untested, but not so much quirks in it.
 1.67  25-Jun-2009  mjacob Update ISP driver to latest and greatest. Includes support for the 8Gb part.
 1.66  11-May-2008  mjacob branches: 1.66.12;
Make fc scratch acquisition something that can fail. Remove in_intr flag.
Otherwise synchronize with changes made due to other platforms.
 1.65  08-Apr-2008  cegger branches: 1.65.2; 1.65.4; 1.65.6;
use aprint_*_dev and device_xname
 1.64  11-Mar-2008  mjacob Checkpoint of some fairly major isp(4) rototilling.

Reintroduce more of a 'channel' concept in preparation for NP-IV support.
This gets rid of the chanA/chanB concept as the 2400 can have up to 128
virtual channels. Actually, with MID firmware you can also have the 2200
and 2300 support 'channels, but they do it with an FL-Port topology.
Because FC cards can now have 'channels', just about every support
function for fibre channel had to be redone to have a channel index
as well. Rototill isp_ioctl.h for channel stuff as well.

Pick up a lot of work about fabric management (hopefully better) and keep
work in place that will allow for dynamic attachment/detachment of devices
(if I can figure out how to make the midlayer support it).

Merge the target code with external trees. Eventually it might even
be sorted out on NetBSD.

Update some firmware stuff.
 1.63  19-Oct-2007  ad branches: 1.63.12; 1.63.16;
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 1.62  09-Jul-2007  ad branches: 1.62.6; 1.62.8; 1.62.12;
Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
 1.61  08-Jul-2007  mjacob Oh, dear, I didn't have an i386 or amd64 up and running and
missed a LITTLE ENDIAN version of a define.
 1.60  07-Jul-2007  mjacob Do a number of 24XX related fixes: fix the actual getting of initiator
status correctly (which we never were doing before). Add an underrun
checker for 24XX. The process of sorting this out led to a whole bunch
of endian surprises that had to be dealt with. Fix NVRAM endian issues
for the 24XX as well.

Do a little 2200 related cleanup- in particular, turn off complaints about
not finding a fast posting handle when running with RIO enabled- we are
somehow getting duplicate completions in this case. If we ignore them and
don't complain, all is well, and we actually start averaging > 2 commands
completed per interrupt.
 1.59  24-May-2007  mjacob Major update to isp(4) driver to bring it in line with external sources.

The major changes are:

+ 4Gb (24XX) card support
+ Rewritten fabric and loop evaluation code
+ New f/w sets

The 4Gb changes required major rototilling, which caused a rewrite of
fabric and loop eval code. The latter can now be set up to tune for
dynamic device arrival/departure if the framework is set up for it,
or to be firm about waiting for devices.

Testing has been principally on amd64, i386 and sparc64 and seems to
not have broken things for me.
 1.58  04-Mar-2007  christos branches: 1.58.2; 1.58.4;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.57  29-Mar-2006  thorpej branches: 1.57.14;
Remove isp_unit -- it is not used.
 1.56  16-Feb-2006  perry branches: 1.56.2; 1.56.4; 1.56.6;
Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
 1.55  24-Dec-2005  perry branches: 1.55.2; 1.55.4; 1.55.6;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.54  11-Dec-2005  christos merge ktrace-lwp.
 1.53  27-Feb-2005  perry branches: 1.53.4;
nuke trailing whitespace
 1.52  04-Dec-2003  keihan branches: 1.52.8; 1.52.10;
netbsd.org -> NetBSD.org

This was the last commit of this kind to src/sys, which is now totally
"NetBSD.org clean". Thanks for the patiance, and sorry for all the commits.
 1.51  18-Oct-2002  mjacob branches: 1.51.6;
Slight cleanup to use ISP_MUSTPOLL macro in case we can ever fix the
issue about knowing when we're on the interrupt stack or not.
 1.50  04-Apr-2002  mjacob Redo fabric evaluation to not use GET ALL NEXT (GA_NXT). Switches seem
to be trying to wriggle out of supporting this well. Instead, use
GID_FT to get a list of Port IDs and then use GPN_ID/GNN_ID to find the
port and node wwn. This should make working on fabrics a bit cleaner and
more stable.

This also caused some cleanup of SNS subcommand canonicalization so that
we can actually check for FS_ACC and FS_RJT, and if we get an FS_RJT,
print out the reason and explanation codes.

We'll keep the old GA_NXT method around if people want to uncomment a
controlling definition in ispvar.h.

This also had us clean up ISPASYNC_FABRICDEV to use a local lportdb argument
and to have the caller explicitly say that a device is at the end of the
fabric list.
 1.49  31-Mar-2002  mjacob Thanks to Jason Wright of OpenBSD- spotted that the offsets were all wrong
for bus_dmamap_sync calls. They'd been blindly ported from Solaris which
had *one* dma map for the entire control space, so offset was incremented
for the Request, Response and FC Scratch spaces. Tsk. There are three maps
in NetBSD. I should probably make them one anyway.
 1.48  21-Feb-2002  mjacob Implement F/W crashdumps for 2200 && 2300 cards (kernel compile option).

Distinguish between 2312 and 2300 cards (they *are* different). Enable
RIO (Reduced Interrupt Operation) for the LVD cards (hey- I've seen
batched completions of the 30 commands at a time with this,....)...

If we get a Port Logout on local loop topologies, we have to force the
f/w to log back in. The easiest way (for us) to do this is to force
a LIP. This also will wake up the disk that probably just had a f/w crash.

Implement mailbox 'continuations'- this allows interrupts to re-drive
a mailbox command if it's one that just essentially repeats the previous
mailbox command (e.g., f/w download). This saves a boatload of sleep/wakeup
twitches.

If we're not a 2300 and we're about to return with a 'bogus interrupt'- check
the semaphore register to be non-zero at all and outgoing mailbox 0- this
seems to be where some of the lost ISP1080 commands came from.
 1.47  14-Dec-2001  mjacob Major restructuring for swizzling to the request queue and unswizzling from
the response queue. Instead of the ad hoc ISP_SWIZZLE_REQUEST, we now have
a complete set of inline functions in isp_inline.h. Each platform is
responsible for providing just one of a set of ISP_IOX_{GET,PUT}{8,16,32}
macros.

The reason this needs to be done is that we need to have a single set of
functions that will work correctly on multiple architectures for both little
and big endian machines. It also needs to work correctly in the case that
we have the request or response queues in memory that has to be treated
specially (e.g., have ddi_dma_sync called on it for Solaris after we update
it or before we read from it).

One thing that falls out of this is that we no longer build requests in the
request queue itself. Instead, we build the request locally (e.g., on the
stack) and then as part of the swizzling operation, copy it to the request
queue entry we've allocated. I thought long and hard about whether this was
too expensive a change to make as it in a lot of cases requires an extra
copy. On balance, the flexbility is worth it. With any luck, the entry that
we build locally stays in a processor writeback cache (after all, it's only
64 bytes) so that the cost of actually flushing it to the memory area that is
the shared queue with the PCI device is not all that expensive. We may examine
this again and try to get clever in the future to try and avoid copies.

Another change that falls out of this is that MEMORYBARRIER should be taken
a lot more seriously. The macro ISP_ADD_REQUEST does a MEMORYBARRIER on the
entry being added. But there had been many other places this had been missing.
It's now very important that it be done.

For NetBSD, it does a ddi_dmamap_sync as appropriate. This gets us out of
the explicit ddi_dmamap_sync on the whole response queue that we did for SBus
cards at each interrupt.

Set things up so that platforms that cannot have an SBus don't get a lot of
the SBus code checks (dead coded out).

Additional changes:

Fix a longstanding buglet of sorts. When we get an entry via isp_getrqentry,
the iptr value that gets returned is the value we intend to eventually plug
into the ISP registers as the entry *one past* the last one we've written-
*not* the current entry we're updating. All along we've been calling sync
functions on the wrong index value. Argh. The 'fix' here is to rename all
'iptr' variables as 'nxti' to remember that this is the 'next' pointer-
not the current pointer.

Devote a single bit to mboxbsy- and set aside bits for output mbox registers
that we need to pick up- we can have at least one command which does not
have any defined output registers (MBOX_EXECUTE_FIRMWARE).

Explicitly decode GetAllNext SNS Response back *as* a GetAllNext response.
Otherwise, we won't unswizzle it correctly.

Nuke some additional __P macros.
 1.46  01-Sep-2001  mjacob Add support for 2 Gigabit cards (2300/2312). This necessitated a change
in how interrupts are down- the 23XX has not only a different place to check
for an interrupt, but unlike all other QLogic cards, you have to read the
status as a 32 bit word- not 16 bit words. Rather than have device specific
functions as called from the core module (in isp_intr), it makes more sense
to have the platform/bus modules do the gruntwork of splitting out the
isr, semaphore register and the first outgoing mailbox register (if needed)
*prior* to calling isp_intr (if calling isp_intr is necessary at all).
 1.45  07-Jul-2001  thorpej branches: 1.45.2;
bzero -> memset
 1.44  07-Jul-2001  thorpej bcopy -> memcpy
 1.43  25-May-2001  mjacob Create a kernel thread for Fibre Channel cards. This is the new
way of doing business- modulo some startup spasms and peculiarities
of the way kthreads are started (*after* configuration, weird) and
some strangeness with the freeze/thaw code, what now happens is
that any of Loop Down, LIP, Loop Reset or Port Datbase or Name
Server Database Changed ASYNC events cause the queues to freeze
for this channel. The arrival of a Loop UP is not relevant.

What *is* relevant is that the Port Datbase or Name Server Changed
async event indicate that it's okay to go and (re)evaluate the
state of the FC link and (re)probe local loop and fabric membership.
We have a kthread do this because it's *sooooo* much nicer to be
able to sleep while doing the 130-250 mailbox commands it'll take
to re-evaluate things.

When the state is well known again, we can unfreeze the channel
queues. Then, as commands start arriving, we simply can start them
or bounce them with XS_SELTIMEOUT (if the device in question has
gone away). Previously, we did lazy evaluation, which meant that
if a change occurred, we would wait until the very *next* command
to go rebuild stuff.

The reason this is not sensible is:

a) Even with sleeping, you can hang up your system because you might be
making some poor stat(2) call pay the price of re-evaluating the whole
fabric.

b) If we ever really want to get to dynamic attachment/detachment, we
should find out sooner, rather than later, where things get to.

Split off ispminphys_1020 from ispminphys- a 1020 has a 24 bit limit-
not anything newer.

Re-enable LIPs and Loop Resets as async events- this allows the outer
layer to set policy about them.

Roll platform major && minor. Remove bogus waitq (no longer used).
Remove callout entry in softc (no longer used). Define some shorthands
for channels. Clean up a variety of cruft left over from the
thorpej_scsipi changeover.
 1.42  16-May-2001  mjacob Per helpful suggestion from LukeM- make INLINE usage consistent (and
use correct __inline format).
 1.41  16-May-2001  mjacob Long overdue- put locks on the usage of the mailbox command stuff. This
keeps us from stomping on ourselves.

Say we're in the middle of re-evaluating a loop (and sleeping) when a
command completes, or a timer refires, and this *other* thread decides
*it* wants to start re-evaluating the loop. Bad news.

We have to be a bit careful- if we can't acquire the MBOX semaphore at
interrupt level, we will simulate a host interface error. This is a bit
of a temp workaround. There's some work underway driven by a NetBSD
commercial user that will try and force most mailbox stuff into a
part A/part B interrupt driven model.
 1.40  25-Apr-2001  bouyer Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
(no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
 1.39  10-Apr-2001  mjacob Include isp_ioctl.h.
 1.38  14-Mar-2001  mjacob ANSIfy source.
 1.37  28-Feb-2001  mjacob branches: 1.37.2;
roll platform minor
 1.36  12-Feb-2001  mjacob Remove ISP2100_FABRIC (we're always fabric now). Fix usage of isp_lastmbxcmd
to report the mailbox command that times out. Fix isp_unswizzle_sns_rsp
which for reasons *I* find obscurer just doesn't work correctly on sparc64
with words past 128. I have no idea why this *does* work on SparcLinux.
 1.35  05-Jan-2001  mjacob (some of these changes were made in the previous revision- oops)
Say which mailbox command times out (polled or interrupting). Also,
give them a bit more time to timeout (5 seconds instead of 2).
 1.34  05-Jan-2001  mjacob Ian McDonnell <apriori@world.std.com> made me see the error of my ways.
*Cough*. Ahem. I hadn't been setting error to XS_SENSE when there was
a check condition. Major blunder.
 1.33  23-Dec-2000  wiz Fix pathnames in comment.
 1.32  09-Dec-2000  mjacob Finally fix this driver to be sensible about the ENDIAN dance. It's not
quite simply a question of the Qlogic being little endian and having
to have stuff swapped on big endian machines- it also has to do with the
fact that the SBus and PCI DMA layouts are wierd with respect to this.

At any rate, now finally fixed- works on Mac G4, tested it on a SS10
for sparc, checked on alpha to see if I've broken anything, and as
soon as I get another spare afternoon I'll finally install a sparc64
version which should just work (as it'll be like the Mac).
 1.31  14-Nov-2000  thorpej Pull in <uvm/uvm_extern.h>
 1.30  16-Oct-2000  mjacob Make changes relevant to changes in WWN defaults.

Also fix egregious bug where we would never decrement
the islocked recursion counter. I guess this means
that we don't recurse on this platform! All of this should
go away when we have real lock primitives to use in drivers.
 1.29  14-Aug-2000  mjacob Add a maintenance note. Move the single bit tags of islocked and
onintstack to be real integers. Add ISP_ILOCK/ISP_IUNLOCK macros.

Fix the isp_lock/isp_unlock inlines to stop being so embarrassingly
in error. Why, or why, can't I have mutex_enter/mutex_exit, pretty please?
 1.28  11-Aug-2000  tls Make our policy WRT tagged queueing consistent and sane: ordered tags for sync writes, simple tags for all else. Should make ahc and adv a bit more reliable (metadata writes won't get reordered incorrectly...) and isp a bit more performant (it was using ordered tags all the time).
 1.27  01-Aug-2000  mjacob Core version 2.0 (platform version 1.0) rewrite of ISP driver. Some
interace cleanups, some new common functions. The major impact that
will be noticeable right away is that if you boot with not Fibre connected
to the FC cards, you no longer hang indefinitely.
 1.26  05-Jul-2000  mjacob Roll platform minor. We are now always supporting ISP2100_FABRIC. Add
in new MBOX_WAIT_COMPLETE/MBOX_NOTIFY_COMPLETE macros (ready for SMPizing).
Define STRNCAT inline for our usage.

Stealing a bit of the xs_status flags to maintain command state that
is pertinent for the hBA- should really reserve them for private usage
in scsipiconf.h.
 1.25  28-Jun-2000  mrg remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h>
 1.24  26-Jun-2000  mrg remove redundant vm includes.
 1.23  23-Mar-2000  thorpej branches: 1.23.4;
New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
resource allocation.
- Insertion and removal of callouts is constant time, important as
this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
 1.22  19-Feb-2000  mjacob Add in ISP_SWIZZLE_CONTINUATION macro.
 1.21  20-Dec-1999  mjacob restore (by request) CFGPRINTF to DIAGNOSTIC level kernels
 1.20  16-Dec-1999  mjacob Dual LVD (1280) support.
 1.19  04-Dec-1999  mjacob Rearrange defines to make the file diff cleaner with OpenBSD. Change CFGPRINTF
and default verbose levels. Add in a forced compile in f/w define unless
either IS_DISABLE_FW or ISP_COMPILE_FW defined.
 1.18  14-Oct-1999  mjacob branches: 1.18.2;
Roll platform version. Keep a bitmap of 'discovered' devices for SCSI adapters
so we'll know when it's time to switch from 'slow' command mode to normal.
Change some settings for configuration printfs and debug levels. Redo the
internal ispscsicmd return definitions and let isp_cmd translate them as
approrpriate to NetBSD values. Remove the inline functions from here- they're
now in isp_inline.h. Put in the start of the correct SWIZZLE/UNSWIZZLE
functions.
 1.17  30-Sep-1999  thorpej branches: 1.17.2;
Update for SCSIPI changes. Note that capabilities update is disabled
until Matt Jacob has a change to update the driver for the latest
firmware, etc. since update device parameters seems to fail once the
system is really up and running, and eventually causes the controller
to wedge. This may be due to a firmware bug.

Per discussion with Matt.
 1.16  07-Sep-1999  mjacob A useful discussion with Jason convinced me that I had selected the
wrong tag as the default tag to use- we should use ORDERED, no SIMPLE.
 1.15  05-Jul-1999  mjacob Change to approved NASA/Ames copyright. Add Fabric support. Fix SCCLUN support.
Add code that tries to track LoopID shifting.
 1.14  12-May-1999  mjacob Do a fairly large internal restructuring to accomodate dual-bus host adapters
(e.g., the 1240). Include the new 1080/1240 NVRAM layout reading code. Some
moderately significant mailbox changes were necessary also to accomodate a
second channel.
 1.13  04-Apr-1999  mjacob roll internal revs
 1.12  26-Mar-1999  mjacob branches: 1.12.2; 1.12.4;
add isp1080 support and some basic PDB change stuff
 1.11  17-Mar-1999  mjacob Update the driver with some infrastructure for the 1080. Fix an embarrassing
clock botch bug. Additional infrastructure for PDB change stuff.
 1.10  09-Feb-1999  mjacob Roll platform revision level. Add blocked flag and waitq to osinfo structure.
 1.9  30-Jan-1999  mjacob Implement and use Fast Posting for both parallel && fibre. Redo a bit of
the startup code. Implement a call to outer framework function so that
asynchronous events can be handled (e.g., speed negotiation, target mode).

Roll internal release tags.
 1.8  10-Jan-1999  mjacob cross platform define MEMZERO added
 1.7  28-Dec-1998  mjacob clean up headers; move uninit/watch to outer layers
 1.6  05-Dec-1998  mjacob Update BA for new max_lun parameter for SCSIbusses. Clearify maximum luns
for FC HB based upon a SCCLUN define (15 for normal- 255 out of a possible
65535 for SCCLUN). Propagate loopid as adapter_target.

Roll minor platform version. Roll core version number.

Update mailbox definitions with cleaner target mode structure definitions.
Clean up some ENDIAN stuff. Correct botched ISP2100_NVRAM_HARDLOOPID offset.
 1.5  19-Nov-1998  thorpej Adapt to the new scsipi_adapter interface.
 1.4  17-Sep-1998  mjacob branches: 1.4.2;
cleanup header to be just NetBSD
 1.3  08-Sep-1998  mjacob roll revision, change default tagging to simple tags
 1.2  18-Jul-1998  mjacob roll revision
 1.1  15-Jul-1998  mjacob NetBSD OS specific routines and definitions.
 1.4.2.2  07-Nov-1998  cgd pull up revs 1.1-1.4 from trunk (new file), and patch so that it works
in 1.3.x. (mjacob)
 1.4.2.1  17-Sep-1998  cgd file isp_netbsd.h was added on branch netbsd-1-3 on 1998-11-07 05:51:02 +0000
 1.12.4.2  02-Aug-1999  thorpej Update from trunk.
 1.12.4.1  21-Jun-1999  thorpej Sync w/ -current.
 1.12.2.2  13-May-2000  he Apply patch (requested by Matthew Jacob via he):
Correctly account for F-port vs. F-port (no FLOGI_ACC) topologies.
Make sure we get a port database entry for the fabric name server.
Preserve fabric logins if the device didn't change across fabric
or port database changes, or the device has already logged into
us (e.g., for target/initiator dual role devices like Veritas
SANbox). Propagate class 3 service parameter changes where devices
can change roles.

Fix all occurrences of setting a sendmarker so that setting it
for one bus on dual bus cards doesn't wipe a pending sendmarker
for other busses on the same card.

Comments added and clarifications made in some of the target mode code.

Add support for > 12 byte CDBs. Split out nvram reading into
per-card functions. Add proper Ultra2/Ultra3 support. Upgrade
firmware.
 1.12.2.1  08-Jan-2000  he Pull up revisions 1.13-1.16,1.18-1.21 (via patch, requested by mjacob):
Untangle Qlogic firmware copyright problems and update firmware.
Untangle some MD support issues for said firmware. Add 1280 (Dual
LVD), 1240 (Dual Ultra), 2200 (2nd Generation Qlogic FC chipset).
Fix some synchronous negotiation problems for parallel SCSI.
Firm up some Fabric Support issues.
 1.17.2.1  27-Dec-1999  wrstuden Pull up to last week's -current.
 1.18.2.14  21-Apr-2001  bouyer Sync with HEAD
 1.18.2.13  27-Mar-2001  bouyer Ops, XS_CHANNEL() is channel number, not pointer to scsipi_channel.
 1.18.2.12  27-Mar-2001  bouyer Sync with HEAD.
 1.18.2.11  27-Mar-2001  bouyer Convert these drivers to thorpej_scsipi (untested).
 1.18.2.10  12-Mar-2001  bouyer Sync with HEAD.
 1.18.2.9  05-Jan-2001  bouyer Sync with HEAD
 1.18.2.8  13-Dec-2000  bouyer Sync with HEAD (for UBC fixes).
 1.18.2.7  22-Nov-2000  bouyer Sync with HEAD.
 1.18.2.6  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.18.2.5  04-Feb-2000  thorpej - If the ISP's internal queues are full, don't synthesize a QFULL status,
but rather report it as a host adapter resource shortage.
- If the I_T_L's command queues are full, report that the target is busy
(with QFULL status).
 1.18.2.4  01-Nov-1999  thorpej Fixup the SC_DEBUG() stuff for the new world order.
 1.18.2.3  20-Oct-1999  thorpej - Eliminate sleeping from adapter routines.
- On a LOOP DOWN event, freeze the channel queue.
- On a LOOP UP event, do a timed thaw on the channel queue.
 1.18.2.2  19-Oct-1999  thorpej Let the midlayer tell if we can use tagged queueing, and what sort of
tag to use.
 1.18.2.1  19-Oct-1999  thorpej Adapt to scsipi API changes.
 1.23.4.4  16-Mar-2001  he Pull up revisions 1.34-1.38 (requested by mjacob):
Remove ISP2100_FABRIC (we're always fabric now). Say which
mailbox command times out (polled or interrupting). Set error
to XS_SENSE when there is a check condition. Roll platform minor.
ANSIfy source.
 1.23.4.3  25-Jan-2001  jhawk Pull up revisions 1.30-1.33 (requested by mjacob):
Add in correct SBus bursting; upgrade to 2.01.26 firmware; pull to latest
initiator mode level; make changes to WWN default handling; quiet
chatty boot messages; fix endian code so MacPPC works; fix bug in
lock recursion counter; fix bug which excluded all but NL-ports from
being logged into on a fabric.
 1.23.4.2  28-Aug-2000  mjacob Complete rewrite of internals for isp core version 2.0.
Pullup to netbsd-1-5 approved by thorpej@netbsd.org.
 1.23.4.1  11-Aug-2000  tls Pull up tagged queueing policy changes: now we use ordered tags for sync writes, simple tags for reads and async writes.
 1.37.2.8  11-Nov-2002  nathanw Catch up to -current
 1.37.2.7  17-Apr-2002  nathanw Catch up to -current.
 1.37.2.6  28-Feb-2002  nathanw Catch up to -current.
 1.37.2.5  08-Jan-2002  nathanw Catch up to -current.
 1.37.2.4  21-Sep-2001  nathanw Catch up to -current.
 1.37.2.3  24-Aug-2001  nathanw Catch up with -current.
 1.37.2.2  21-Jun-2001  nathanw Catch up to -current.
 1.37.2.1  09-Apr-2001  nathanw Catch up with -current.
 1.45.2.4  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.45.2.3  16-Mar-2002  jdolecek Catch up with -current.
 1.45.2.2  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.45.2.1  13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.51.6.4  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.51.6.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.51.6.2  18-Sep-2004  skrll Sync with HEAD.
 1.51.6.1  03-Aug-2004  skrll Sync with HEAD
 1.52.10.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.52.8.1  29-Apr-2005  kent sync with -current
 1.53.4.4  17-Mar-2008  yamt sync with head.
 1.53.4.3  27-Oct-2007  yamt sync with head.
 1.53.4.2  03-Sep-2007  yamt sync with head.
 1.53.4.1  21-Jun-2006  yamt sync with head.
 1.55.6.1  22-Apr-2006  simonb Sync with head.
 1.55.4.1  09-Sep-2006  rpaulo sync with head
 1.55.2.1  18-Feb-2006  yamt sync with head.
 1.56.6.1  31-Mar-2006  tron Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
 1.56.4.1  19-Apr-2006  elad sync with head.
 1.56.2.1  01-Apr-2006  yamt sync with head.
 1.57.14.1  12-Mar-2007  rmind Sync with HEAD.
 1.58.4.1  11-Jul-2007  mjf Sync with head.
 1.58.2.4  23-Oct-2007  ad Sync with head.
 1.58.2.3  15-Jul-2007  ad Sync with head.
 1.58.2.2  27-May-2007  ad Sync with head.
 1.58.2.1  09-Apr-2007  ad - Add two new arguments to kthread_create1: pri_t pri, bool mpsafe.
- Fork kthreads off proc0 as new LWPs, not new processes.
 1.62.12.1  25-Oct-2007  bouyer Sync with HEAD.
 1.62.8.2  23-Mar-2008  matt sync with HEAD
 1.62.8.1  06-Nov-2007  matt sync with HEAD
 1.62.6.1  26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.63.16.2  02-Jun-2008  mjf Sync with HEAD.
 1.63.16.1  03-Apr-2008  mjf Sync with HEAD.
 1.63.12.1  24-Mar-2008  keiichi sync with head.
 1.65.6.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.65.4.5  11-Aug-2010  yamt sync with head.
 1.65.4.4  11-Mar-2010  yamt sync with head
 1.65.4.3  16-Sep-2009  yamt sync with head
 1.65.4.2  18-Jul-2009  yamt sync with head.
 1.65.4.1  16-May-2008  yamt sync with head.
 1.65.2.1  18-May-2008  yamt sync with head.
 1.66.12.1  23-Jul-2009  jym Sync with HEAD.
 1.71.4.2  05-Mar-2011  rmind sync with head
 1.71.4.1  30-May-2010  rmind sync with head
 1.71.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.72.4.1  05-Mar-2011  bouyer Sync with HEAD
 1.72.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.74.30.1  22-Sep-2015  skrll Sync with HEAD
 1.74.12.1  03-Dec-2017  jdolecek update from HEAD
 1.75.18.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411

RSS XML Feed