svn commit: r290781 - stable/10/sys/dev/isp
Alexander Motin
mav at FreeBSD.org
Fri Nov 13 19:34:43 UTC 2015
Author: mav
Date: Fri Nov 13 19:34:42 2015
New Revision: 290781
URL: https://svnweb.freebsd.org/changeset/base/290781
Log:
MFC r289622: Zero mbox[1] for INIT_FIRMWARE to fix version 7.3 firmware.
While there, add new fields to isp_icb_2400_t structure.
Modified:
stable/10/sys/dev/isp/isp.c
stable/10/sys/dev/isp/ispmbox.h
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/dev/isp/isp.c
==============================================================================
--- stable/10/sys/dev/isp/isp.c Fri Nov 13 19:33:13 2015 (r290780)
+++ stable/10/sys/dev/isp/isp.c Fri Nov 13 19:34:42 2015 (r290781)
@@ -1954,6 +1954,7 @@ isp_fibre_init(ispsoftc_t *isp)
* Init the firmware
*/
MBSINIT(&mbs, MBOX_INIT_FIRMWARE, MBLOGALL, 30000000);
+ mbs.param[1] = 0;
mbs.param[2] = DMA_WD1(fcp->isp_scdma);
mbs.param[3] = DMA_WD0(fcp->isp_scdma);
mbs.param[6] = DMA_WD3(fcp->isp_scdma);
@@ -2253,6 +2254,7 @@ isp_fibre_init_2400(ispsoftc_t *isp)
} else {
mbs.param[0] = MBOX_INIT_FIRMWARE;
}
+ mbs.param[1] = 0;
mbs.param[2] = DMA_WD1(fcp->isp_scdma);
mbs.param[3] = DMA_WD0(fcp->isp_scdma);
mbs.param[6] = DMA_WD3(fcp->isp_scdma);
@@ -7108,7 +7110,7 @@ static const uint32_t mbpfc[] = {
ISP_FC_OPMAP(0x00, 0x00), /* 0x45: */
ISP_FC_OPMAP(0x00, 0x00), /* 0x46: */
ISP_FC_OPMAP(0xcf, 0x03), /* 0x47: GET PORT_DATABASE ENHANCED */
- ISP_FC_OPMAP(0xcd, 0x01), /* 0x48: MBOX_INIT_FIRMWARE_MULTI_ID */
+ ISP_FC_OPMAP(0xcf, 0x0f), /* 0x48: MBOX_INIT_FIRMWARE_MULTI_ID */
ISP_FC_OPMAP(0xcd, 0x01), /* 0x49: MBOX_GET_VP_DATABASE */
ISP_FC_OPMAP_HALF(0x2, 0xcd, 0x0, 0x01), /* 0x4a: MBOX_GET_VP_DATABASE_ENTRY */
ISP_FC_OPMAP(0x00, 0x00), /* 0x4b: */
@@ -7132,7 +7134,7 @@ static const uint32_t mbpfc[] = {
ISP_FC_OPMAP(0x07, 0x03), /* 0x5d: MBOX_GET_SET_DATA_RATE */
ISP_FC_OPMAP(0x00, 0x00), /* 0x5e: */
ISP_FC_OPMAP(0x00, 0x00), /* 0x5f: */
- ISP_FC_OPMAP(0xcd, 0x01), /* 0x60: MBOX_INIT_FIRMWARE */
+ ISP_FC_OPMAP(0xcf, 0x0f), /* 0x60: MBOX_INIT_FIRMWARE */
ISP_FC_OPMAP(0x00, 0x00), /* 0x61: */
ISP_FC_OPMAP(0x01, 0x01), /* 0x62: MBOX_INIT_LIP */
ISP_FC_OPMAP(0xcd, 0x03), /* 0x63: MBOX_GET_FC_AL_POSITION_MAP */
Modified: stable/10/sys/dev/isp/ispmbox.h
==============================================================================
--- stable/10/sys/dev/isp/ispmbox.h Fri Nov 13 19:33:13 2015 (r290780)
+++ stable/10/sys/dev/isp/ispmbox.h Fri Nov 13 19:34:42 2015 (r290781)
@@ -1055,8 +1055,10 @@ typedef struct {
uint16_t icb_prqstqlen;
uint16_t icb_rqstaddr[4];
uint16_t icb_respaddr[4];
- uint16_t icb_priaddr[4];
- uint16_t icb_reserved1[4];
+ uint16_t icb_priaddr[4];
+ uint16_t icb_msixresp;
+ uint16_t icb_msixatio;
+ uint16_t icb_reserved1[2];
uint16_t icb_atio_in;
uint16_t icb_atioqlen;
uint16_t icb_atioqaddr[4];
@@ -1065,7 +1067,11 @@ typedef struct {
uint32_t icb_fwoptions1;
uint32_t icb_fwoptions2;
uint32_t icb_fwoptions3;
- uint16_t icb_reserved2[12];
+ uint16_t icb_qos;
+ uint16_t icb_reserved2[3];
+ uint16_t icb_enodemac[3];
+ uint16_t icb_disctime;
+ uint16_t icb_reserved3[4];
} isp_icb_2400_t;
#define RQRSP_ADDR0015 0
More information about the svn-src-stable-10
mailing list