Lines Matching refs:dsp

275     dsp = Regs(bar4_mem)
277 dsp.HFDSSCS = 0x1000
278 dsp.HFPWRCTL = 0x1d18 if ace15 or ace20 else 0x1d20
279 dsp.HFPWRSTS = 0x1d1c if ace15 or ace20 else 0x1d24
280 dsp.DSP2CXCTL_PRIMARY = 0x178d04
281 dsp.HFIPCXTDR = 0x73200
282 dsp.HFIPCXTDA = 0x73204
283 dsp.HFIPCXIDR = 0x73210
284 dsp.HFIPCXIDA = 0x73214
285 dsp.HFIPCXCTL = 0x73228
286 dsp.HFIPCXTDDY = 0x73300
287 dsp.HFIPCXIDDY = 0x73380
288 dsp.ROM_STATUS = 0x163200 if ace15 else 0x160200
289 dsp.SRAM_FW_STATUS = WINDOW_BASE_ACE
291 dsp.ADSPCS = 0x00004
292 dsp.HIPCTDR = 0x000c0
293 dsp.HIPCTDA = 0x000c4
294 dsp.HIPCTDD = 0x000c8
295 dsp.HIPCIDR = 0x000d0
296 dsp.HIPCIDA = 0x000d4
297 dsp.HIPCIDD = 0x000d8
298 dsp.ROM_STATUS = WINDOW_BASE # Start of first SRAM window
299 dsp.SRAM_FW_STATUS = WINDOW_BASE
300 dsp.freeze()
302 return (hda, sd, dsp, hda_ostream_id)
419 dsp.ADSPCS |= mask(CSTALL)
420 dsp.ADSPCS |= mask(CRST)
421 while (dsp.ADSPCS & mask(CRST)) == 0: pass
424 dsp.ADSPCS &= ~mask(SPA)
425 while dsp.ADSPCS & mask(CPA): pass
449 dsp.ADSPCS = mask(SPA)
450 while (dsp.ADSPCS & mask(CPA)) == 0: pass
453 dsp.ADSPCS &= ~mask(CRST)
454 while (dsp.ADSPCS & 1) != 0: pass
457 dsp.ADSPCS &= ~mask(CSTALL)
465 while (dsp.SRAM_FW_STATUS >> 24) != 5: pass
477 dsp.HIPCIDR = ipcval
482 wait_fw_entered(dsp, timeout_s=None)
522 dsp.HFDSSCS &= ~(1 << 16) # clear SPA bit
525 while dsp.HFDSSCS & (1 << 24):
530 dsp.HFDSSCS |= (1 << 16) # set SPA bit
533 while not dsp.HFDSSCS & (1 << 24):
538 dsp.HFPWRCTL |= 0x1 # set SPA bit
541 while not dsp.HFPWRSTS & 0x1:
546 dsp.DSP2CXCTL_PRIMARY &= ~(0x1) # clear SPA
548 while dsp.DSP2CXCTL_PRIMARY & (1 << 8):
583 dsp.HFIPCXIDR = ipcval
586 dsp.DSP2CXCTL_PRIMARY |= 0x1 # clear SPA
588 while not dsp.DSP2CXCTL_PRIMARY & (1 << 8):
593 while dsp.HFIPCXIDR & (1 << 31):
598 dsp.HFIPCXIDA |= (1 << 31)
603 wait_fw_entered(dsp, timeout_s=None)
617 def fw_is_alive(dsp): argument
618 return dsp.ROM_STATUS & ((1 << 28) - 1) == 5 # "FW_ENTERED"
620 def wait_fw_entered(dsp, timeout_s): argument
623 dsp.ROM_STATUS)
627 alive = fw_is_alive(dsp)
637 log.warning("Load failed? ROM_STATUS = 0x%x", dsp.ROM_STATUS)
639 log.info("FW alive, ROM_STATUS = 0x%x", dsp.ROM_STATUS)
792 dsp.HFIPCXTDA = ~(1<<31) & dsp.HFIPCXTDA # Signal done
794 dsp.HIPCTDA = 1<<31
819 dsp.ADSPCS = ext_data
897 if not fw_is_alive(dsp):
900 wait_fw_entered(dsp, timeout_s=None)
908 dsp.HFIPCXTDR = 1<<31 # Ack local interrupt
910 dsp.HFIPCXTDA = ~(1<<31) & dsp.HFIPCXTDA # Signal done
913 dsp.HFIPCXIDDY = ext_data
914 dsp.HFIPCXIDR = (1<<31) | ext_data
916 dsp.HIPCTDR = 1<<31 # Ack local interrupt
918 dsp.HIPCTDA = 1<<31 # Signal done
920 dsp.HIPCIDD = ext_data
921 dsp.HIPCIDR = (1<<31) | ext_data
925 if dsp.HFIPCXIDA & 0x80000000:
927 dsp.HFIPCXIDA = 1<<31 # must ACK any DONE interrupts that arrive!
928 if dsp.HFIPCXTDR & 0x80000000:
929 ipc_command(dsp.HFIPCXTDR & ~0x80000000, dsp.HFIPCXTDDY)
932 if dsp.HIPCIDA & 0x80000000:
933 dsp.HIPCIDA = 1<<31 # must ACK any DONE interrupts that arrive!
934 if dsp.HIPCTDR & 0x80000000:
935 ipc_command(dsp.HIPCTDR & ~0x80000000, dsp.HIPCTDD)
939 global hda, sd, dsp, hda_ostream_id, hda_streams
942 (hda, sd, dsp, hda_ostream_id) = map_regs(args.log_only)
951 wait_fw_entered(dsp, timeout_s=None)