Lines Matching refs:phw
141 static int wait_dsp_ack(struct hpi_hw_obj *phw, int state, int timeout_us);
143 static void send_dsp_command(struct hpi_hw_obj *phw, int cmd);
249 struct hpi_hw_obj *phw = pao->priv; in control_message() local
256 if (hpi_check_control_cache(phw->p_cache, phm, phr)) { in control_message()
273 hpi_cmn_control_cache_sync_to_msg(phw->p_cache, phm, in control_message()
505 struct hpi_hw_obj *phw; in adapter_delete() local
511 phw = pao->priv; in adapter_delete()
516 iowrite32(C6205_HDCR_WARMRESET, phw->prHDCR); in adapter_delete()
529 struct hpi_hw_obj *phw = pao->priv; in create_adapter_obj() local
539 phw->flag_outstream_just_reset[i] = 1; in create_adapter_obj()
542 phw->prHSR = in create_adapter_obj()
545 phw->prHDCR = in create_adapter_obj()
548 phw->prDSPP = in create_adapter_obj()
554 if (hpios_locked_mem_alloc(&phw->h_locked_mem, in create_adapter_obj()
557 phw->p_interface_buffer = NULL; in create_adapter_obj()
558 else if (hpios_locked_mem_get_virt_addr(&phw->h_locked_mem, in create_adapter_obj()
559 (void *)&phw->p_interface_buffer)) in create_adapter_obj()
560 phw->p_interface_buffer = NULL; in create_adapter_obj()
563 phw->p_interface_buffer); in create_adapter_obj()
565 if (phw->p_interface_buffer) { in create_adapter_obj()
566 memset((void *)phw->p_interface_buffer, 0, in create_adapter_obj()
568 phw->p_interface_buffer->dsp_ack = H620_HIF_UNKNOWN; in create_adapter_obj()
581 if (!phw->p_interface_buffer) in create_adapter_obj()
584 interface = phw->p_interface_buffer; in create_adapter_obj()
587 if (!wait_dsp_ack(phw, H620_HIF_RESET, HPI6205_TIMEOUT * 10)) { in create_adapter_obj()
598 err = hpios_locked_mem_alloc(&phw->h_control_cache, in create_adapter_obj()
602 err = hpios_locked_mem_get_virt_addr(&phw-> in create_adapter_obj()
609 phw->p_cache = in create_adapter_obj()
615 if (!phw->p_cache) in create_adapter_obj()
619 err = hpios_locked_mem_get_phys_addr(&phw-> in create_adapter_obj()
628 if (hpios_locked_mem_valid(&phw->h_control_cache)) in create_adapter_obj()
629 hpios_locked_mem_free(&phw->h_control_cache); in create_adapter_obj()
633 send_dsp_command(phw, H620_HIF_IDLE); in create_adapter_obj()
673 if (phw->p_cache) in create_adapter_obj()
674 phw->p_cache->adap_idx = pao->index; in create_adapter_obj()
680 phw->p_interface_buffer->instream_host_buffer_status; in create_adapter_obj()
682 phw->p_interface_buffer->outstream_host_buffer_status; in create_adapter_obj()
693 struct hpi_hw_obj *phw = pao->priv; in delete_adapter_obj() local
696 if (hpios_locked_mem_valid(&phw->h_control_cache)) { in delete_adapter_obj()
697 hpios_locked_mem_free(&phw->h_control_cache); in delete_adapter_obj()
698 hpi_free_control_cache(phw->p_cache); in delete_adapter_obj()
701 if (hpios_locked_mem_valid(&phw->h_locked_mem)) { in delete_adapter_obj()
702 hpios_locked_mem_free(&phw->h_locked_mem); in delete_adapter_obj()
703 phw->p_interface_buffer = NULL; in delete_adapter_obj()
707 if (hpios_locked_mem_valid(&phw->instream_host_buffers[i])) { in delete_adapter_obj()
708 hpios_locked_mem_free(&phw->instream_host_buffers[i]); in delete_adapter_obj()
710 phw->instream_host_buffer_size[i] = 0; in delete_adapter_obj()
714 if (hpios_locked_mem_valid(&phw->outstream_host_buffers[i])) { in delete_adapter_obj()
715 hpios_locked_mem_free(&phw->outstream_host_buffers in delete_adapter_obj()
717 phw->outstream_host_buffer_size[i] = 0; in delete_adapter_obj()
719 kfree(phw); in delete_adapter_obj()
727 struct hpi_hw_obj *phw = pao->priv; in adapter_irq_query_and_clear() local
730 hsr = ioread32(phw->prHSR); in adapter_irq_query_and_clear()
733 iowrite32(C6205_HSR_INTSRC, phw->prHSR); in adapter_irq_query_and_clear()
750 struct hpi_hw_obj *phw = pao->priv; in outstream_host_buffer_allocate() local
751 struct bus_master_interface *interface = phw->p_interface_buffer; in outstream_host_buffer_allocate()
765 phw->outstream_host_buffer_size[phm->obj_index]; in outstream_host_buffer_allocate()
769 if (phw->outstream_host_buffer_size[phm->obj_index] == in outstream_host_buffer_allocate()
775 if (hpios_locked_mem_valid(&phw->outstream_host_buffers[phm-> in outstream_host_buffer_allocate()
777 hpios_locked_mem_free(&phw->outstream_host_buffers in outstream_host_buffer_allocate()
780 err = hpios_locked_mem_alloc(&phw->outstream_host_buffers in outstream_host_buffer_allocate()
786 phw->outstream_host_buffer_size[phm->obj_index] = 0; in outstream_host_buffer_allocate()
791 (&phw->outstream_host_buffers[phm->obj_index], in outstream_host_buffer_allocate()
801 hpios_locked_mem_free(&phw->outstream_host_buffers in outstream_host_buffer_allocate()
803 phw->outstream_host_buffer_size[phm->obj_index] = 0; in outstream_host_buffer_allocate()
824 phw->outstream_host_buffer_size[phm->obj_index] = in outstream_host_buffer_allocate()
838 && hpios_locked_mem_valid(&phw-> in outstream_host_buffer_allocate()
840 hpios_locked_mem_free(&phw->outstream_host_buffers in outstream_host_buffer_allocate()
842 phw->outstream_host_buffer_size[phm->obj_index] = 0; in outstream_host_buffer_allocate()
850 struct hpi_hw_obj *phw = pao->priv; in outstream_host_buffer_get_info() local
851 struct bus_master_interface *interface = phw->p_interface_buffer; in outstream_host_buffer_get_info()
855 if (hpios_locked_mem_valid(&phw->outstream_host_buffers[phm-> in outstream_host_buffer_get_info()
857 if (hpios_locked_mem_get_virt_addr(&phw-> in outstream_host_buffer_get_info()
879 struct hpi_hw_obj *phw = pao->priv; in outstream_host_buffer_free() local
882 if (phw->outstream_host_buffer_size[phm->obj_index]) { in outstream_host_buffer_free()
885 phw->outstream_host_buffer_size[phm->obj_index] = 0; in outstream_host_buffer_free()
891 hpios_locked_mem_free(&phw->outstream_host_buffers in outstream_host_buffer_free()
911 struct hpi_hw_obj *phw = pao->priv; in outstream_write() local
912 struct bus_master_interface *interface = phw->p_interface_buffer; in outstream_write()
916 if (!phw->outstream_host_buffer_size[phm->obj_index]) { in outstream_write()
934 && hpios_locked_mem_valid(&phw->outstream_host_buffers[phm-> in outstream_write()
940 if (hpios_locked_mem_get_virt_addr(&phw-> in outstream_write()
968 if (phw->flag_outstream_just_reset[phm->obj_index]) { in outstream_write()
971 phw->flag_outstream_just_reset[phm->obj_index] = 0; in outstream_write()
985 struct hpi_hw_obj *phw = pao->priv; in outstream_get_info() local
986 struct bus_master_interface *interface = phw->p_interface_buffer; in outstream_get_info()
989 if (!phw->outstream_host_buffer_size[phm->obj_index]) { in outstream_get_info()
1017 struct hpi_hw_obj *phw = pao->priv; in outstream_reset() local
1018 phw->flag_outstream_just_reset[phm->obj_index] = 1; in outstream_reset()
1036 struct hpi_hw_obj *phw = pao->priv; in instream_host_buffer_allocate() local
1037 struct bus_master_interface *interface = phw->p_interface_buffer; in instream_host_buffer_allocate()
1047 phw->instream_host_buffer_size[phm->obj_index]; in instream_host_buffer_allocate()
1051 if (phw->instream_host_buffer_size[phm->obj_index] == in instream_host_buffer_allocate()
1057 if (hpios_locked_mem_valid(&phw->instream_host_buffers[phm-> in instream_host_buffer_allocate()
1059 hpios_locked_mem_free(&phw->instream_host_buffers in instream_host_buffer_allocate()
1062 err = hpios_locked_mem_alloc(&phw->instream_host_buffers[phm-> in instream_host_buffer_allocate()
1068 phw->instream_host_buffer_size[phm->obj_index] = 0; in instream_host_buffer_allocate()
1073 (&phw->instream_host_buffers[phm->obj_index], in instream_host_buffer_allocate()
1080 hpios_locked_mem_free(&phw->instream_host_buffers in instream_host_buffer_allocate()
1082 phw->instream_host_buffer_size[phm->obj_index] = 0; in instream_host_buffer_allocate()
1101 phw->instream_host_buffer_size[phm->obj_index] = in instream_host_buffer_allocate()
1115 && hpios_locked_mem_valid(&phw-> in instream_host_buffer_allocate()
1117 hpios_locked_mem_free(&phw->instream_host_buffers in instream_host_buffer_allocate()
1119 phw->instream_host_buffer_size[phm->obj_index] = 0; in instream_host_buffer_allocate()
1127 struct hpi_hw_obj *phw = pao->priv; in instream_host_buffer_get_info() local
1128 struct bus_master_interface *interface = phw->p_interface_buffer; in instream_host_buffer_get_info()
1132 if (hpios_locked_mem_valid(&phw->instream_host_buffers[phm-> in instream_host_buffer_get_info()
1134 if (hpios_locked_mem_get_virt_addr(&phw-> in instream_host_buffer_get_info()
1156 struct hpi_hw_obj *phw = pao->priv; in instream_host_buffer_free() local
1159 if (phw->instream_host_buffer_size[phm->obj_index]) { in instream_host_buffer_free()
1162 phw->instream_host_buffer_size[phm->obj_index] = 0; in instream_host_buffer_free()
1168 hpios_locked_mem_free(&phw->instream_host_buffers in instream_host_buffer_free()
1195 struct hpi_hw_obj *phw = pao->priv; in instream_read() local
1196 struct bus_master_interface *interface = phw->p_interface_buffer; in instream_read()
1203 if (!phw->instream_host_buffer_size[phm->obj_index]) { in instream_read()
1216 if (hpios_locked_mem_valid(&phw->instream_host_buffers[phm-> in instream_read()
1218 if (hpios_locked_mem_get_virt_addr(&phw-> in instream_read()
1246 struct hpi_hw_obj *phw = pao->priv; in instream_get_info() local
1247 struct bus_master_interface *interface = phw->p_interface_buffer; in instream_get_info()
1249 if (!phw->instream_host_buffer_size[phm->obj_index]) { in instream_get_info()
1275 struct hpi_hw_obj *phw = pao->priv; in adapter_boot_load_dsp() local
1312 iowrite32(temp, phw->prHDCR); in adapter_boot_load_dsp()
1316 temp = ioread32(phw->prHSR); in adapter_boot_load_dsp()
1322 iowrite32(temp, phw->prHSR); in adapter_boot_load_dsp()
1325 temp = ioread32(phw->prHDCR); in adapter_boot_load_dsp()
1332 iowrite32(temp, phw->prDSPP); in adapter_boot_load_dsp()
1333 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP)) in adapter_boot_load_dsp()
1336 iowrite32(temp, phw->prDSPP); in adapter_boot_load_dsp()
1337 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP)) in adapter_boot_load_dsp()
1340 iowrite32(temp, phw->prDSPP); in adapter_boot_load_dsp()
1341 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP)) in adapter_boot_load_dsp()
1345 iowrite32(temp, phw->prDSPP); in adapter_boot_load_dsp()
1346 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP)) in adapter_boot_load_dsp()
1348 phw->dsp_page = 0; in adapter_boot_load_dsp()
1480 if (phw->p_interface_buffer) { in adapter_boot_load_dsp()
1484 phw->p_interface_buffer; in adapter_boot_load_dsp()
1493 err = hpios_locked_mem_get_phys_addr(&phw->h_locked_mem, in adapter_boot_load_dsp()
1510 temp = ioread32(phw->prHSR); in adapter_boot_load_dsp()
1512 iowrite32(temp, phw->prHSR); in adapter_boot_load_dsp()
1515 temp = ioread32(phw->prHDCR); in adapter_boot_load_dsp()
1517 iowrite32(temp, phw->prHDCR); in adapter_boot_load_dsp()
1531 struct hpi_hw_obj *phw = pao->priv; in boot_loader_read_mem32() local
1546 if (dw4M_page != phw->dsp_page) { in boot_loader_read_mem32()
1547 phw->dsp_page = dw4M_page; in boot_loader_read_mem32()
1549 iowrite32(phw->dsp_page, phw->prDSPP); in boot_loader_read_mem32()
1573 struct hpi_hw_obj *phw = pao->priv; in boot_loader_write_mem32() local
1589 if (dw4M_page != phw->dsp_page) { in boot_loader_write_mem32()
1590 phw->dsp_page = dw4M_page; in boot_loader_write_mem32()
1592 iowrite32(phw->dsp_page, phw->prDSPP); in boot_loader_write_mem32()
2005 struct hpi_hw_obj *phw = pao->priv; in hpi6205_transfer_data() local
2009 struct bus_master_interface *interface = phw->p_interface_buffer; in hpi6205_transfer_data()
2017 if (!wait_dsp_ack(phw, H620_HIF_IDLE, HPI6205_TIMEOUT)) in hpi6205_transfer_data()
2034 send_dsp_command(phw, operation); in hpi6205_transfer_data()
2036 temp2 = wait_dsp_ack(phw, operation, HPI6205_TIMEOUT); in hpi6205_transfer_data()
2059 send_dsp_command(phw, H620_HIF_IDLE); in hpi6205_transfer_data()
2067 static int wait_dsp_ack(struct hpi_hw_obj *phw, int state, int timeout_us) in wait_dsp_ack() argument
2069 struct bus_master_interface *interface = phw->p_interface_buffer; in wait_dsp_ack()
2083 static void send_dsp_command(struct hpi_hw_obj *phw, int cmd) in send_dsp_command() argument
2085 struct bus_master_interface *interface = phw->p_interface_buffer; in send_dsp_command()
2091 r = ioread32(phw->prHDCR); in send_dsp_command()
2093 iowrite32(r, phw->prHDCR); in send_dsp_command()
2095 iowrite32(r, phw->prHDCR); in send_dsp_command()
2104 struct hpi_hw_obj *phw = pao->priv; in message_response_sequence() local
2105 struct bus_master_interface *interface = phw->p_interface_buffer; in message_response_sequence()
2122 if (!wait_dsp_ack(phw, H620_HIF_IDLE, HPI6205_TIMEOUT)) { in message_response_sequence()
2129 send_dsp_command(phw, H620_HIF_GET_RESP); in message_response_sequence()
2131 time_out2 = wait_dsp_ack(phw, H620_HIF_GET_RESP, HPI6205_TIMEOUT); in message_response_sequence()
2164 send_dsp_command(phw, H620_HIF_IDLE); in message_response_sequence()
2173 if (!wait_dsp_ack(phw, H620_HIF_IDLE, HPI6205_TIMEOUT)) { in message_response_sequence()