freebsd-dev/sys/dev/isp
Alexander Motin 66e979f15c Make virtual ports control asynchronous.
Before this change virtual ports control IOCBs were executed synchronously
via Execute IOCB mailbox command.  It required exclusive use of scratch
space of driver and mailbox registers of the hardware.  Because of that
shared resources use this code could not really sleep, having to spin for
completion, blocking any other operation.

This change introduces new asynchronous design, sending the IOCBs directly
on request queue and gracefully waiting for their return on response queue.
Returned IOCBs are identified with unified handle space from r292725.
2015-12-26 04:26:32 +00:00
..
DriverManual.txt
Hardware.txt
isp_freebsd.c Unify handles allocation for initiator and target IOCBs. 2015-12-25 13:03:18 +00:00
isp_freebsd.h Make 16Gig chips to use new queue pointer registers. 2015-12-04 19:46:49 +00:00
isp_ioctl.h
isp_library.c Make virtual ports control asynchronous. 2015-12-26 04:26:32 +00:00
isp_library.h Unify handles allocation for initiator and target IOCBs. 2015-12-25 13:03:18 +00:00
isp_pci.c Unify handles allocation for initiator and target IOCBs. 2015-12-25 13:03:18 +00:00
isp_sbus.c Make 16Gig chips to use new queue pointer registers. 2015-12-04 19:46:49 +00:00
isp_stds.h
isp_target.c Unify handles allocation for initiator and target IOCBs. 2015-12-25 13:03:18 +00:00
isp_target.h
isp.c Make virtual ports control asynchronous. 2015-12-26 04:26:32 +00:00
ispmbox.h Some polishing for command timeouts handling. 2015-12-24 14:53:29 +00:00
ispreg.h
ispvar.h Make virtual ports control asynchronous. 2015-12-26 04:26:32 +00:00