• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/sound/pci/asihpi/

Lines Matching refs:phw

142 static int wait_dsp_ack(struct hpi_hw_obj *phw, int state, int timeout_us);
144 static void send_dsp_command(struct hpi_hw_obj *phw, int cmd);
259 struct hpi_hw_obj *phw = pao->priv;
265 if (hpi_check_control_cache(phw->p_cache, phm, phr))
276 hpi_sync_control_cache(phw->p_cache, phm, phr);
514 struct hpi_hw_obj *phw;
521 phw = (struct hpi_hw_obj *)pao->priv;
526 iowrite32(C6205_HDCR_WARMRESET, phw->prHDCR);
538 struct hpi_hw_obj *phw = pao->priv;
552 phw->flag_outstream_just_reset[i] = 1;
555 phw->prHSR =
558 phw->prHDCR =
561 phw->prDSPP =
567 if (hpios_locked_mem_alloc(&phw->h_locked_mem,
570 phw->p_interface_buffer = NULL;
571 else if (hpios_locked_mem_get_virt_addr(&phw->h_locked_mem,
572 (void *)&phw->p_interface_buffer))
573 phw->p_interface_buffer = NULL;
576 phw->p_interface_buffer);
578 if (phw->p_interface_buffer) {
579 memset((void *)phw->p_interface_buffer, 0,
581 phw->p_interface_buffer->dsp_ack = H620_HIF_UNKNOWN;
593 if (!phw->p_interface_buffer)
596 interface = phw->p_interface_buffer;
603 temp1 = ioread32(phw->prHSR);
616 iowrite32(C6205_HSR_INTSRC, phw->prHSR);
620 if (!wait_dsp_ack(phw, H620_HIF_RESET, HPI6205_TIMEOUT * 10)) {
624 /* Note that *pao, *phw are zeroed after allocation,
631 err = hpios_locked_mem_alloc(&phw->h_control_cache,
635 err = hpios_locked_mem_get_virt_addr(&phw->
641 phw->p_cache =
649 err = hpios_locked_mem_get_phys_addr(&phw->
658 if (hpios_locked_mem_valid(&phw->h_control_cache))
659 hpios_locked_mem_free(&phw->h_control_cache);
665 err = hpios_locked_mem_alloc(&phw->h_async_event_buffer,
670 (&phw->h_async_event_buffer, (void *)
671 &phw->p_async_event_buffer);
673 memset((void *)phw->p_async_event_buffer, 0,
678 (&phw->h_async_event_buffer, &phys_addr);
683 if (hpios_locked_mem_valid(&phw->
686 (&phw->h_async_event_buffer);
687 phw->p_async_event_buffer = NULL;
691 send_dsp_command(phw, H620_HIF_IDLE);
743 struct hpi_hw_obj *phw;
746 phw = pao->priv;
748 if (hpios_locked_mem_valid(&phw->h_async_event_buffer)) {
749 hpios_locked_mem_free(&phw->h_async_event_buffer);
750 phw->p_async_event_buffer = NULL;
753 if (hpios_locked_mem_valid(&phw->h_control_cache)) {
754 hpios_locked_mem_free(&phw->h_control_cache);
755 hpi_free_control_cache(phw->p_cache);
758 if (hpios_locked_mem_valid(&phw->h_locked_mem)) {
759 hpios_locked_mem_free(&phw->h_locked_mem);
760 phw->p_interface_buffer = NULL;
764 if (hpios_locked_mem_valid(&phw->instream_host_buffers[i])) {
765 hpios_locked_mem_free(&phw->instream_host_buffers[i]);
766 /*?phw->InStreamHostBuffers[i] = NULL; */
767 phw->instream_host_buffer_size[i] = 0;
771 if (hpios_locked_mem_valid(&phw->outstream_host_buffers[i])) {
772 hpios_locked_mem_free(&phw->outstream_host_buffers
774 phw->outstream_host_buffer_size[i] = 0;
780 kfree(phw);
793 struct hpi_hw_obj *phw = pao->priv;
794 struct bus_master_interface *interface = phw->p_interface_buffer;
808 phw->outstream_host_buffer_size[phm->obj_index];
812 if (phw->outstream_host_buffer_size[phm->obj_index] ==
818 if (hpios_locked_mem_valid(&phw->outstream_host_buffers[phm->
820 hpios_locked_mem_free(&phw->outstream_host_buffers
823 err = hpios_locked_mem_alloc(&phw->outstream_host_buffers
829 phw->outstream_host_buffer_size[phm->obj_index] = 0;
834 (&phw->outstream_host_buffers[phm->obj_index],
844 hpios_locked_mem_free(&phw->outstream_host_buffers
846 phw->outstream_host_buffer_size[phm->obj_index] = 0;
867 phw->outstream_host_buffer_size[phm->obj_index] =
880 && hpios_locked_mem_valid(&phw->
882 hpios_locked_mem_free(&phw->outstream_host_buffers
884 phw->outstream_host_buffer_size[phm->obj_index] = 0;
892 struct hpi_hw_obj *phw = pao->priv;
893 struct bus_master_interface *interface = phw->p_interface_buffer;
897 if (hpios_locked_mem_valid(&phw->outstream_host_buffers[phm->
899 if (hpios_locked_mem_get_virt_addr(&phw->
921 struct hpi_hw_obj *phw = pao->priv;
924 if (phw->outstream_host_buffer_size[phm->obj_index]) {
927 phw->outstream_host_buffer_size[phm->obj_index] = 0;
933 hpios_locked_mem_free(&phw->outstream_host_buffers
953 struct hpi_hw_obj *phw = pao->priv;
954 struct bus_master_interface *interface = phw->p_interface_buffer;
958 if (!phw->outstream_host_buffer_size[phm->obj_index]) {
967 if (phw->flag_outstream_just_reset[phm->obj_index]) {
976 phw->flag_outstream_just_reset[phm->obj_index] = 0;
1021 && hpios_locked_mem_valid(&phw->outstream_host_buffers[phm->
1027 if (hpios_locked_mem_get_virt_addr(&phw->
1054 struct hpi_hw_obj *phw = pao->priv;
1055 struct bus_master_interface *interface = phw->p_interface_buffer;
1058 if (!phw->outstream_host_buffer_size[phm->obj_index]) {
1086 struct hpi_hw_obj *phw = pao->priv;
1087 phw->flag_outstream_just_reset[phm->obj_index] = 1;
1105 struct hpi_hw_obj *phw = pao->priv;
1106 struct bus_master_interface *interface = phw->p_interface_buffer;
1116 phw->instream_host_buffer_size[phm->obj_index];
1120 if (phw->instream_host_buffer_size[phm->obj_index] ==
1126 if (hpios_locked_mem_valid(&phw->instream_host_buffers[phm->
1128 hpios_locked_mem_free(&phw->instream_host_buffers
1131 err = hpios_locked_mem_alloc(&phw->instream_host_buffers[phm->
1137 phw->instream_host_buffer_size[phm->obj_index] = 0;
1142 (&phw->instream_host_buffers[phm->obj_index],
1149 hpios_locked_mem_free(&phw->instream_host_buffers
1151 phw->instream_host_buffer_size[phm->obj_index] = 0;
1170 phw->instream_host_buffer_size[phm->obj_index] =
1182 && hpios_locked_mem_valid(&phw->
1184 hpios_locked_mem_free(&phw->instream_host_buffers
1186 phw->instream_host_buffer_size[phm->obj_index] = 0;
1194 struct hpi_hw_obj *phw = pao->priv;
1195 struct bus_master_interface *interface = phw->p_interface_buffer;
1199 if (hpios_locked_mem_valid(&phw->instream_host_buffers[phm->
1201 if (hpios_locked_mem_get_virt_addr(&phw->
1223 struct hpi_hw_obj *phw = pao->priv;
1226 if (phw->instream_host_buffer_size[phm->obj_index]) {
1229 phw->instream_host_buffer_size[phm->obj_index] = 0;
1235 hpios_locked_mem_free(&phw->instream_host_buffers
1262 struct hpi_hw_obj *phw = pao->priv;
1263 struct bus_master_interface *interface = phw->p_interface_buffer;
1270 if (!phw->instream_host_buffer_size[phm->obj_index]) {
1283 if (hpios_locked_mem_valid(&phw->instream_host_buffers[phm->
1285 if (hpios_locked_mem_get_virt_addr(&phw->
1313 struct hpi_hw_obj *phw = pao->priv;
1314 struct bus_master_interface *interface = phw->p_interface_buffer;
1316 if (!phw->instream_host_buffer_size[phm->obj_index]) {
1342 struct hpi_hw_obj *phw = pao->priv;
1375 iowrite32(temp, phw->prHDCR);
1379 temp = ioread32(phw->prHSR);
1385 iowrite32(temp, phw->prHSR);
1388 temp = ioread32(phw->prHDCR);
1395 iowrite32(temp, phw->prDSPP);
1396 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP))
1399 iowrite32(temp, phw->prDSPP);
1400 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP))
1403 iowrite32(temp, phw->prDSPP);
1404 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP))
1408 iowrite32(temp, phw->prDSPP);
1409 if ((temp | C6205_DSPP_MAP1) != ioread32(phw->prDSPP))
1411 phw->dsp_page = 0;
1542 if (phw->p_interface_buffer) {
1546 phw->p_interface_buffer;
1555 err = hpios_locked_mem_get_phys_addr(&phw->h_locked_mem,
1572 temp = ioread32(phw->prHSR);
1574 iowrite32(temp, phw->prHSR);
1577 temp = ioread32(phw->prHDCR);
1579 iowrite32(temp, phw->prHDCR);
1593 struct hpi_hw_obj *phw = pao->priv;
1608 if (dw4M_page != phw->dsp_page) {
1609 phw->dsp_page = dw4M_page;
1611 iowrite32(phw->dsp_page, phw->prDSPP);
1635 struct hpi_hw_obj *phw = pao->priv;
1652 if (dw4M_page != phw->dsp_page) {
1653 phw->dsp_page = dw4M_page;
1655 iowrite32(phw->dsp_page, phw->prDSPP);
2035 struct hpi_hw_obj *phw = pao->priv;
2042 struct bus_master_interface *interface = phw->p_interface_buffer;
2050 if (!wait_dsp_ack(phw, H620_HIF_IDLE, HPI6205_TIMEOUT))
2070 send_dsp_command(phw, operation);
2073 temp2 = wait_dsp_ack(phw, operation, HPI6205_TIMEOUT);
2093 temp2 = ioread32(phw->prHSR);
2117 iowrite32(C6205_HSR_INTSRC, phw->prHSR);
2130 send_dsp_command(phw, H620_HIF_IDLE);
2138 static int wait_dsp_ack(struct hpi_hw_obj *phw, int state, int timeout_us)
2140 struct bus_master_interface *interface = phw->p_interface_buffer;
2154 static void send_dsp_command(struct hpi_hw_obj *phw, int cmd)
2156 struct bus_master_interface *interface = phw->p_interface_buffer;
2163 r = ioread32(phw->prHDCR);
2165 iowrite32(r, phw->prHDCR);
2167 iowrite32(r, phw->prHDCR);
2179 struct hpi_hw_obj *phw = pao->priv;
2180 struct bus_master_interface *interface = phw->p_interface_buffer;
2187 if (!wait_dsp_ack(phw, H620_HIF_IDLE, HPI6205_TIMEOUT)) {
2193 send_dsp_command(phw, H620_HIF_GET_RESP);
2195 time_out2 = wait_dsp_ack(phw, H620_HIF_GET_RESP, HPI6205_TIMEOUT);
2212 temp2 = ioread32(phw->prHSR);
2238 iowrite32(C6205_HSR_INTSRC, phw->prHSR);
2246 send_dsp_command(phw, H620_HIF_IDLE);
2255 if (!wait_dsp_ack(phw, H620_HIF_IDLE, HPI6205_TIMEOUT)) {