isp_pci.c (238869) | isp_pci.c (239010) |
---|---|
1/*- 2 * Copyright (c) 1997-2008 by Matthew Jacob 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 14 unchanged lines hidden (view full) --- 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 */ 26/* 27 * PCI specific probe and attach routines for Qlogic ISP SCSI adapters. 28 * FreeBSD Version. 29 */ 30#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 1997-2008 by Matthew Jacob 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 14 unchanged lines hidden (view full) --- 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 */ 26/* 27 * PCI specific probe and attach routines for Qlogic ISP SCSI adapters. 28 * FreeBSD Version. 29 */ 30#include <sys/cdefs.h> |
31__FBSDID("$FreeBSD: head/sys/dev/isp/isp_pci.c 238869 2012-07-28 20:06:29Z mjacob $"); | 31__FBSDID("$FreeBSD: head/sys/dev/isp/isp_pci.c 239010 2012-08-03 14:25:35Z mjacob $"); |
32 33#include <sys/param.h> 34#include <sys/systm.h> 35#include <sys/kernel.h> 36#include <sys/module.h> 37#include <sys/linker.h> 38#include <sys/firmware.h> 39#include <sys/bus.h> --- 1437 unchanged lines hidden (view full) --- 1477 segs->ds_addr += ISP_QUEUE_SIZE(RQUEST_QUEUE_LEN(imushp->isp)); 1478 imushp->vbase += ISP_QUEUE_SIZE(RQUEST_QUEUE_LEN(imushp->isp)); 1479 1480 imushp->isp->isp_result_dma = segs->ds_addr; 1481 imushp->isp->isp_result = imushp->vbase; 1482 segs->ds_addr += ISP_QUEUE_SIZE(RESULT_QUEUE_LEN(imushp->isp)); 1483 imushp->vbase += ISP_QUEUE_SIZE(RESULT_QUEUE_LEN(imushp->isp)); 1484 | 32 33#include <sys/param.h> 34#include <sys/systm.h> 35#include <sys/kernel.h> 36#include <sys/module.h> 37#include <sys/linker.h> 38#include <sys/firmware.h> 39#include <sys/bus.h> --- 1437 unchanged lines hidden (view full) --- 1477 segs->ds_addr += ISP_QUEUE_SIZE(RQUEST_QUEUE_LEN(imushp->isp)); 1478 imushp->vbase += ISP_QUEUE_SIZE(RQUEST_QUEUE_LEN(imushp->isp)); 1479 1480 imushp->isp->isp_result_dma = segs->ds_addr; 1481 imushp->isp->isp_result = imushp->vbase; 1482 segs->ds_addr += ISP_QUEUE_SIZE(RESULT_QUEUE_LEN(imushp->isp)); 1483 imushp->vbase += ISP_QUEUE_SIZE(RESULT_QUEUE_LEN(imushp->isp)); 1484 |
1485 imushp->isp->isp_osinfo.ecmd_dma = segs->ds_addr; 1486 imushp->isp->isp_osinfo.ecmd_free = (isp_ecmd_t *)imushp->vbase; 1487 imushp->isp->isp_osinfo.ecmd_base = imushp->isp->isp_osinfo.ecmd_free; 1488 for (ecmd = imushp->isp->isp_osinfo.ecmd_free; ecmd < &imushp->isp->isp_osinfo.ecmd_free[N_XCMDS]; ecmd++) { 1489 if (ecmd == &imushp->isp->isp_osinfo.ecmd_free[N_XCMDS - 1]) { 1490 ecmd->next = NULL; 1491 } else { 1492 ecmd->next = ecmd + 1; 1493 } 1494 } | 1485 if (imushp->isp->isp_type >= ISP_HA_FC_2300) { 1486 imushp->isp->isp_osinfo.ecmd_dma = segs->ds_addr; 1487 imushp->isp->isp_osinfo.ecmd_free = (isp_ecmd_t *)imushp->vbase; 1488 imushp->isp->isp_osinfo.ecmd_base = imushp->isp->isp_osinfo.ecmd_free; 1489 for (ecmd = imushp->isp->isp_osinfo.ecmd_free; ecmd < &imushp->isp->isp_osinfo.ecmd_free[N_XCMDS]; ecmd++) { 1490 if (ecmd == &imushp->isp->isp_osinfo.ecmd_free[N_XCMDS - 1]) { 1491 ecmd->next = NULL; 1492 } else { 1493 ecmd->next = ecmd + 1; 1494 } 1495 } 1496 } |
1495#ifdef ISP_TARGET_MODE 1496 segs->ds_addr += (N_XCMDS * XCMD_SIZE); 1497 imushp->vbase += (N_XCMDS * XCMD_SIZE); 1498 if (IS_24XX(imushp->isp)) { 1499 imushp->isp->isp_atioq_dma = segs->ds_addr; 1500 imushp->isp->isp_atioq = imushp->vbase; 1501 } 1502#endif --- 572 unchanged lines hidden --- | 1497#ifdef ISP_TARGET_MODE 1498 segs->ds_addr += (N_XCMDS * XCMD_SIZE); 1499 imushp->vbase += (N_XCMDS * XCMD_SIZE); 1500 if (IS_24XX(imushp->isp)) { 1501 imushp->isp->isp_atioq_dma = segs->ds_addr; 1502 imushp->isp->isp_atioq = imushp->vbase; 1503 } 1504#endif --- 572 unchanged lines hidden --- |