Lines Matching defs:mbs

209 	mbreg_t mbs;
341 MBSINIT(&mbs, MBOX_NO_OP, MBLOGALL, 0);
342 isp_mboxcmd(isp, &mbs);
343 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
344 isp_prt(isp, ISP_LOGERR, "NOP command failed (%x)", mbs.param[0]);
363 MBSINIT(&mbs, MBOX_MAILBOX_REG_TEST, MBLOGALL, 0);
365 mbs.param[i] = patterns[i];
367 isp_mboxcmd(isp, &mbs);
368 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
372 if (mbs.param[i] != patterns[i]) {
373 isp_prt(isp, ISP_LOGERR, "Register Test Failed at Register %d: should have 0x%04x but got 0x%04x", i, patterns[i], mbs.param[i]);
534 MBSINIT(&mbs, MBOX_VERIFY_CHECKSUM, MBLOGNONE, 0);
535 mbs.param[1] = code_org >> 16;
536 mbs.param[2] = code_org;
537 isp_mboxcmd(isp, &mbs);
538 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
540 (mbs.param[2] << 16 | mbs.param[1]));
546 MBSINIT(&mbs, MBOX_LOAD_FLASH_FIRMWARE, MBLOGALL, 5000000);
547 isp_mboxcmd(isp, &mbs);
548 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
560 MBSINIT(&mbs, MBOX_EXEC_FIRMWARE, MBLOGALL, 5000000);
561 mbs.param[1] = code_org >> 16;
562 mbs.param[2] = code_org;
564 mbs.param[3] = loaded_fw ? 0 : 1;
565 mbs.param[4] = 0;
567 mbs.param[4] |= 0x08; /* NVME_ENABLE_FLAG */
568 mbs.param[11] = 0;
569 isp_mboxcmd(isp, &mbs);
570 if (mbs.param[0] != MBOX_COMMAND_COMPLETE)
572 fcp->fw_ability_mask = (mbs.param[3] << 16) | mbs.param[2];
576 fcp->max_supported_speed = mbs.param[2] & (0x1 | 0x2);
582 if (IS_28XX(isp) && (mbs.param[5] & 0x400)) {
591 MBSINIT(&mbs, MBOX_ABOUT_FIRMWARE, MBLOGALL, 5000000);
592 isp_mboxcmd(isp, &mbs);
593 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
597 isp->isp_fwrev[0] = mbs.param[1];
598 isp->isp_fwrev[1] = mbs.param[2];
599 isp->isp_fwrev[2] = mbs.param[3];
600 isp->isp_fwattr = mbs.param[6];
601 isp->isp_fwattr_h = mbs.param[15];
603 isp->isp_fwattr_ext[0] = mbs.param[16];
604 isp->isp_fwattr_ext[1] = mbs.param[17];
763 MBSINIT(&mbs, MBOX_GET_RESOURCE_COUNT, MBLOGALL, 0);
764 isp_mboxcmd(isp, &mbs);
765 if (mbs.param[0] != MBOX_COMMAND_COMPLETE)
767 isp->isp_maxcmds = MIN(mbs.param[3], ISP_HANDLE_MAX - ISP_HANDLE_RESERVE);
826 mbreg_t mbs;
829 MBSINIT(&mbs, MBOX_STOP_FIRMWARE, MBLOGALL, 500000);
830 mbs.param[1] = 0;
831 mbs.param[2] = 0;
832 mbs.param[3] = 0;
833 mbs.param[4] = 0;
834 mbs.param[5] = 0;
835 mbs.param[6] = 0;
836 mbs.param[7] = 0;
837 mbs.param[8] = 0;
838 isp_mboxcmd(isp, &mbs);
839 return (mbs.param[0] == MBOX_COMMAND_COMPLETE ? 0 : mbs.param[0]);
866 mbreg_t mbs;
894 MBSINIT(&mbs, MBOX_SET_FIRMWARE_OPTIONS, MBLOGALL, 0);
895 mbs.param[1] = 1;
896 isp_mboxcmd(isp, &mbs);
897 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
1211 MBSINIT(&mbs, 0, MBLOGALL, 30000000);
1213 mbs.param[0] = MBOX_INIT_FIRMWARE_MULTI_ID;
1215 mbs.param[0] = MBOX_INIT_FIRMWARE;
1217 mbs.param[1] = 0;
1218 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
1219 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
1220 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
1221 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
1224 isp_mboxcmd(isp, &mbs);
1227 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
1512 mbreg_t mbs;
1517 MBSINIT(&mbs, MBOX_GET_PORT_DB,
1519 mbs.ibits = (1 << 9)|(1 << 10);
1520 mbs.param[1] = id;
1521 mbs.param[2] = DMA_WD1(isp->isp_iocb_dma);
1522 mbs.param[3] = DMA_WD0(isp->isp_iocb_dma);
1523 mbs.param[6] = DMA_WD3(isp->isp_iocb_dma);
1524 mbs.param[7] = DMA_WD2(isp->isp_iocb_dma);
1525 mbs.param[9] = chan;
1528 isp_mboxcmd(isp, &mbs);
1529 if (mbs.param[0] != MBOX_COMMAND_COMPLETE)
1530 return (mbs.param[0] | (mbs.param[1] << 16));
1554 mbs.param[0] = MBOX_NOT_LOGGED_IN;
1555 return (mbs.param[0]);
1564 mbreg_t mbs;
1569 MBSINIT(&mbs, MBOX_GET_ID_LIST, MBLOGALL, 250000);
1570 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
1571 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
1572 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
1573 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
1574 mbs.param[8] = ISP_FC_SCRLEN;
1575 mbs.param[9] = chan;
1581 isp_mboxcmd(isp, &mbs);
1582 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
1584 return (mbs.param[0] | (mbs.param[1] << 16));
1588 for (i = 0, j = 0; i < mbs.param[1] && j < *num; i++) {
1623 mbreg_t mbs;
1625 MBSINIT(&mbs, MBOX_GET_PORT_NAME,
1627 mbs.param[1] = nphdl;
1629 mbs.param[10] = 1;
1630 mbs.param[9] = chan;
1631 isp_mboxcmd(isp, &mbs);
1632 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
1635 wwn = (((uint64_t)(mbs.param[2] >> 8)) << 56) |
1636 (((uint64_t)(mbs.param[2] & 0xff))<< 48) |
1637 (((uint64_t)(mbs.param[3] >> 8)) << 40) |
1638 (((uint64_t)(mbs.param[3] & 0xff))<< 32) |
1639 (((uint64_t)(mbs.param[6] >> 8)) << 24) |
1640 (((uint64_t)(mbs.param[6] & 0xff))<< 16) |
1641 (((uint64_t)(mbs.param[7] >> 8)) << 8) |
1642 (((uint64_t)(mbs.param[7] & 0xff)));
1653 mbreg_t mbs;
1694 MBSINIT(&mbs, MBOX_GET_LOOP_ID, MBLOGALL, 0);
1695 mbs.param[9] = chan;
1696 isp_mboxcmd(isp, &mbs);
1697 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {
1701 topo = (int) mbs.param[6];
1705 fcp->isp_portid = mbs.param[2] | (mbs.param[3] << 16);
1708 fcp->isp_loopid = mbs.param[1] & 0xff;
1734 fcp->isp_fabric_params = mbs.param[7];
1759 MBSINIT(&mbs, MBOX_GET_SET_DATA_RATE, MBLOGALL, 3000000);
1760 mbs.param[1] = MBGSD_GET_RATE;
1761 /* mbs.param[2] undefined if we're just getting rate */
1762 isp_mboxcmd(isp, &mbs);
1763 if (mbs.param[0] == MBOX_COMMAND_COMPLETE) {
1764 if (mbs.param[1] == MBGSD_10GB)
1766 else if (mbs.param[1] == MBGSD_64GB)
1768 else if (mbs.param[1] == MBGSD_32GB)
1770 else if (mbs.param[1] == MBGSD_16GB)
1772 else if (mbs.param[1] == MBGSD_8GB)
1774 else if (mbs.param[1] == MBGSD_4GB)
1776 else if (mbs.param[1] == MBGSD_2GB)
1778 else if (mbs.param[1] == MBGSD_1GB)
4447 mbreg_t mbs;
4449 MBSINIT(&mbs, MBOX_GET_FW_STATE, MBLOGALL, 0);
4450 isp_mboxcmd(isp, &mbs);
4451 if (mbs.param[0] == MBOX_COMMAND_COMPLETE)
4452 return (mbs.param[1]);
5165 mbreg_t mbs;
5169 MBSINIT(&mbs, MBOX_LOAD_RISC_RAM, MBLOGALL, 0);
5170 mbs.param[1] = risc_addr;
5171 mbs.param[2] = DMA_WD1(isp->isp_rquest_dma);
5172 mbs.param[3] = DMA_WD0(isp->isp_rquest_dma);
5173 mbs.param[4] = risc_code_size >> 16;
5174 mbs.param[5] = risc_code_size;
5175 mbs.param[6] = DMA_WD3(isp->isp_rquest_dma);
5176 mbs.param[7] = DMA_WD2(isp->isp_rquest_dma);
5177 mbs.param[8] = risc_addr >> 16;
5181 isp_mboxcmd(isp, &mbs);
5182 if (mbs.param[0] != MBOX_COMMAND_COMPLETE) {