<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/isp/isp_target.h, branch releng/12.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2017-11-27T14:52:40Z</updated>
<entry>
<title>sys/dev: further adoption of SPDX licensing ID tags.</title>
<updated>2017-11-27T14:52:40Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2017-11-27T14:52:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=718cf2ccb9956613756ab15d7a0e28f2c8e91cab'/>
<id>urn:sha1:718cf2ccb9956613756ab15d7a0e28f2c8e91cab</id>
<content type='text'>
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
</content>
</entry>
<entry>
<title>Remove some dead stuff.</title>
<updated>2017-03-19T09:36:43Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2017-03-19T09:36:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a41dd87f61a6ae85e1ec4e0c9156bbdc57791a05'/>
<id>urn:sha1:a41dd87f61a6ae85e1ec4e0c9156bbdc57791a05</id>
<content type='text'>
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Move 24xx RQSTYPE_NOTIFY handling to generic code.</title>
<updated>2017-03-19T09:30:03Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2017-03-19T09:30:03Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5a5632c2de18c42a1eb6f7a7fb790419b81d801d'/>
<id>urn:sha1:5a5632c2de18c42a1eb6f7a7fb790419b81d801d</id>
<content type='text'>
This code has nothing to do with specific platform.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Extend nt_lun to full 8 byte.</title>
<updated>2017-03-18T16:09:36Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2017-03-18T16:09:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=15c62456d1eef7edbefa3d898132338fc8d74cdc'/>
<id>urn:sha1:15c62456d1eef7edbefa3d898132338fc8d74cdc</id>
<content type='text'>
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Add partial support for QUERY TMF to CAM and isp(4).</title>
<updated>2015-10-23T18:34:18Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2015-10-23T18:34:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c98d2b1f1e833b4c3b65b602cf8a9d96cf61c973'/>
<id>urn:sha1:c98d2b1f1e833b4c3b65b602cf8a9d96cf61c973</id>
<content type='text'>
This change allows to decode respective functions in isp(4) in target mode
and pass them through CAM to CTL.  Unfortunately neither CAM nor isp(4)
support returning response info for those task management functions now.

On the other side I just have no initiator to test this functionality.
</content>
</entry>
<entry>
<title>Unify port database use for target and initiator roles.</title>
<updated>2015-07-13T15:11:05Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2015-07-13T15:11:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e68eef1442481d967522a70be620aa7dacdf056e'/>
<id>urn:sha1:e68eef1442481d967522a70be620aa7dacdf056e</id>
<content type='text'>
Aside from cleaner and more consistent code, this allows ports to be both
target and initiator same time, and easily switch from any role to any.

Sponsored by:	iXsystems, Inc.
</content>
</entry>
<entry>
<title>-----------</title>
<updated>2012-07-28T20:06:29Z</updated>
<author>
<name>Matt Jacob</name>
<email>mjacob@FreeBSD.org</email>
</author>
<published>2012-07-28T20:06:29Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=387d8239fb5e7a6023d4627b3bc0e3afbf22af03'/>
<id>urn:sha1:387d8239fb5e7a6023d4627b3bc0e3afbf22af03</id>
<content type='text'>
MISC CHANGES

Add a new async event- ISP_TARGET_NOTIFY_ACK, that will guarantee
eventual delivery of a NOTIFY ACK. This is tons better than just
ignoring the return from isp_notify_ack and hoping for the best.

Clean up the lower level lun enable code to be a bit more sensible.

Fix a botch in isp_endcmd which was messing up the sense data.

Fix notify ack for SRR to use a sensible error code in the case
of a reject.

Clean up and make clear what kind of firmware we've loaded and
what capabilities it has.
-----------
FULL (252 byte) SENSE DATA

In CTIOs for the ISP, there's only a limimted amount of space
to load SENSE DATA for associated CHECK CONDITIONS (24 or 26
bytes). This makes it difficult to send full SENSE DATA that can
be up to 252 bytes.

Implement MODE 2 responses which have us build the FCP Response
in system memory which the ISP will put onto the wire directly.

On the initiator side, the same problem occurs in that a command
status response only has a limited amount of space for SENSE DATA.
This data is supplemented by status continuation responses that
the ISP pushes onto the response queue after the status response.
We now pull them all together so that full sense data can be
returned to the periph driver.

This is supported on 23XX, 24XX and 25XX cards.

This is also preparation for doing &gt;16 byte CDBs.

-----------
FC TAPE

Implement full FC-TAPE on both initiator and target mode side.  This
capability is driven by firmware loaded, board type, board NVRAM
settings, or hint configuration options to enable or disable. This
is supported for 23XX, 24XX and 25XX cards.

On the initiator side, we pretty much just have to generate a command
reference number for each command we send out. This is FCP-4 compliant
in that we do this per ITL nexus to generate the allowed 1 thru 255
CRN.

In order to support the target side of FC-TAPE, we now pay attention
to more of the PRLI word 3 parameters which will tell us whether
an initiator wants confirmed responses. While we're at it, we'll
pay attention to the initiator view too and report it.

On sending back CTIOs, we will notice whether the initiator wants
confirmed responses and we'll set up flags to do so.

If a response or data frame is lost the initiator sends us an SRR
(Sequence Retransmit Request) ELS which shows up as an SRR notify
and all outstanding CTIOs are nuked with SRR Received status. The
SRR notify contains the offset that the initiator wants us to restart
the data transfer from or to retransmit the response frame.

If the ISP driver still has the CCB around for which the data segment
or response applies, it will retransmit.

However, we typically don't know about a lost data frame until we
send the FCP Response and the initiator totes up counters for data
moved and notices missing segments. In this case we've already
completed the data CCBs already and sent themn back up to the periph
driver.  Because there's no really clean mechanism yet in CAM to
handle this, a hack has been put into place to complete the CTIO
CCB with the CAM_MESSAGE_RECV status which will have a MODIFY DATA
POINTER extended message in it. The internal ISP target groks this
and ctl(8) will be modified to deal with this as well.

At any rate, the data is retransmitted and an an FCP response is
sent. The whole point here is to successfully complete a command
so that you don't have to depend on ULP (SCSI) to have to recover,
which in the case of tape is not really possible (hence the name
FC-TAPE).

Sponsored by: Spectralogic
MFC after:	1 month
</content>
</entry>
<entry>
<title>Add 8Gb support (isp_2500). Fix a fair number of configuration and</title>
<updated>2009-08-01T01:04:26Z</updated>
<author>
<name>Matt Jacob</name>
<email>mjacob@FreeBSD.org</email>
</author>
<published>2009-08-01T01:04:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2df76c160ba5c04ece8efeff418362c9a1adc9f5'/>
<id>urn:sha1:2df76c160ba5c04ece8efeff418362c9a1adc9f5</id>
<content type='text'>
firmware loading bugs.

Target mode support has received some serious attention to make it
more usable and stable.

Some backward compatible additions to CAM have been made that make
target mode async events easier to deal with have also been put
into place.

Further refinement and better support for NP-IV (N-port Virtualization)
is now in place.

Code for release prior to RELENG_7 has been stripped away for code clarity.

Sponsored by: Copan Systems

Reviewed by:    scottl, ken, jung-uk kim
Approved by:    re
</content>
</entry>
<entry>
<title>Fix some stupid copyright mistakes that have been there for quite some time.</title>
<updated>2007-03-10T02:39:54Z</updated>
<author>
<name>Matt Jacob</name>
<email>mjacob@FreeBSD.org</email>
</author>
<published>2007-03-10T02:39:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e48b2487a0c478497ada13a111ea69861d7853a1'/>
<id>urn:sha1:e48b2487a0c478497ada13a111ea69861d7853a1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>MFP4: Move default setting to the end of isp_reset instead of the</title>
<updated>2007-01-20T04:00:21Z</updated>
<author>
<name>Matt Jacob</name>
<email>mjacob@FreeBSD.org</email>
</author>
<published>2007-01-20T04:00:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6c81a0aecb6ec9d28c78bb2dc9e12a7416fc6ac7'/>
<id>urn:sha1:6c81a0aecb6ec9d28c78bb2dc9e12a7416fc6ac7</id>
<content type='text'>
front of isp_init so we can read NVRAM even if we're role ISP_NONE.
Prepare for reintroduction of channels (for FC) for N-Port
Virtualization.

Fix a botch in handle assignment that caused us to nuke one device
when a new one arrives and end up with two devices with the same
identity in the virtual target mapping table.
</content>
</entry>
</feed>
