Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Jul 2014 22:22:58 -0600
From:      "Kenneth D. Merry" <ken@FreeBSD.ORG>
To:        bharat singh <bharat064015@gmail.com>
Cc:        freebsd-scsi@freebsd.org, freebsd-drivers@freebsd.org
Subject:   Re: QLogic 24xx FC HBAs not working fine with CAM Target Layer
Message-ID:  <20140723042258.GA15089@nargothrond.kdm.org>
In-Reply-To: <CABMFQWRSj9dh3v0yB_T7xp=55R39CiY0OGoXe0aeJrU32bLUEw@mail.gmail.com>
References:  <CABMFQWRSj9dh3v0yB_T7xp=55R39CiY0OGoXe0aeJrU32bLUEw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jul 22, 2014 at 13:06:53 +0530, bharat singh wrote:
> Hello,
> 
> I am trying to use a new firmware on a single port FC HBA with freebsd9
> stable, but facing the firmware issue.
> 
> Card came with firmware version 5.5.0
> (isp0: Board Type 2422, Chip Revision 0x3, resident F/W Revision 5.5.0)
> 
> I upgraded the firmware to 5.6.5, and disabled firmware flag by setting
> "fwload_disable=YES" flag in /boot/device.hints to retain the newer
> firmware.
> On subsequent reboots the firmware fails to initialize and throws
> isp0: Mailbox Command 'ABOUT FIRMWARE' failed (TIMEOUT)

In general, you want to load the ispfw module or compile it into your
kernel.  The driver was tested with the firmware included in the module,
and may not work as well (or at all) with a different version.

If you know what changed between the firmware version compiled into the
ispfw module and the one you want to run, you can make any necessary driver
modifications.

> [root@Ctrl4 ~]# ctladm port -l
> Port Online Type     Name         pp vp WWNN               WWPN
>    Speed  Vendor
> 0    YES    IOCTL    CTL ioctl    0  0  0                  0
>     0
> 1    YES    INTERNAL ctl2cam      0  0  0x5000000edac0c700
> 0x5000000edac0c702  0
> 2    YES    INTERNAL CTL internal 0  0  0                  0
>     0
> 
> * It's not showing FC port

You need to compile your kernel with:

options		ISP_TARGET_MODE=1

Otherwise you won't get target mode functionality in the isp(4) driver.

> 1448 Jul 22 11:05:37 Ctrl4 kernel: isp0: IN mbox 0 = 0x0008
> 1450 Jul 22 11:05:37 Ctrl4 kernel: isp0: RISC2HOST ISR 0x40000101
> 1451 Jul 22 11:05:37 Ctrl4 last message repeated 999 times
> 1454 Jul 22 11:05:37 Ctrl4 kernel: isp0: Polled Mailbox Command (0x8)
> Timeout (100000us) (started @ isp_reset:1045)
> 1456 Jul 22 11:05:37 Ctrl4 kernel: isp0: Mailbox Command 'ABOUT FIRMWARE'
> failed (TIMEOUT)
> 1458 Jul 22 11:05:37 Ctrl4 kernel: isp0: RISC2HOST ISR 0x40000101
> 1460 Jul 22 11:05:37 Ctrl4 kernel: Trying to mount root from
> ufs:/dev/label/root_0 [rw]...
> 1462 Jul 22 11:05:37 Ctrl4 kernel: device_attach: isp0 attach returned 6
> 1464 Jul 22 11:05:37 Ctrl4 kernel: isp0: <Qlogic ISP 2432 PCI FC-AL
> Adapter> port 0x3000-0x30ff mem 0xc1040000-0xc1043fff irq 16 at device 0.0
> on pci     3
> 1465 Jul 22 11:05:37 Ctrl4 kernel: isp0: loaded firmware isp_2400_multi
> 
> from dmesg:
> isp0: RISC2HOST ISR 0x40000101
> isp0: Polled Mailbox Command (0x8) Timeout (100000us) (started @
> isp_reset:1045)
> isp0: Mailbox Command 'ABOUT FIRMWARE' failed (TIMEOUT)
> isp0: RISC2HOST ISR 0x40000101
> device_attach: isp0 attach returned 6
> isp0: <Qlogic ISP 2432 PCI FC-AL Adapter> port 0x3000-0x30ff mem
> 0xc1040000-0xc1043fff irq 16 at device 0.0 on pci3
> isp0: loaded firmware isp_2400_multi
> isp0: set PCI latency to 64
> isp0: request/result area @ 0xf700000/0x38000
> isp0: scdma @ 0xf6b9000/0x1000
> isp0: IN mbox 0 = 0x0000
> isp0: RISC2HOST ISR 0x0
> isp0: RISC2HOST ISR 0x40008001
> isp0: OUT mbox 0 = 0x4000
> isp0: IN mbox 0 = 0x0006
> isp0: IN mbox 1 = 0xdead
> 
> The workaround is to enable the firmware flash by setting
> "fwload_disable=NO", but that doesn't serves my purpose.
> 
> Is there a way to avoid the issue without a firmware flash on every reboot ?
> Moreover i have seen the issue on older firmware 5.5.0 also, as soon I
> disable the firmware flash and reboot.

If I recall correctly, the firmware that is loaded on boot is loaded into
RAM on the card, not flashed.  I don't think it affects what is actually
flashed onto the board.

So that really is what you want to do.

Also, just FYI, in past testing with 4Gb Qlogic boards I was limited to
256MB/sec in each direction when I tried them out.  I haven't seen the same
limitation with the 8Gb boards.

It has been a few years since I tried out target mode with a 4Gb board, but
keep an eye out for that once you get it running.

Ken
-- 
Kenneth Merry
ken@FreeBSD.ORG



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140723042258.GA15089>