/kernel/linux/linux-5.10/sound/soc/intel/atom/sst/ |
H A D | sst_stream.c | 27 int sst_alloc_stream_mrfld(struct intel_sst_drv *sst_drv_ctx, void *params) in sst_alloc_stream_mrfld() argument 35 dev_dbg(sst_drv_ctx->dev, "Enter\n"); in sst_alloc_stream_mrfld() 39 str_info = get_stream_info(sst_drv_ctx, str_id); in sst_alloc_stream_mrfld() 71 sst_drv_ctx->streams[str_id].status = STREAM_INIT; in sst_alloc_stream_mrfld() 72 sst_drv_ctx->streams[str_id].prev = STREAM_UN_INIT; in sst_alloc_stream_mrfld() 73 sst_drv_ctx->streams[str_id].pipe_id = str_params->device_type; in sst_alloc_stream_mrfld() 74 sst_drv_ctx->streams[str_id].task_id = str_params->task; in sst_alloc_stream_mrfld() 75 sst_drv_ctx->streams[str_id].num_ch = num_ch; in sst_alloc_stream_mrfld() 77 if (sst_drv_ctx->info.lpe_viewpt_rqd) in sst_alloc_stream_mrfld() 78 str_info->alloc_param.ts = sst_drv_ctx in sst_alloc_stream_mrfld() 101 sst_realloc_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_realloc_stream() argument 151 sst_start_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_start_stream() argument 171 sst_send_byte_stream_mrfld(struct intel_sst_drv *sst_drv_ctx, struct snd_sst_bytes_v2 *bytes) sst_send_byte_stream_mrfld() argument 243 sst_pause_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_pause_stream() argument 288 sst_resume_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_resume_stream() argument 356 sst_drop_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_drop_stream() argument 391 sst_drain_stream(struct intel_sst_drv *sst_drv_ctx, int str_id, bool partial_drain) sst_drain_stream() argument 429 sst_free_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_free_stream() argument [all...] |
H A D | sst_ipc.c | 115 int sst_post_message_mrfld(struct intel_sst_drv *sst_drv_ctx, in sst_post_message_mrfld() argument 124 dev_dbg(sst_drv_ctx->dev, "Enter: sync: %d\n", sync); in sst_post_message_mrfld() 125 spin_lock_irqsave(&sst_drv_ctx->ipc_spin_lock, irq_flags); in sst_post_message_mrfld() 126 header.full = sst_shim_read64(sst_drv_ctx->shim, SST_IPCX); in sst_post_message_mrfld() 130 dev_err(sst_drv_ctx->dev, in sst_post_message_mrfld() 137 header.full = sst_shim_read64(sst_drv_ctx->shim, SST_IPCX); in sst_post_message_mrfld() 140 if (list_empty(&sst_drv_ctx->ipc_dispatch_list)) { in sst_post_message_mrfld() 142 spin_unlock_irqrestore(&sst_drv_ctx->ipc_spin_lock, irq_flags); in sst_post_message_mrfld() 143 dev_dbg(sst_drv_ctx->dev, in sst_post_message_mrfld() 149 spin_unlock_irqrestore(&sst_drv_ctx in sst_post_message_mrfld() 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_loader.c | 51 * @sst_drv_ctx: intel_sst_drv context pointer 55 int intel_sst_reset_dsp_mrfld(struct intel_sst_drv *sst_drv_ctx) in intel_sst_reset_dsp_mrfld() argument 59 dev_dbg(sst_drv_ctx->dev, "sst: Resetting the DSP in mrfld\n"); in intel_sst_reset_dsp_mrfld() 60 csr.full = sst_shim_read64(sst_drv_ctx->shim, SST_CSR); in intel_sst_reset_dsp_mrfld() 62 dev_dbg(sst_drv_ctx->dev, "value:0x%llx\n", csr.full); in intel_sst_reset_dsp_mrfld() 65 sst_shim_write64(sst_drv_ctx->shim, SST_CSR, csr.full); in intel_sst_reset_dsp_mrfld() 66 csr.full = sst_shim_read64(sst_drv_ctx->shim, SST_CSR); in intel_sst_reset_dsp_mrfld() 68 dev_dbg(sst_drv_ctx->dev, "value:0x%llx\n", csr.full); in intel_sst_reset_dsp_mrfld() 71 sst_shim_write64(sst_drv_ctx->shim, SST_CSR, csr.full); in intel_sst_reset_dsp_mrfld() 73 csr.full = sst_shim_read64(sst_drv_ctx in intel_sst_reset_dsp_mrfld() 84 sst_start_mrfld(struct intel_sst_drv *sst_drv_ctx) sst_start_mrfld() argument 173 sst_parse_module_memcpy(struct intel_sst_drv *sst_drv_ctx, struct fw_module_header *module, struct list_head *memcpy_list) sst_parse_module_memcpy() argument 273 sst_memcpy_free_resources(struct intel_sst_drv *sst_drv_ctx) sst_memcpy_free_resources() argument 393 sst_load_fw(struct intel_sst_drv *sst_drv_ctx) sst_load_fw() argument [all...] |
H A D | sst_pvt.c | 65 struct intel_sst_drv *sst_drv_ctx, int sst_state) in sst_set_fw_state_locked() 67 mutex_lock(&sst_drv_ctx->sst_lock); in sst_set_fw_state_locked() 68 sst_drv_ctx->sst_state = sst_state; in sst_set_fw_state_locked() 69 mutex_unlock(&sst_drv_ctx->sst_lock); in sst_set_fw_state_locked() 75 * @sst_drv_ctx: Driver context 81 int sst_wait_interruptible(struct intel_sst_drv *sst_drv_ctx, in sst_wait_interruptible() argument 86 if (!wait_event_interruptible(sst_drv_ctx->wait_queue, in sst_wait_interruptible() 90 dev_err(sst_drv_ctx->dev, in sst_wait_interruptible() 94 dev_dbg(sst_drv_ctx->dev, "event up\n"); in sst_wait_interruptible() 98 dev_err(sst_drv_ctx in sst_wait_interruptible() 64 sst_set_fw_state_locked( struct intel_sst_drv *sst_drv_ctx, int sst_state) sst_set_fw_state_locked() argument 114 sst_wait_timeout(struct intel_sst_drv *sst_drv_ctx, struct sst_block *block) sst_wait_timeout() argument 186 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 354 sst_validate_strid( struct intel_sst_drv *sst_drv_ctx, int str_id) sst_validate_strid() argument 367 get_stream_info( struct intel_sst_drv *sst_drv_ctx, int str_id) get_stream_info() argument 375 get_stream_id_mrfld(struct intel_sst_drv *sst_drv_ctx, u32 pipe_id) get_stream_id_mrfld() argument [all...] |
H A D | sst_pci.c | 116 struct intel_sst_drv *sst_drv_ctx; in intel_sst_probe() local 120 ret = sst_alloc_drv_context(&sst_drv_ctx, &pci->dev, pci->device); in intel_sst_probe() 124 sst_drv_ctx->pdata = sst_pdata; in intel_sst_probe() 125 sst_drv_ctx->irq_num = pci->irq; in intel_sst_probe() 126 snprintf(sst_drv_ctx->firmware_name, sizeof(sst_drv_ctx->firmware_name), in intel_sst_probe() 128 sst_drv_ctx->dev_id, ".bin"); in intel_sst_probe() 130 ret = sst_context_init(sst_drv_ctx); in intel_sst_probe() 137 dev_err(sst_drv_ctx->dev, in intel_sst_probe() 141 sst_drv_ctx in intel_sst_probe() 167 struct intel_sst_drv *sst_drv_ctx = pci_get_drvdata(pci); intel_sst_remove() local [all...] |
H A D | sst.h | 437 int sst_realloc_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 438 int sst_pause_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 439 int sst_resume_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 440 int sst_drop_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 441 int sst_free_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 442 int sst_start_stream(struct intel_sst_drv *sst_drv_ctx, int str_id); 443 int sst_send_byte_stream_mrfld(struct intel_sst_drv *sst_drv_ctx, 452 int sst_drain_stream(struct intel_sst_drv *sst_drv_ctx, 454 int sst_post_message_mrfld(struct intel_sst_drv *sst_drv_ctx, 456 void sst_process_reply_mrfld(struct intel_sst_drv *sst_drv_ctx, struc [all...] |
/kernel/linux/linux-6.6/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 in sst_alloc_stream_mrfld() 100 sst_realloc_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_realloc_stream() argument 150 sst_start_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_start_stream() argument 170 sst_send_byte_stream_mrfld(struct intel_sst_drv *sst_drv_ctx, struct snd_sst_bytes_v2 *bytes) sst_send_byte_stream_mrfld() argument 243 sst_pause_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_pause_stream() argument 288 sst_resume_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_resume_stream() argument 356 sst_drop_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_drop_stream() argument 391 sst_drain_stream(struct intel_sst_drv *sst_drv_ctx, int str_id, bool partial_drain) sst_drain_stream() argument 429 sst_free_stream(struct intel_sst_drv *sst_drv_ctx, int str_id) sst_free_stream() argument [all...] |
H A D | sst_ipc.c | 114 int sst_post_message_mrfld(struct intel_sst_drv *sst_drv_ctx, in sst_post_message_mrfld() argument 123 dev_dbg(sst_drv_ctx->dev, "Enter: sync: %d\n", sync); in sst_post_message_mrfld() 124 spin_lock_irqsave(&sst_drv_ctx->ipc_spin_lock, irq_flags); in sst_post_message_mrfld() 125 header.full = sst_shim_read64(sst_drv_ctx->shim, SST_IPCX); in sst_post_message_mrfld() 129 dev_err(sst_drv_ctx->dev, in sst_post_message_mrfld() 136 header.full = sst_shim_read64(sst_drv_ctx->shim, SST_IPCX); in sst_post_message_mrfld() 139 if (list_empty(&sst_drv_ctx->ipc_dispatch_list)) { in sst_post_message_mrfld() 141 spin_unlock_irqrestore(&sst_drv_ctx->ipc_spin_lock, irq_flags); in sst_post_message_mrfld() 142 dev_dbg(sst_drv_ctx->dev, in sst_post_message_mrfld() 148 spin_unlock_irqrestore(&sst_drv_ctx in sst_post_message_mrfld() 177 intel_sst_clear_intr_mrfld(struct intel_sst_drv *sst_drv_ctx) intel_sst_clear_intr_mrfld() argument 214 process_fw_init(struct intel_sst_drv *sst_drv_ctx, void *msg) process_fw_init() argument 247 process_fw_async_msg(struct intel_sst_drv *sst_drv_ctx, struct ipc_post *msg) process_fw_async_msg() argument 317 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_loader.c | 50 * @sst_drv_ctx: intel_sst_drv context pointer 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 in intel_sst_reset_dsp_mrfld() 83 sst_start_mrfld(struct intel_sst_drv *sst_drv_ctx) sst_start_mrfld() argument 172 sst_parse_module_memcpy(struct intel_sst_drv *sst_drv_ctx, struct fw_module_header *module, struct list_head *memcpy_list) sst_parse_module_memcpy() argument 272 sst_memcpy_free_resources(struct intel_sst_drv *sst_drv_ctx) sst_memcpy_free_resources() argument 392 sst_load_fw(struct intel_sst_drv *sst_drv_ctx) sst_load_fw() argument [all...] |
H A D | sst_pvt.c | 65 struct intel_sst_drv *sst_drv_ctx, int sst_state) in sst_set_fw_state_locked() 67 mutex_lock(&sst_drv_ctx->sst_lock); in sst_set_fw_state_locked() 68 sst_drv_ctx->sst_state = sst_state; in sst_set_fw_state_locked() 69 mutex_unlock(&sst_drv_ctx->sst_lock); in sst_set_fw_state_locked() 75 * @sst_drv_ctx: Driver context 81 int sst_wait_interruptible(struct intel_sst_drv *sst_drv_ctx, in sst_wait_interruptible() argument 86 if (!wait_event_interruptible(sst_drv_ctx->wait_queue, in sst_wait_interruptible() 90 dev_err(sst_drv_ctx->dev, in sst_wait_interruptible() 94 dev_dbg(sst_drv_ctx->dev, "event up\n"); in sst_wait_interruptible() 98 dev_err(sst_drv_ctx in sst_wait_interruptible() 64 sst_set_fw_state_locked( struct intel_sst_drv *sst_drv_ctx, int sst_state) sst_set_fw_state_locked() argument 114 sst_wait_timeout(struct intel_sst_drv *sst_drv_ctx, struct sst_block *block) sst_wait_timeout() argument 186 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 354 sst_validate_strid( struct intel_sst_drv *sst_drv_ctx, int str_id) sst_validate_strid() argument 367 get_stream_info( struct intel_sst_drv *sst_drv_ctx, int str_id) get_stream_info() argument 375 get_stream_id_mrfld(struct intel_sst_drv *sst_drv_ctx, u32 pipe_id) get_stream_id_mrfld() argument [all...] |
H A D | sst_pci.c | 115 struct intel_sst_drv *sst_drv_ctx; in intel_sst_probe() local 119 ret = sst_alloc_drv_context(&sst_drv_ctx, &pci->dev, pci->device); in intel_sst_probe() 123 sst_drv_ctx->pdata = sst_pdata; in intel_sst_probe() 124 sst_drv_ctx->irq_num = pci->irq; in intel_sst_probe() 125 snprintf(sst_drv_ctx->firmware_name, sizeof(sst_drv_ctx->firmware_name), in intel_sst_probe() 127 sst_drv_ctx->dev_id, ".bin"); in intel_sst_probe() 129 ret = sst_context_init(sst_drv_ctx); in intel_sst_probe() 136 dev_err(sst_drv_ctx->dev, in intel_sst_probe() 140 sst_drv_ctx in intel_sst_probe() 166 struct intel_sst_drv *sst_drv_ctx = pci_get_drvdata(pci); intel_sst_remove() local [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, 449 int sst_drain_stream(struct intel_sst_drv *sst_drv_ctx, 451 int sst_post_message_mrfld(struct intel_sst_drv *sst_drv_ctx, 453 void sst_process_reply_mrfld(struct intel_sst_drv *sst_drv_ctx, struc [all...] |