Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*


1877                             acmd->cmd_cdblen));
1878                 }
1879                         break;
1880                 }
1881 
1882         }
1883 
1884         return (cmd);
1885 }
1886 
1887 uint32_t
1888 tbolt_read_fw_status_reg(struct mrsas_instance *instance)
1889 {
1890         return ((uint32_t)RD_OB_SCRATCH_PAD_0(instance));
1891 }
1892 
1893 void
1894 tbolt_issue_cmd(struct mrsas_cmd *cmd, struct mrsas_instance *instance)
1895 {
1896         MRSAS_REQUEST_DESCRIPTOR_UNION *req_desc = cmd->request_desc;
1897         atomic_add_16(&instance->fw_outstanding, 1);
1898 
1899         struct scsi_pkt *pkt;
1900 
1901         con_log(CL_ANN1,
1902             (CE_NOTE, "tbolt_issue_cmd: cmd->[SMID]=0x%X", cmd->SMID));
1903 
1904         con_log(CL_DLEVEL1, (CE_CONT,
1905             " [req desc Words] %" PRIx64 " \n", req_desc->Words));
1906         con_log(CL_DLEVEL1, (CE_CONT,
1907             " [req desc low part] %x \n",
1908             (uint_t)(req_desc->Words & 0xffffffffff)));
1909         con_log(CL_DLEVEL1, (CE_CONT,
1910             " [req desc high part] %x \n", (uint_t)(req_desc->Words >> 32)));
1911         pkt = cmd->pkt;
1912 
1913         if (pkt) {
1914                 con_log(CL_ANN1, (CE_CONT, "%llx :TBOLT issue_cmd_ppc:"
1915                     "ISSUED CMD TO FW : called : cmd:"
1916                     ": %p instance : %p pkt : %p pkt_time : %x\n",
1917                     gethrtime(), (void *)cmd, (void *)instance,




1877                             acmd->cmd_cdblen));
1878                 }
1879                         break;
1880                 }
1881 
1882         }
1883 
1884         return (cmd);
1885 }
1886 
1887 uint32_t
1888 tbolt_read_fw_status_reg(struct mrsas_instance *instance)
1889 {
1890         return ((uint32_t)RD_OB_SCRATCH_PAD_0(instance));
1891 }
1892 
1893 void
1894 tbolt_issue_cmd(struct mrsas_cmd *cmd, struct mrsas_instance *instance)
1895 {
1896         MRSAS_REQUEST_DESCRIPTOR_UNION *req_desc = cmd->request_desc;
1897         atomic_inc_16(&instance->fw_outstanding);
1898 
1899         struct scsi_pkt *pkt;
1900 
1901         con_log(CL_ANN1,
1902             (CE_NOTE, "tbolt_issue_cmd: cmd->[SMID]=0x%X", cmd->SMID));
1903 
1904         con_log(CL_DLEVEL1, (CE_CONT,
1905             " [req desc Words] %" PRIx64 " \n", req_desc->Words));
1906         con_log(CL_DLEVEL1, (CE_CONT,
1907             " [req desc low part] %x \n",
1908             (uint_t)(req_desc->Words & 0xffffffffff)));
1909         con_log(CL_DLEVEL1, (CE_CONT,
1910             " [req desc high part] %x \n", (uint_t)(req_desc->Words >> 32)));
1911         pkt = cmd->pkt;
1912 
1913         if (pkt) {
1914                 con_log(CL_ANN1, (CE_CONT, "%llx :TBOLT issue_cmd_ppc:"
1915                     "ISSUED CMD TO FW : called : cmd:"
1916                     ": %p instance : %p pkt : %p pkt_time : %x\n",
1917                     gethrtime(), (void *)cmd, (void *)instance,