| /linux/sound/soc/intel/atom/sst/ |
| H A D | sst_stream.c | 26 int sst_alloc_stream_mrfld(struct intel_sst_drv *sst_drv_ctx, void *params) in sst_alloc_stream_mrfld() argument 34 dev_dbg(sst_drv_ctx->dev, "Enter\n"); in sst_alloc_stream_mrfld() 38 str_info = get_stream_info(sst_drv_ctx, str_id); in sst_alloc_stream_mrfld() 70 sst_drv_ctx->streams[str_id].status = STREAM_INIT; in sst_alloc_stream_mrfld() 71 sst_drv_ctx->streams[str_id].prev = STREAM_UN_INIT; in sst_alloc_stream_mrfld() 72 sst_drv_ctx->streams[str_id].pipe_id = str_params->device_type; in sst_alloc_stream_mrfld() 73 sst_drv_ctx->streams[str_id].task_id = str_params->task; in sst_alloc_stream_mrfld() 74 sst_drv_ctx->streams[str_id].num_ch = num_ch; in sst_alloc_stream_mrfld() 76 if (sst_drv_ctx->info.lpe_viewpt_rqd) in sst_alloc_stream_mrfld() 77 str_info->alloc_param.ts = sst_drv_ctx->info.mailbox_start + in sst_alloc_stream_mrfld() [all …]
|
| H A D | sst_loader.c | 54 int intel_sst_reset_dsp_mrfld(struct intel_sst_drv *sst_drv_ctx) in intel_sst_reset_dsp_mrfld() argument 58 dev_dbg(sst_drv_ctx->dev, "sst: Resetting the DSP in mrfld\n"); in intel_sst_reset_dsp_mrfld() 59 csr.full = sst_shim_read64(sst_drv_ctx->shim, SST_CSR); in intel_sst_reset_dsp_mrfld() 61 dev_dbg(sst_drv_ctx->dev, "value:0x%llx\n", csr.full); in intel_sst_reset_dsp_mrfld() 64 sst_shim_write64(sst_drv_ctx->shim, SST_CSR, csr.full); in intel_sst_reset_dsp_mrfld() 65 csr.full = sst_shim_read64(sst_drv_ctx->shim, SST_CSR); in intel_sst_reset_dsp_mrfld() 67 dev_dbg(sst_drv_ctx->dev, "value:0x%llx\n", csr.full); in intel_sst_reset_dsp_mrfld() 70 sst_shim_write64(sst_drv_ctx->shim, SST_CSR, csr.full); in intel_sst_reset_dsp_mrfld() 72 csr.full = sst_shim_read64(sst_drv_ctx->shim, SST_CSR); in intel_sst_reset_dsp_mrfld() 73 dev_dbg(sst_drv_ctx->dev, "value:0x%llx\n", csr.full); in intel_sst_reset_dsp_mrfld() [all …]
|
| H A D | sst_ipc.c | 116 int sst_post_message_mrfld(struct intel_sst_drv *sst_drv_ctx, in sst_post_message_mrfld() 125 dev_dbg(sst_drv_ctx->dev, "Enter: sync: %d\n", sync); in sst_post_message_mrfld() 126 spin_lock_irqsave(&sst_drv_ctx->ipc_spin_lock, irq_flags); in sst_post_message_mrfld() 127 header.full = sst_shim_read64(sst_drv_ctx->shim, SST_IPCX); in sst_post_message_mrfld() 131 dev_err(sst_drv_ctx->dev, in sst_post_message_mrfld() 138 header.full = sst_shim_read64(sst_drv_ctx->shim, SST_IPCX); in sst_post_message_mrfld() 141 if (list_empty(&sst_drv_ctx->ipc_dispatch_list)) { in sst_post_message_mrfld() 143 spin_unlock_irqrestore(&sst_drv_ctx->ipc_spin_lock, irq_flags); in sst_post_message_mrfld() 144 dev_dbg(sst_drv_ctx->dev, in sst_post_message_mrfld() 150 spin_unlock_irqrestore(&sst_drv_ctx in sst_post_message_mrfld() 115 sst_post_message_mrfld(struct intel_sst_drv * sst_drv_ctx,struct ipc_post * ipc_msg,bool sync) sst_post_message_mrfld() argument 178 intel_sst_clear_intr_mrfld(struct intel_sst_drv * sst_drv_ctx) intel_sst_clear_intr_mrfld() argument 215 process_fw_init(struct intel_sst_drv * sst_drv_ctx,void * msg) process_fw_init() argument 248 process_fw_async_msg(struct intel_sst_drv * sst_drv_ctx,struct ipc_post * msg) process_fw_async_msg() argument 318 sst_process_reply_mrfld(struct intel_sst_drv * sst_drv_ctx,struct ipc_post * msg) sst_process_reply_mrfld() argument [all...] |
| H A D | sst_pci.c | 105 struct intel_sst_drv *sst_drv_ctx; in intel_sst_probe() local 109 ret = sst_alloc_drv_context(&sst_drv_ctx, &pci->dev, pci->device); in intel_sst_probe() 113 sst_drv_ctx->pdata = sst_pdata; in intel_sst_probe() 114 sst_drv_ctx->irq_num = pci->irq; in intel_sst_probe() 115 snprintf(sst_drv_ctx->firmware_name, sizeof(sst_drv_ctx->firmware_name), in intel_sst_probe() 117 sst_drv_ctx->dev_id, ".bin"); in intel_sst_probe() 119 ret = sst_context_init(sst_drv_ctx); in intel_sst_probe() 126 dev_err(sst_drv_ctx->dev, in intel_sst_probe() 130 sst_drv_ctx->pci = pci_dev_get(pci); in intel_sst_probe() 131 ret = sst_platform_get_resources(sst_drv_ctx); in intel_sst_probe() [all …]
|
| H A D | sst_pvt.c | 66 struct intel_sst_drv *sst_drv_ctx, int sst_state) in sst_set_fw_state_locked() 68 guard(mutex)(&sst_drv_ctx->sst_lock); in sst_set_fw_state_locked() 69 sst_drv_ctx->sst_state = sst_state; in sst_set_fw_state_locked() 75 * @sst_drv_ctx: Driver context 81 int sst_wait_timeout(struct intel_sst_drv *sst_drv_ctx, struct sst_block *block) in sst_wait_timeout() argument 90 dev_dbg(sst_drv_ctx->dev, in sst_wait_timeout() 93 if (wait_event_timeout(sst_drv_ctx->wait_queue, in sst_wait_timeout() 97 dev_dbg(sst_drv_ctx->dev, "Event wake %x\n", in sst_wait_timeout() 99 dev_dbg(sst_drv_ctx->dev, "message ret: %d\n", in sst_wait_timeout() 104 dev_err(sst_drv_ctx in sst_wait_timeout() 65 sst_set_fw_state_locked(struct intel_sst_drv * sst_drv_ctx,int sst_state) sst_set_fw_state_locked() argument 154 sst_create_block_and_ipc_msg(struct ipc_post ** arg,bool large,struct intel_sst_drv * sst_drv_ctx,struct sst_block ** block,u32 msg_id,u32 drv_id) sst_create_block_and_ipc_msg() argument 321 sst_validate_strid(struct intel_sst_drv * sst_drv_ctx,int str_id) sst_validate_strid() argument 334 get_stream_info(struct intel_sst_drv * sst_drv_ctx,int str_id) get_stream_info() argument 341 get_stream_id_mrfld(struct intel_sst_drv * sst_drv_ctx,u32 pipe_id) get_stream_id_mrfld() argument [all...] |
| H A D | sst.h | 434 int sst_realloc_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 435 int sst_pause_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 436 int sst_resume_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 437 int sst_drop_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 438 int sst_free_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 439 int sst_start_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 440 int sst_send_byte_stream_mrfld(struct intel_sst_drv *sst_drv_ctx, 446 int sst_drain_stream(struct intel_sst_drv *sst_drv_ctx, 448 int sst_post_message_mrfld(struct intel_sst_drv *sst_drv_ctx, 450 void sst_process_reply_mrfld(struct intel_sst_drv *sst_drv_ctx, struct ipc_post *msg); [all …]
|