History log of /freebsd-current/sys/dev/ocs_fc/ocs_xport.c
Revision Date Author Comments
# 70547544 12-Dec-2023 Ram Kishore Vegesna <ram@FreeBSD.org>

ocs_fc: IO timeout handling and error reporting fix.

Hardware timeout uses a 8-bit timeout value and expects the timeout to
be less than 255 seconds. Added software timer implemetation to timeout
and abort the IOs with timeout more than 255 seconds.

Fix the timeout problem by dividing CAM timeouts by 1000 as hardware
expects timeout value in seconds. Before this change, CAM timeouts in
milliseconds were getting truncated to 8 bits and converted to seconds.
So the actual timeout used when going down to the card would depend on
the bottom 8 bits of the timeout used.

Add the mapping of ocs_fc error status to CAM status.

Reported by: ken
Reviewed by: ken
Tested by: ken, ram
Approved by: ken
MFC after: 1 week


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# afda8553 07-Apr-2022 John Baldwin <jhb@FreeBSD.org>

ocs: Remove unused variable.


# 965e2154 03-Mar-2022 Ram Kishore Vegesna <ram@FreeBSD.org>

ocs_fc: Support persistent topology feature

Summary: Enable persistent topology across power cycles/firmware resets.

Reviewed by: mav

MFC after: 3 days

Differential Revision: https://reviews.freebsd.org/D34425


# 98d835ae 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

ocs_fc: clean up empty lines in .c and .h files


# 4915e5c7 23-Jan-2019 Ram Kishore Vegesna <ram@FreeBSD.org>

Fixed issues reported by coverity scan.

Approved by: mav
MFC after: 3 weeks


# 6affb8eb 18-Jul-2018 Ram Kishore Vegesna <ram@FreeBSD.org>

Implemented Device Lost Timer, which is used to give target device the time to recover before marking dead.

Issue: IO fails immediately after doing port-toggle.
Fix: Added LDT(Device Lost Timer)- we wait a specific period of time prior to telling the OS about lost device.

Approved by: ken, mav
MFC after: 3 days
Differential Revision: D16196


# ef270ab1 30-Mar-2018 Kenneth D. Merry <ken@FreeBSD.org>

Bring in the Broadcom/Emulex Fibre Channel driver, ocs_fc(4).

The ocs_fc(4) driver supports the following hardware:

Emulex 16/8G FC GEN 5 HBAS
LPe15004 FC Host Bus Adapters
LPe160XX FC Host Bus Adapters

Emulex 32/16G FC GEN 6 HBAS
LPe3100X FC Host Bus Adapters
LPe3200X FC Host Bus Adapters

The driver supports target and initiator mode, and also supports FC-Tape.

Note that the driver only currently works on little endian platforms. It
is only included in the module build for amd64 and i386, and in GENERIC
on amd64 only.

Submitted by: Ram Kishore Vegesna <ram.vegesna@broadcom.com>
Reviewed by: mav
MFC after: 5 days
Relnotes: yes
Sponsored by: Broadcom
Differential Revision: https://reviews.freebsd.org/D11423