Lines Matching defs:icbp

1614 	isp_icb_t local, *icbp = &local;
1627 ISP_MEMZERO(icbp, sizeof (*icbp));
1628 icbp->icb_version = ICB_VERSION1;
1629 icbp->icb_fwoptions = fcp->isp_fwoptions;
1642 icbp->icb_fwoptions &= ~ICBOPT_FAIRNESS;
1651 icbp->icb_fwoptions |= ICBOPT_FULL_LOGIN;
1657 icbp->icb_fwoptions |= ICBOPT_PDBCHANGE_AE;
1663 icbp->icb_fwoptions |= ICBOPT_TGT_ENABLE;
1665 icbp->icb_fwoptions &= ~ICBOPT_TGT_ENABLE;
1669 icbp->icb_fwoptions &= ~ICBOPT_INI_DISABLE;
1671 icbp->icb_fwoptions |= ICBOPT_INI_DISABLE;
1674 icbp->icb_maxfrmlen = DEFAULT_FRAMESIZE(isp);
1675 if (icbp->icb_maxfrmlen < ICB_MIN_FRMLEN || icbp->icb_maxfrmlen > ICB_MAX_FRMLEN) {
1677 icbp->icb_maxfrmlen = ICB_DFLT_FRMLEN;
1679 icbp->icb_maxalloc = fcp->isp_maxalloc;
1680 if (icbp->icb_maxalloc < 1) {
1682 icbp->icb_maxalloc = 16;
1684 icbp->icb_execthrottle = DEFAULT_EXEC_THROTTLE(isp);
1685 if (icbp->icb_execthrottle < 1) {
1687 icbp->icb_execthrottle = ICB_DFLT_THROTTLE;
1689 icbp->icb_retry_delay = fcp->isp_retry_delay;
1690 icbp->icb_retry_count = fcp->isp_retry_count;
1691 icbp->icb_hardaddr = fcp->isp_loopid;
1693 if (icbp->icb_hardaddr >= LOCAL_LOOP_LIM) {
1694 icbp->icb_hardaddr = 0;
1703 icbp->icb_fwoptions |= ICBOPT_HARD_ADDRESS;
1717 icbp->icb_fwoptions &= ~ICBOPT_FAST_POST;
1719 icbp->icb_fwoptions |= ICBOPT_EXTENDED;
1721 icbp->icb_xfwoptions = fcp->isp_xfwoptions;
1725 icbp->icb_xfwoptions &= ~ICBXOPT_FCTAPE;
1728 icbp->icb_xfwoptions |= ICBXOPT_FCTAPE;
1730 if (icbp->icb_xfwoptions & ICBXOPT_FCTAPE) {
1731 icbp->icb_fwoptions &= ~ICBOPT_FULL_LOGIN; /* per documents */
1732 icbp->icb_xfwoptions |= ICBXOPT_FCTAPE_CCQ|ICBXOPT_FCTAPE_CONFIRM;
1738 icbp->icb_xfwoptions &= ~ICBXOPT_FCTAPE;
1747 icbp->icb_xfwoptions &= ~ICBXOPT_TOPO_MASK;
1748 icbp->icb_xfwoptions |= ICBXOPT_PTP_2_LOOP;
1751 icbp->icb_xfwoptions &= ~ICBXOPT_TOPO_MASK;
1752 icbp->icb_xfwoptions |= ICBXOPT_PTP_ONLY;
1755 icbp->icb_xfwoptions &= ~ICBXOPT_TOPO_MASK;
1756 icbp->icb_xfwoptions |= ICBXOPT_LOOP_ONLY;
1762 switch (icbp->icb_xfwoptions & ICBXOPT_TOPO_MASK) {
1769 icbp->icb_xfwoptions &= ~ICBXOPT_TOPO_MASK;
1770 icbp->icb_xfwoptions |= ICBXOPT_LOOP_2_PTP;
1783 icbp->icb_xfwoptions &= ~ICBXOPT_RIO_16BIT;
1784 icbp->icb_fwoptions &= ~ICBOPT_FAST_POST;
1792 icbp->icb_fwoptions &= ~ICBOPT_FAST_POST;
1794 icbp->icb_xfwoptions |= ICBXOPT_ZIO;
1795 icbp->icb_idelaytimer = 10;
1797 icbp->icb_zfwoptions = fcp->isp_zfwoptions;
1799 icbp->icb_zfwoptions &= ~ICBZOPT_RATE_MASK;
1800 icbp->icb_zfwoptions |= ICBZOPT_RATE_ONEGB;
1802 icbp->icb_zfwoptions &= ~ICBZOPT_RATE_MASK;
1803 icbp->icb_zfwoptions |= ICBZOPT_RATE_TWOGB;
1805 switch (icbp->icb_zfwoptions & ICBZOPT_RATE_MASK) {
1811 icbp->icb_zfwoptions &= ~ICBZOPT_RATE_MASK;
1812 icbp->icb_zfwoptions |= ICBZOPT_RATE_AUTO;
1842 icbp->icb_logintime = ICB_LOGIN_TOV;
1845 if (ISP_FW_NEWER_THAN(isp, 3, 25, 0) && (icbp->icb_fwoptions & ICBOPT_TGT_ENABLE)) {
1846 icbp->icb_lunenables = 0xffff;
1847 icbp->icb_ccnt = DFLT_CMND_CNT;
1848 icbp->icb_icnt = DFLT_INOT_CNT;
1849 icbp->icb_lunetimeout = ICB_LUN_ENABLE_TOV;
1853 icbp->icb_fwoptions |= ICBOPT_BOTH_WWNS;
1854 MAKE_NODE_NAME_FROM_WWN(icbp->icb_nodename, fcp->isp_wwnn);
1855 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
1863 icbp->icb_fwoptions &= ~ICBOPT_BOTH_WWNS;
1864 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
1873 icbp->icb_rqstqlen = RQUEST_QUEUE_LEN(isp);
1874 if (icbp->icb_rqstqlen < 1) {
1877 icbp->icb_rsltqlen = RESULT_QUEUE_LEN(isp);
1878 if (icbp->icb_rsltqlen < 1) {
1881 icbp->icb_rqstaddr[RQRSP_ADDR0015] = DMA_WD0(isp->isp_rquest_dma);
1882 icbp->icb_rqstaddr[RQRSP_ADDR1631] = DMA_WD1(isp->isp_rquest_dma);
1883 icbp->icb_rqstaddr[RQRSP_ADDR3247] = DMA_WD2(isp->isp_rquest_dma);
1884 icbp->icb_rqstaddr[RQRSP_ADDR4863] = DMA_WD3(isp->isp_rquest_dma);
1885 icbp->icb_respaddr[RQRSP_ADDR0015] = DMA_WD0(isp->isp_result_dma);
1886 icbp->icb_respaddr[RQRSP_ADDR1631] = DMA_WD1(isp->isp_result_dma);
1887 icbp->icb_respaddr[RQRSP_ADDR3247] = DMA_WD2(isp->isp_result_dma);
1888 icbp->icb_respaddr[RQRSP_ADDR4863] = DMA_WD3(isp->isp_result_dma);
1895 icbp->icb_fwoptions, icbp->icb_xfwoptions, icbp->icb_zfwoptions);
1897 isp_put_icb(isp, icbp, (isp_icb_t *)fcp->isp_scratch);
1911 MEMORYBARRIER(isp, SYNC_SFORDEV, 0, sizeof (*icbp), 0);
1915 isp_print_bytes(isp, "isp_fibre_init", sizeof (*icbp), icbp);
1932 isp_icb_2400_t local, *icbp = &local;
1967 ISP_MEMZERO(icbp, sizeof (*icbp));
1968 icbp->icb_fwoptions1 = fcp->isp_fwoptions;
1970 icbp->icb_fwoptions1 |= ICB2400_OPT1_TGT_ENABLE;
1972 icbp->icb_fwoptions1 &= ~ICB2400_OPT1_TGT_ENABLE;
1976 icbp->icb_fwoptions1 &= ~ICB2400_OPT1_INI_DISABLE;
1978 icbp->icb_fwoptions1 |= ICB2400_OPT1_INI_DISABLE;
1981 icbp->icb_version = ICB_VERSION1;
1982 icbp->icb_maxfrmlen = DEFAULT_FRAMESIZE(isp);
1983 if (icbp->icb_maxfrmlen < ICB_MIN_FRMLEN || icbp->icb_maxfrmlen > ICB_MAX_FRMLEN) {
1985 icbp->icb_maxfrmlen = ICB_DFLT_FRMLEN;
1988 icbp->icb_execthrottle = DEFAULT_EXEC_THROTTLE(isp);
1989 if (icbp->icb_execthrottle < 1) {
1991 icbp->icb_execthrottle = ICB_DFLT_THROTTLE;
1997 if (icbp->icb_fwoptions1 & ICB2400_OPT1_TGT_ENABLE) {
1998 icbp->icb_xchgcnt = isp->isp_maxcmds;
1999 if ((icbp->icb_fwoptions1 & ICB2400_OPT1_INI_DISABLE) == 0)
2000 icbp->icb_xchgcnt >>= 1;
2005 icbp->icb_hardaddr = fcp->isp_loopid;
2006 if (icbp->icb_hardaddr >= LOCAL_LOOP_LIM) {
2007 icbp->icb_hardaddr = 0;
2012 icbp->icb_fwoptions1 |= ICB2400_OPT1_HARD_ADDRESS;
2014 icbp->icb_fwoptions2 = fcp->isp_xfwoptions;
2016 icbp->icb_fwoptions2 &= ~ICB2400_OPT2_FCTAPE;
2019 icbp->icb_fwoptions2 |= ICB2400_OPT2_FCTAPE;
2022 if (icbp->icb_fwoptions2 & ICB2400_OPT2_FCTAPE) {
2030 icbp->icb_fwoptions2 &= ~ICB2400_OPT2_TOPO_MASK;
2031 icbp->icb_fwoptions2 |= ICB2400_OPT2_PTP_ONLY;
2034 icbp->icb_fwoptions2 &= ~ICB2400_OPT2_TOPO_MASK;
2035 icbp->icb_fwoptions2 |= ICB2400_OPT2_LOOP_ONLY;
2039 icbp->icb_fwoptions2 &= ~ICB2400_OPT2_TOPO_MASK;
2040 icbp->icb_fwoptions2 |= ICB2400_OPT2_LOOP_2_PTP;
2044 switch (icbp->icb_fwoptions2 & ICB2400_OPT2_TIMER_MASK) {
2047 icbp->icb_idelaytimer = 0;
2052 isp_prt(isp, ISP_LOGWARN, "bad value %x in fwopt2 timer field", icbp->icb_fwoptions2 & ICB2400_OPT2_TIMER_MASK);
2053 icbp->icb_fwoptions2 &= ~ICB2400_OPT2_TIMER_MASK;
2057 icbp->icb_fwoptions3 = fcp->isp_zfwoptions;
2058 if ((icbp->icb_fwoptions3 & ICB2400_OPT3_RSPSZ_MASK) == 0) {
2059 icbp->icb_fwoptions3 |= ICB2400_OPT3_RSPSZ_24;
2061 icbp->icb_fwoptions3 &= ~ICB2400_OPT3_RATE_AUTO;
2063 icbp->icb_fwoptions3 |= ICB2400_OPT3_RATE_ONEGB;
2065 icbp->icb_fwoptions3 |= ICB2400_OPT3_RATE_TWOGB;
2067 icbp->icb_fwoptions3 |= ICB2400_OPT3_RATE_FOURGB;
2069 icbp->icb_fwoptions3 |= ICB2400_OPT3_RATE_EIGHTGB;
2071 icbp->icb_fwoptions3 |= ICB2400_OPT3_RATE_AUTO;
2074 icbp->icb_fwoptions3 |= ICB2400_OPT3_SOFTID;
2076 icbp->icb_logintime = ICB_LOGIN_TOV;
2079 icbp->icb_fwoptions1 |= ICB2400_OPT1_BOTH_WWNS;
2080 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
2081 MAKE_NODE_NAME_FROM_WWN(icbp->icb_nodename, fcp->isp_wwnn);
2085 icbp->icb_fwoptions1 &= ~ICB2400_OPT1_BOTH_WWNS;
2086 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
2092 icbp->icb_retry_count = fcp->isp_retry_count;
2094 icbp->icb_rqstqlen = RQUEST_QUEUE_LEN(isp);
2095 if (icbp->icb_rqstqlen < 8) {
2096 isp_prt(isp, ISP_LOGERR, "bad request queue length %d", icbp->icb_rqstqlen);
2099 icbp->icb_rsltqlen = RESULT_QUEUE_LEN(isp);
2100 if (icbp->icb_rsltqlen < 8) {
2102 icbp->icb_rsltqlen);
2105 icbp->icb_rqstaddr[RQRSP_ADDR0015] = DMA_WD0(isp->isp_rquest_dma);
2106 icbp->icb_rqstaddr[RQRSP_ADDR1631] = DMA_WD1(isp->isp_rquest_dma);
2107 icbp->icb_rqstaddr[RQRSP_ADDR3247] = DMA_WD2(isp->isp_rquest_dma);
2108 icbp->icb_rqstaddr[RQRSP_ADDR4863] = DMA_WD3(isp->isp_rquest_dma);
2110 icbp->icb_respaddr[RQRSP_ADDR0015] = DMA_WD0(isp->isp_result_dma);
2111 icbp->icb_respaddr[RQRSP_ADDR1631] = DMA_WD1(isp->isp_result_dma);
2112 icbp->icb_respaddr[RQRSP_ADDR3247] = DMA_WD2(isp->isp_result_dma);
2113 icbp->icb_respaddr[RQRSP_ADDR4863] = DMA_WD3(isp->isp_result_dma);
2117 icbp->icb_atioqlen = RESULT_QUEUE_LEN(isp);
2118 if (icbp->icb_atioqlen < 8) {
2119 isp_prt(isp, ISP_LOGERR, "bad ATIO queue length %d", icbp->icb_atioqlen);
2122 icbp->icb_atioqaddr[RQRSP_ADDR0015] = DMA_WD0(isp->isp_atioq_dma);
2123 icbp->icb_atioqaddr[RQRSP_ADDR1631] = DMA_WD1(isp->isp_atioq_dma);
2124 icbp->icb_atioqaddr[RQRSP_ADDR3247] = DMA_WD2(isp->isp_atioq_dma);
2125 icbp->icb_atioqaddr[RQRSP_ADDR4863] = DMA_WD3(isp->isp_atioq_dma);
2130 isp_prt(isp, ISP_LOGDEBUG0, "isp_fibre_init_2400: fwopt1 0x%x fwopt2 0x%x fwopt3 0x%x", icbp->icb_fwoptions1, icbp->icb_fwoptions2, icbp->icb_fwoptions3);
2137 isp_print_bytes(isp, "isp_fibre_init_2400", sizeof (*icbp), icbp);
2145 isp_put_icb_2400(isp, icbp, fcp->isp_scratch);
2201 MEMORYBARRIER(isp, SYNC_SFORDEV, 0, sizeof (*icbp), 0);