emlxs_sli3.c (8f23e9fa) emlxs_sli3.c (a3170057)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at

--- 8 unchanged lines hidden (view full) ---

17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22/*
23 * Copyright (c) 2004-2012 Emulex. All rights reserved.
24 * Use is subject to license terms.
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at

--- 8 unchanged lines hidden (view full) ---

17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22/*
23 * Copyright (c) 2004-2012 Emulex. All rights reserved.
24 * Use is subject to license terms.
25 * Copyright 2020 RackTop Systems, Inc.
25 */
26
27#include <emlxs.h>
28
29/* Required for EMLXS_CONTEXT in EMLXS_MSGF calls */
30EMLXS_MSG_DEF(EMLXS_SLI3_C);
31
32static void emlxs_sli3_issue_iocb(emlxs_hba_t *hba, RING *rp, IOCBQ *iocbq);

--- 271 unchanged lines hidden (view full) ---

304
305 rval = EIO;
306 goto failed;
307 }
308#endif /* FMA_SUPPORT */
309
310 /* Check for PEGASUS (This is a special case) */
311 /* We need to check for dual channel adapter */
26 */
27
28#include <emlxs.h>
29
30/* Required for EMLXS_CONTEXT in EMLXS_MSGF calls */
31EMLXS_MSG_DEF(EMLXS_SLI3_C);
32
33static void emlxs_sli3_issue_iocb(emlxs_hba_t *hba, RING *rp, IOCBQ *iocbq);

--- 271 unchanged lines hidden (view full) ---

305
306 rval = EIO;
307 goto failed;
308 }
309#endif /* FMA_SUPPORT */
310
311 /* Check for PEGASUS (This is a special case) */
312 /* We need to check for dual channel adapter */
312 if (hba->model_info.device_id == PCI_DEVICE_ID_PEGASUS) {
313 if (hba->model_info.vendor_id == PCI_VENDOR_ID_EMULEX &&
314 hba->model_info.device_id == PCI_DEVICE_ID_PEGASUS) {
313 /* Try to determine if this is a DC adapter */
314 if (emlxs_get_max_sram(hba, &MaxRbusSize, &MaxIbusSize) == 0) {
315 if (MaxRbusSize == REDUCED_SRAM_CFG) {
316 /* LP9802DC */
317 for (i = 1; i < emlxs_pci_model_count; i++) {
318 if (emlxs_pci_model[i].id == LP9802DC) {
319 bcopy(&emlxs_pci_model[i],
320 &hba->model_info,

--- 358 unchanged lines hidden (view full) ---

679
680 /*
681 * Since the adapter model may have changed with the vpd data
682 * lets double check if adapter is not supported
683 */
684 if (hba->model_info.flags & EMLXS_NOT_SUPPORTED) {
685 EMLXS_MSGF(EMLXS_CONTEXT, &emlxs_init_failed_msg,
686 "Unsupported adapter found. "
315 /* Try to determine if this is a DC adapter */
316 if (emlxs_get_max_sram(hba, &MaxRbusSize, &MaxIbusSize) == 0) {
317 if (MaxRbusSize == REDUCED_SRAM_CFG) {
318 /* LP9802DC */
319 for (i = 1; i < emlxs_pci_model_count; i++) {
320 if (emlxs_pci_model[i].id == LP9802DC) {
321 bcopy(&emlxs_pci_model[i],
322 &hba->model_info,

--- 358 unchanged lines hidden (view full) ---

681
682 /*
683 * Since the adapter model may have changed with the vpd data
684 * lets double check if adapter is not supported
685 */
686 if (hba->model_info.flags & EMLXS_NOT_SUPPORTED) {
687 EMLXS_MSGF(EMLXS_CONTEXT, &emlxs_init_failed_msg,
688 "Unsupported adapter found. "
687 "Id:%d Device id:0x%x SSDID:0x%x Model:%s",
688 hba->model_info.id, hba->model_info.device_id,
689 hba->model_info.ssdid, hba->model_info.model);
689 "Id:%d Vendor id:0x%x Device id:0x%x SSDID:0x%x "
690 "Model:%s", hba->model_info.id, hba->model_info.vendor_id,
691 hba->model_info.device_id, hba->model_info.ssdid,
692 hba->model_info.model);
690
691 rval = EIO;
692 goto failed;
693 }
694
695 /* Read the adapter's wakeup parms */
696 (void) emlxs_read_wakeup_parms(hba, &hba->wakeup_parms, 1);
697 emlxs_decode_version(hba->wakeup_parms.u0.boot_bios_wd[0],

--- 1092 unchanged lines hidden (view full) ---

1790 MBUF_INFO *buf_info;
1791 MBUF_INFO bufinfo;
1792
1793 buf_info = &bufinfo;
1794
1795 bzero(buf_info, sizeof (MBUF_INFO));
1796 buf_info->size = SLI_SLIM2_SIZE;
1797 buf_info->flags =
693
694 rval = EIO;
695 goto failed;
696 }
697
698 /* Read the adapter's wakeup parms */
699 (void) emlxs_read_wakeup_parms(hba, &hba->wakeup_parms, 1);
700 emlxs_decode_version(hba->wakeup_parms.u0.boot_bios_wd[0],

--- 1092 unchanged lines hidden (view full) ---

1793 MBUF_INFO *buf_info;
1794 MBUF_INFO bufinfo;
1795
1796 buf_info = &bufinfo;
1797
1798 bzero(buf_info, sizeof (MBUF_INFO));
1799 buf_info->size = SLI_SLIM2_SIZE;
1800 buf_info->flags =
1798 FC_MBUF_DMA | FC_MBUF_SNGLSG | FC_MBUF_DMA32;
1801 FC_MBUF_DMA | FC_MBUF_SNGLSG;
1799 buf_info->align = ddi_ptob(dip, 1L);
1800
1801 (void) emlxs_mem_alloc(hba, buf_info);
1802
1803 if (buf_info->virt == NULL) {
1804 goto failed;
1805 }
1806

--- 5320 unchanged lines hidden ---
1802 buf_info->align = ddi_ptob(dip, 1L);
1803
1804 (void) emlxs_mem_alloc(hba, buf_info);
1805
1806 if (buf_info->virt == NULL) {
1807 goto failed;
1808 }
1809

--- 5320 unchanged lines hidden ---