Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/boards/imx8mp_evk_mimx8ml8_adsp.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ CONFIG_FORMAT_CONVERT_HIFI3=n
CONFIG_KPB_FORCE_COPY_TYPE_NORMAL=n
CONFIG_DMA=y
CONFIG_DMA_NXP_SDMA=y
CONFIG_DAI_NXP_MICFIL=y
CONFIG_TRACE=n
CONFIG_SHARED_INTERRUPTS=y
CONFIG_ZEPHYR_NATIVE_DRIVERS=y
Expand Down
4 changes: 4 additions & 0 deletions app/boards/imx8mp_evk_mimx8ml8_adsp.overlay
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,7 @@
rx-sync-mode = <1>;
status = "okay";
};

&micfil {
status = "okay";
};
5 changes: 5 additions & 0 deletions src/audio/dai-zephyr.c
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,10 @@ int dai_set_config(struct dai *dai, struct ipc_config_dai *common_config,
cfg.type = DAI_IMX_ESAI;
cfg_params = &sof_cfg->esai;
break;
case SOF_DAI_IMX_MICFIL:
cfg.type = DAI_IMX_MICFIL;
cfg_params = &sof_cfg->micfil;
break;
default:
return -EINVAL;
}
Expand Down Expand Up @@ -708,6 +712,7 @@ static int dai_get_dma_slot(struct dai_data *dd, struct comp_dev *dev, uint32_t
switch (cfg.type) {
case DAI_IMX_SAI:
case DAI_IMX_ESAI:
case DAI_IMX_MICFIL:
*slot = (hs & GENMASK(15, 8)) >> 8;
break;
default:
Expand Down
4 changes: 4 additions & 0 deletions src/ipc/ipc3/dai.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,10 @@ int dai_config_dma_channel(struct dai_data *dd, struct comp_dev *dev, const void
case SOF_DAI_IMX_MICFIL:
channel = dai_get_handshake(dd->dai, dai->direction,
dd->stream_id);
/* TODO: remove ifdef when transitioning to native drivers is complete on all NXP platforms */
#ifdef CONFIG_ZEPHYR_NATIVE_DRIVERS
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice to have an inline comment here stating why this is needed.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sure.

channel = channel & GENMASK(7, 0);
#endif
break;
case SOF_DAI_AMD_BT:
channel = dai_get_handshake(dd->dai, dai->direction,
Expand Down
6 changes: 5 additions & 1 deletion src/lib/dai.c
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,9 @@ const struct device *zephyr_dev[] = {
#if CONFIG_DAI_NXP_ESAI
DT_FOREACH_STATUS_OKAY(nxp_dai_esai, GET_DEVICE_LIST)
#endif
#if CONFIG_DAI_NXP_MICFIL
DT_FOREACH_STATUS_OKAY(nxp_dai_micfil, GET_DEVICE_LIST)
#endif
};

/* convert sof_ipc_dai_type to Zephyr dai_type */
Expand All @@ -175,10 +178,11 @@ static int sof_dai_type_to_zephyr(uint32_t type)
return DAI_AMD_DMIC;
case SOF_DAI_MEDIATEK_AFE:
return DAI_MEDIATEK_AFE;
case SOF_DAI_IMX_MICFIL:
return DAI_IMX_MICFIL;
case SOF_DAI_AMD_HS:
case SOF_DAI_AMD_SP_VIRTUAL:
case SOF_DAI_AMD_HS_VIRTUAL:
case SOF_DAI_IMX_MICFIL:
case SOF_DAI_AMD_SW_AUDIO:
return -ENOTSUP;
default:
Expand Down
4 changes: 2 additions & 2 deletions tools/topology/topology1/sof-imx8mp-micfil.m4
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ include(`platform/imx/imx8.m4')
# Capture pipeline 3 on PCM 1 using max 4 channels of s32le.
PIPELINE_PCM_ADD(sof/pipe-passthrough-capture.m4,
1, 0, 4, s32le,
2000, 0, 0,
1000, 0, 0,
48000, 48000, 48000)

DAI_ADD(sof/pipe-dai-capture.m4, 1, MICFIL, 2, micfil-dmic-hifi,
PIPELINE_SINK_1, 2, s32le, 2000, 0, 0, SCHEDULE_TIME_DOMAIN_DMA)
PIPELINE_SINK_1, 2, s32le, 1000, 0, 0, SCHEDULE_TIME_DOMAIN_TIMER)

dnl DAI_CONFIG(type, dai_index, link_id, name, acpdmic_config)
DAI_CONFIG(MICFIL, 0, 0, micfil-dmic-hifi,
Expand Down
2 changes: 1 addition & 1 deletion west.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ manifest:

- name: zephyr
repo-path: zephyr
revision: 42701fdb27298d20b4040cea5cde375b72c27cfc
revision: aaa119d75729410ae70fc8ba188634c23214f804
remote: zephyrproject

# Import some projects listed in zephyr/west.yml@revision
Expand Down
Loading