Lines Matching refs:circularQ
1272 int pm8001_mpi_msg_free_get(struct inbound_queue_table *circularQ, in pm8001_mpi_msg_free_get() argument
1286 consumer_index = pm8001_read_32(circularQ->ci_virt); in pm8001_mpi_msg_free_get()
1287 circularQ->consumer_index = cpu_to_le32(consumer_index); in pm8001_mpi_msg_free_get()
1288 if (((circularQ->producer_idx + bcCount) % PM8001_MPI_QUEUE) == in pm8001_mpi_msg_free_get()
1289 le32_to_cpu(circularQ->consumer_index)) { in pm8001_mpi_msg_free_get()
1294 offset = circularQ->producer_idx * messageSize; in pm8001_mpi_msg_free_get()
1296 circularQ->producer_idx = (circularQ->producer_idx + bcCount) in pm8001_mpi_msg_free_get()
1300 msgHeader = (struct mpi_msg_hdr *)(circularQ->base_virt + offset); in pm8001_mpi_msg_free_get()
1316 struct inbound_queue_table *circularQ, in pm8001_mpi_build_cmd() argument
1323 int q_index = circularQ - pm8001_ha->inbnd_q_tbl; in pm8001_mpi_build_cmd()
1329 spin_lock_irqsave(&circularQ->iq_lock, flags); in pm8001_mpi_build_cmd()
1330 rv = pm8001_mpi_msg_free_get(circularQ, pm8001_ha->iomb_size, in pm8001_mpi_build_cmd()
1352 pm8001_cw32(pm8001_ha, circularQ->pi_pci_bar, in pm8001_mpi_build_cmd()
1353 circularQ->pi_offset, circularQ->producer_idx); in pm8001_mpi_build_cmd()
1356 responseQueue, opCode, circularQ->producer_idx, in pm8001_mpi_build_cmd()
1357 circularQ->consumer_index); in pm8001_mpi_build_cmd()
1359 spin_unlock_irqrestore(&circularQ->iq_lock, flags); in pm8001_mpi_build_cmd()
1364 struct outbound_queue_table *circularQ, u8 bc) in pm8001_mpi_msg_free_set() argument
1371 pOutBoundMsgHeader = (struct mpi_msg_hdr *)(circularQ->base_virt + in pm8001_mpi_msg_free_set()
1372 circularQ->consumer_idx * pm8001_ha->iomb_size); in pm8001_mpi_msg_free_set()
1376 circularQ->consumer_idx, msgHeader); in pm8001_mpi_msg_free_set()
1379 producer_index = pm8001_read_32(circularQ->pi_virt); in pm8001_mpi_msg_free_set()
1380 circularQ->producer_index = cpu_to_le32(producer_index); in pm8001_mpi_msg_free_set()
1383 circularQ->consumer_idx, in pm8001_mpi_msg_free_set()
1384 circularQ->producer_index, msgHeader); in pm8001_mpi_msg_free_set()
1388 circularQ->consumer_idx = (circularQ->consumer_idx + bc) in pm8001_mpi_msg_free_set()
1391 pm8001_cw32(pm8001_ha, circularQ->ci_pci_bar, circularQ->ci_offset, in pm8001_mpi_msg_free_set()
1392 circularQ->consumer_idx); in pm8001_mpi_msg_free_set()
1394 producer_index = pm8001_read_32(circularQ->pi_virt); in pm8001_mpi_msg_free_set()
1395 circularQ->producer_index = cpu_to_le32(producer_index); in pm8001_mpi_msg_free_set()
1397 circularQ->consumer_idx, circularQ->producer_index); in pm8001_mpi_msg_free_set()
1410 struct outbound_queue_table *circularQ, in pm8001_mpi_msg_consume() argument
1418 if (le32_to_cpu(circularQ->producer_index) in pm8001_mpi_msg_consume()
1419 != circularQ->consumer_idx) { in pm8001_mpi_msg_consume()
1422 (circularQ->base_virt + in pm8001_mpi_msg_consume()
1423 circularQ->consumer_idx * pm8001_ha->iomb_size); in pm8001_mpi_msg_consume()
1429 msgHeader_tmp, circularQ->consumer_idx, in pm8001_mpi_msg_consume()
1430 circularQ->producer_index); in pm8001_mpi_msg_consume()
1441 circularQ->consumer_idx, in pm8001_mpi_msg_consume()
1442 circularQ->producer_index, in pm8001_mpi_msg_consume()
1446 circularQ->consumer_idx = in pm8001_mpi_msg_consume()
1447 (circularQ->consumer_idx + in pm8001_mpi_msg_consume()
1455 circularQ->ci_pci_bar, in pm8001_mpi_msg_consume()
1456 circularQ->ci_offset, in pm8001_mpi_msg_consume()
1457 circularQ->consumer_idx); in pm8001_mpi_msg_consume()
1460 circularQ->consumer_idx = in pm8001_mpi_msg_consume()
1461 (circularQ->consumer_idx + in pm8001_mpi_msg_consume()
1467 pm8001_cw32(pm8001_ha, circularQ->ci_pci_bar, in pm8001_mpi_msg_consume()
1468 circularQ->ci_offset, in pm8001_mpi_msg_consume()
1469 circularQ->consumer_idx); in pm8001_mpi_msg_consume()
1474 void *pi_virt = circularQ->pi_virt; in pm8001_mpi_msg_consume()
1483 circularQ->producer_index = cpu_to_le32(producer_index); in pm8001_mpi_msg_consume()
1485 } while (le32_to_cpu(circularQ->producer_index) != in pm8001_mpi_msg_consume()
1486 circularQ->consumer_idx); in pm8001_mpi_msg_consume()
1704 struct inbound_queue_table *circularQ; in pm8001_send_abort_all() local
1733 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_send_abort_all()
1740 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &task_abort, in pm8001_send_abort_all()
1759 struct inbound_queue_table *circularQ; in pm8001_send_read_log() local
1800 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_send_read_log()
1815 res = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &sata_cmd, in pm8001_send_read_log()
3268 struct inbound_queue_table *circularQ; in pm8001_hw_event_ack_req() local
3271 circularQ = &pm8001_ha->inbnd_q_tbl[Qnum]; in pm8001_hw_event_ack_req()
3277 pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_hw_event_ack_req()
4024 struct outbound_queue_table *circularQ; in process_oq() local
4031 circularQ = &pm8001_ha->outbnd_q_tbl[vec]; in process_oq()
4033 ret = pm8001_mpi_msg_consume(pm8001_ha, circularQ, &pMsg1, &bc); in process_oq()
4039 circularQ, bc); in process_oq()
4043 circularQ->producer_index = in process_oq()
4044 cpu_to_le32(pm8001_read_32(circularQ->pi_virt)); in process_oq()
4045 if (le32_to_cpu(circularQ->producer_index) == in process_oq()
4046 circularQ->consumer_idx) in process_oq()
4100 struct inbound_queue_table *circularQ; in pm8001_chip_smp_req() local
4126 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_smp_req()
4137 rc = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, in pm8001_chip_smp_req()
4168 struct inbound_queue_table *circularQ; in pm8001_chip_ssp_io_req() local
4184 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_ssp_io_req()
4205 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &ssp_cmd, in pm8001_chip_ssp_io_req()
4223 struct inbound_queue_table *circularQ; in pm8001_chip_sata_req() local
4227 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_sata_req()
4314 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &sata_cmd, in pm8001_chip_sata_req()
4328 struct inbound_queue_table *circularQ; in pm8001_chip_phy_start_req() local
4332 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_phy_start_req()
4349 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opcode, &payload, in pm8001_chip_phy_start_req()
4363 struct inbound_queue_table *circularQ; in pm8001_chip_phy_stop_req() local
4367 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_phy_stop_req()
4371 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opcode, &payload, in pm8001_chip_phy_stop_req()
4385 struct inbound_queue_table *circularQ; in pm8001_chip_reg_dev_req() local
4394 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_reg_dev_req()
4431 rc = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_chip_reg_dev_req()
4448 struct inbound_queue_table *circularQ; in pm8001_chip_dereg_dev_req() local
4450 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_dereg_dev_req()
4456 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_chip_dereg_dev_req()
4471 struct inbound_queue_table *circularQ; in pm8001_chip_phy_ctl_req() local
4475 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_phy_ctl_req()
4479 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_chip_phy_ctl_req()
4519 struct inbound_queue_table *circularQ; in send_task_abort() local
4521 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in send_task_abort()
4533 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &task_abort, in send_task_abort()
4575 struct inbound_queue_table *circularQ; in pm8001_chip_ssp_tm_req() local
4587 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_ssp_tm_req()
4588 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &sspTMCmd, in pm8001_chip_ssp_tm_req()
4601 struct inbound_queue_table *circularQ; in pm8001_chip_get_nvmd_req() local
4612 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_get_nvmd_req()
4679 rc = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &nvmd_req, in pm8001_chip_get_nvmd_req()
4696 struct inbound_queue_table *circularQ; in pm8001_chip_set_nvmd_req() local
4705 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_set_nvmd_req()
4764 rc = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &nvmd_req, in pm8001_chip_set_nvmd_req()
4785 struct inbound_queue_table *circularQ; in pm8001_chip_fw_flash_update_build() local
4790 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_fw_flash_update_build()
4801 ret = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_chip_fw_flash_update_build()
4939 struct inbound_queue_table *circularQ; in pm8001_chip_set_dev_state_req() local
4951 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_set_dev_state_req()
4955 rc = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_chip_set_dev_state_req()
4968 struct inbound_queue_table *circularQ; in pm8001_chip_sas_re_initialization() local
4979 circularQ = &pm8001_ha->inbnd_q_tbl[0]; in pm8001_chip_sas_re_initialization()
4984 rc = pm8001_mpi_build_cmd(pm8001_ha, circularQ, opc, &payload, in pm8001_chip_sas_re_initialization()