mailman.alsa-project.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

Sound-open-firmware

Thread Start a new thread
Download
Threads by month
  • ----- 2025 -----
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
sound-open-firmware@alsa-project.org

January 2022

  • 10 participants
  • 20 discussions
[Sound-open-firmware] [PATCH v17 0/2] mtk: add ADSP mailbox controller for MT8195
by allen-kh.cheng 15 Feb '22

15 Feb '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> Mediatek ADSP IPC is used to send notification or short message between processors with dsp. It will place the message to the share buffer and will access the ADSP mailbox registers to kick dsp. Two mailboxes used to send notification or short message between processors with dsp. This patchset was tested and confirmed on MT8195 cherry board. Based on linux-next changes since v16: - fix WARNING: modpost: missing MODULE_LICENSE() in drivers/mailbox /mtk-adsp-mailbox.o. Add MODULE_LICENSE in the last line. - Due to WARNING: Missing or malformed SPDX-License-Identifier tag in line 1 in checkpatch, we don't remove SPDX-License in line 1. changes since v15: - add paragraphs to describe the config symbols fully changes since v14: - add inline for get_mtk_adsp_mbox_priv changes since v13: - rebase on v5.16-rc8 - add back ptr check from of_device_get_match_data changes since v12: - remove of_device_get_match_data ptr check: of_device_get_match_data(dev) will never going to return NULL. driver probe with compatible mediatek,mt8195-adsp-mbox. changes since v11: - remove useless MODULE_LICENSE changes since v10: - split up v9 into two separate submissions changes since v9: - rename adsp_mbox_chan_ops to mtk_adsp_mbox_chan_ops changes since v8: - remove struct adsp_mbox_ch_info - add get_mtk_adsp_mbox_priv - use mtk_adsp_mbox_priv va_mboxreg address in adsp mbox driver - add struct mtk_adsp_mbox_cfg for DSP mbox register offset - remove adsp mbox register offset hard code define - remove mtk-adsp-ipc.h reference in adsp mbox driver changes since v7: - add mtk prefix for adsp ipc functions - rename adsp_mbox_ch_info to mtk_adsp_mbox_ch_info - remove incorrect reviewers in commit message changes since v6: - dt-bindings: change example dtsi node. - rename config MTK_ADSP_IPC_MBOX to MTK_ADSP_MBOX - remove unused variable - add reviewers changes since v5: - remove some redundant code changes since v4: - use switch ... case in adsp_ipc_recv - add error handling path for chan_name pointer - refine some code to be concise changes since v3: - reorder MTK_ADSP_IPC_MBOX config - remove some redundant code - remove lock in mtk-adsp-mailbox changes since v2: - separate adsp_mailbox into two instances changes since v1: - fix dt_binding_check error Allen-KH Cheng (2): dt-bindings: mailbox: add mtk adsp-mbox document mailbox: mediatek: add support for adsp mailbox controller .../bindings/mailbox/mtk,adsp-mbox.yaml | 52 ++++++ drivers/mailbox/Kconfig | 9 + drivers/mailbox/Makefile | 2 + drivers/mailbox/mtk-adsp-mailbox.c | 176 ++++++++++++++++++ 4 files changed, 239 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/mtk,adsp-mbox.yaml create mode 100644 drivers/mailbox/mtk-adsp-mailbox.c -- 2.18.0
2 4
0 0
[Sound-open-firmware] [PATCH v6 0/1] firmware: mtk: add adsp ipc protocol for sof
by allen-kh.cheng 31 Jan '22

31 Jan '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> This patch provides mtk adsp ipc support for sof. ADSP IPC protocol offers (send/recv) interfaces using mediatek-mailbox APIs. This was tested and confirmed on MT8195 cherry board with sof. Based on linux-next changes since v5: - fix WARNING: modpost: missing MODULE_LICENSE() in drivers/mailbox /mtk-adsp-mailbox.o. Add MODULE_LICENSE in the last line. - Due to WARNING: Missing or malformed SPDX-License-Identifier tag in line 1 in checkpatch, we don't remove SPDX-License in line 1. changes since v4: - add error message for wrong mbox chan changes since v3: - rebase on v5.16-rc8 - update reviewers changes since v2: - add out tag for two memory free phases changes since v1: - add comments for mtk_adsp_ipc_send and mtk_adsp_ipc_recv - remove useless MODULE_LICENSE - change label name to out_free Allen-KH Cheng (1): firmware: mediatek: add adsp ipc protocol interface drivers/firmware/Kconfig | 1 + drivers/firmware/Makefile | 1 + drivers/firmware/mediatek/Kconfig | 9 + drivers/firmware/mediatek/Makefile | 2 + drivers/firmware/mediatek/mtk-adsp-ipc.c | 161 ++++++++++++++++++ .../linux/firmware/mediatek/mtk-adsp-ipc.h | 65 +++++++ 6 files changed, 239 insertions(+) create mode 100644 drivers/firmware/mediatek/Kconfig create mode 100644 drivers/firmware/mediatek/Makefile create mode 100644 drivers/firmware/mediatek/mtk-adsp-ipc.c create mode 100644 include/linux/firmware/mediatek/mtk-adsp-ipc.h -- 2.18.0
2 2
0 0
[Sound-open-firmware] [PATCH v2 0/2] SOF: Add compress support implementation
by Daniel Baluta 19 Jan '22

19 Jan '22
From: Daniel Baluta <daniel.baluta(a)nxp.com> This patch series adds compress operations support. This is tested with SOF (codec_adapter component enabled) and i.MX8/8X/8M boards. Changes since v1: (https://lore.kernel.org/lkml/20220113161341.371345-1-daniel.baluta@oss.nxp.…) - Addressed review from Cezary and Pierre - fixed layout of declaration blocks to be more consistent - avoid using rtd and runtime simultaneously inside a function (always used rtd and crtd) - check return code for create_page_table - completely remove sof_compr_stream and use snd_compr_tstmap instead to keep compress stream related info.· - add get_caps and get_codec_caps implementations (in patch 2) Daniel Baluta (1): ASoC: SOF: compr: Add compress ops implementation Paul Olaru (1): ASoC: SOF: compress: Implement get_caps and get_codec_caps sound/soc/sof/compress.c | 347 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 345 insertions(+), 2 deletions(-) -- 2.27.0
3 5
0 0
[Sound-open-firmware] [PATCH v16 0/2] mtk: add ADSP mailbox controller for MT8195
by allen-kh.cheng 18 Jan '22

18 Jan '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> Mediatek ADSP IPC is used to send notification or short message between processors with dsp. It will place the message to the share buffer and will access the ADSP mailbox registers to kick dsp. Two mailboxes used to send notification or short message between processors with dsp changes since v14: - add paragraphs to describe the config symbols fully changes since v14: - add inline for get_mtk_adsp_mbox_priv changes since v13: - rebase on v5.16-rc8 - add back ptr check from of_device_get_match_data changes since v12: - remove of_device_get_match_data ptr check: of_device_get_match_data(dev) will never going to return NULL. driver probe with compatible mediatek,mt8195-adsp-mbox. changes since v11: - remove useless MODULE_LICENSE changes since v10: - split up v9 into two separate submissions changes since v9: - rename adsp_mbox_chan_ops to mtk_adsp_mbox_chan_ops changes since v8: - remove struct adsp_mbox_ch_info - add get_mtk_adsp_mbox_priv - use mtk_adsp_mbox_priv va_mboxreg address in adsp mbox driver - add struct mtk_adsp_mbox_cfg for DSP mbox register offset - remove adsp mbox register offset hard code define - remove mtk-adsp-ipc.h reference in adsp mbox driver changes since v7: - add mtk prefix for adsp ipc functions - rename adsp_mbox_ch_info to mtk_adsp_mbox_ch_info - remove incorrect reviewers in commit message changes since v6: - dt-bindings: change example dtsi node. - rename config MTK_ADSP_IPC_MBOX to MTK_ADSP_MBOX - remove unused variable - add reviewers changes since v5: - remove some redundant code changes since v4: - use switch ... case in adsp_ipc_recv - add error handling path for chan_name pointer - refine some code to be concise changes since v3: - reorder MTK_ADSP_IPC_MBOX config - remove some redundant code - remove lock in mtk-adsp-mailbox changes since v2: - separate adsp_mailbox into two instances changes since v1: - fix dt_binding_check error Allen-KH Cheng (2): dt-bindings: mediatek: add adsp-mbox document mailbox: mediatek: add support for adsp mailbox controller .../bindings/mailbox/mtk,adsp-mbox.yaml | 52 ++++++ drivers/mailbox/Kconfig | 9 + drivers/mailbox/Makefile | 2 + drivers/mailbox/mtk-adsp-mailbox.c | 175 ++++++++++++++++++ 4 files changed, 238 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/mtk,adsp-mbox.yaml create mode 100644 drivers/mailbox/mtk-adsp-mailbox.c -- 2.18.0
1 2
0 0
[Sound-open-firmware] [PATCH v5 0/1] firmware: mtk: add adsp ipc protocol for sof
by allen-kh.cheng 18 Jan '22

18 Jan '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> This patch provides mtk adsp ipc support for sof. ADSP IPC protocol offers (send/recv) interfaces using mediatek-mailbox APIs. changes since v4: - add error message for wrong mbox chan changes since v3: - rebase on v5.16-rc8 - update reviewers changes since v2: - add out tag for two memory free phases changes since v1: - add comments for mtk_adsp_ipc_send and mtk_adsp_ipc_recv - remove useless MODULE_LICENSE - change label name to out_free Allen-KH Cheng (1): firmware: mediatek: add adsp ipc protocol interface drivers/firmware/Kconfig | 1 + drivers/firmware/Makefile | 1 + drivers/firmware/mediatek/Kconfig | 9 + drivers/firmware/mediatek/Makefile | 2 + drivers/firmware/mediatek/mtk-adsp-ipc.c | 160 ++++++++++++++++++ .../linux/firmware/mediatek/mtk-adsp-ipc.h | 65 +++++++ 6 files changed, 238 insertions(+) create mode 100644 drivers/firmware/mediatek/Kconfig create mode 100644 drivers/firmware/mediatek/Makefile create mode 100644 drivers/firmware/mediatek/mtk-adsp-ipc.c create mode 100644 include/linux/firmware/mediatek/mtk-adsp-ipc.h -- 2.18.0
1 1
0 0
[Sound-open-firmware] [PATCH AUTOSEL 5.16 38/52] ASoC: SOF: ipc: Add null pointer check for substream->runtime
by Sasha Levin 17 Jan '22

17 Jan '22
From: Ajit Kumar Pandey <AjitKumar.Pandey(a)amd.com> [ Upstream commit 182b682b9ab1348e07ea1bf9d8f2505cc67f9237 ] When pcm stream is stopped "substream->runtime" pointer will be set to NULL by ALSA core. In case host received an ipc msg from firmware of type IPC_STREAM_POSITION after pcm stream is stopped, there will be kernel NULL pointer exception in ipc_period_elapsed(). This patch fixes it by adding NULL pointer check for "substream->runtime". Reviewed-by: Ranjani Sridharan <ranjani.sridharan(a)linux.intel.com> Signed-off-by: Ajit Kumar Pandey <AjitKumar.Pandey(a)amd.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart(a)linux.intel.com> Link: https://lore.kernel.org/r/20211216232422.345164-3-pierre-louis.bossart@linu… Signed-off-by: Mark Brown <broonie(a)kernel.org> Signed-off-by: Sasha Levin <sashal(a)kernel.org> --- sound/soc/sof/ipc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/sof/ipc.c b/sound/soc/sof/ipc.c index e6c53c6c470e4..ca30c506a0fd6 100644 --- a/sound/soc/sof/ipc.c +++ b/sound/soc/sof/ipc.c @@ -547,7 +547,8 @@ static void ipc_period_elapsed(struct snd_sof_dev *sdev, u32 msg_id) if (spcm->pcm.compress) snd_sof_compr_fragment_elapsed(stream->cstream); - else if (!stream->substream->runtime->no_period_wakeup) + else if (stream->substream->runtime && + !stream->substream->runtime->no_period_wakeup) /* only inform ALSA for period_wakeup mode */ snd_sof_pcm_period_elapsed(stream->substream); } -- 2.34.1
1 0
0 0
[Sound-open-firmware] [PATCH AUTOSEL 5.16 31/52] ASoC: SOF: Intel: hda: add quirks for HDAudio DMA position information
by Sasha Levin 17 Jan '22

17 Jan '22
From: Pierre-Louis Bossart <pierre-louis.bossart(a)linux.intel.com> [ Upstream commit 288fad2f71fa0b989c075d4984879c26d47cfb06 ] The code inherited from the Skylake driver does not seem to follow any known hardware recommendations. The only two recommended options are a) use DPIB registers if VC1 traffic is not allowed b) use DPIB DDR update if VC1 traffic is used In all of SOF-based updated, VC1 is not supported so we can 'safely' move to using DPIB registers only. This patch keeps the legacy code, in case there was an undocumented issue lost to history, and adds the DPIB DDR update for additional debug. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart(a)linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan(a)linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi(a)linux.intel.com> Link: https://lore.kernel.org/r/20211207193947.71080-6-pierre-louis.bossart@linux… Signed-off-by: Mark Brown <broonie(a)kernel.org> Signed-off-by: Sasha Levin <sashal(a)kernel.org> --- sound/soc/sof/intel/hda-pcm.c | 86 +++++++++++++++++++++++++---------- sound/soc/sof/intel/hda.c | 9 +++- sound/soc/sof/intel/hda.h | 6 +++ 3 files changed, 75 insertions(+), 26 deletions(-) diff --git a/sound/soc/sof/intel/hda-pcm.c b/sound/soc/sof/intel/hda-pcm.c index cc8ddef37f37b..41cb60955f5c1 100644 --- a/sound/soc/sof/intel/hda-pcm.c +++ b/sound/soc/sof/intel/hda-pcm.c @@ -172,38 +172,74 @@ snd_pcm_uframes_t hda_dsp_pcm_pointer(struct snd_sof_dev *sdev, goto found; } - /* - * DPIB/posbuf position mode: - * For Playback, Use DPIB register from HDA space which - * reflects the actual data transferred. - * For Capture, Use the position buffer for pointer, as DPIB - * is not accurate enough, its update may be completed - * earlier than the data written to DDR. - */ - if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { + switch (sof_hda_position_quirk) { + case SOF_HDA_POSITION_QUIRK_USE_SKYLAKE_LEGACY: + /* + * This legacy code, inherited from the Skylake driver, + * mixes DPIB registers and DPIB DDR updates and + * does not seem to follow any known hardware recommendations. + * It's not clear e.g. why there is a different flow + * for capture and playback, the only information that matters is + * what traffic class is used, and on all SOF-enabled platforms + * only VC0 is supported so the work-around was likely not necessary + * and quite possibly wrong. + */ + + /* DPIB/posbuf position mode: + * For Playback, Use DPIB register from HDA space which + * reflects the actual data transferred. + * For Capture, Use the position buffer for pointer, as DPIB + * is not accurate enough, its update may be completed + * earlier than the data written to DDR. + */ + if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { + pos = snd_sof_dsp_read(sdev, HDA_DSP_HDA_BAR, + AZX_REG_VS_SDXDPIB_XBASE + + (AZX_REG_VS_SDXDPIB_XINTERVAL * + hstream->index)); + } else { + /* + * For capture stream, we need more workaround to fix the + * position incorrect issue: + * + * 1. Wait at least 20us before reading position buffer after + * the interrupt generated(IOC), to make sure position update + * happens on frame boundary i.e. 20.833uSec for 48KHz. + * 2. Perform a dummy Read to DPIB register to flush DMA + * position value. + * 3. Read the DMA Position from posbuf. Now the readback + * value should be >= period boundary. + */ + usleep_range(20, 21); + snd_sof_dsp_read(sdev, HDA_DSP_HDA_BAR, + AZX_REG_VS_SDXDPIB_XBASE + + (AZX_REG_VS_SDXDPIB_XINTERVAL * + hstream->index)); + pos = snd_hdac_stream_get_pos_posbuf(hstream); + } + break; + case SOF_HDA_POSITION_QUIRK_USE_DPIB_REGISTERS: + /* + * In case VC1 traffic is disabled this is the recommended option + */ pos = snd_sof_dsp_read(sdev, HDA_DSP_HDA_BAR, AZX_REG_VS_SDXDPIB_XBASE + (AZX_REG_VS_SDXDPIB_XINTERVAL * hstream->index)); - } else { + break; + case SOF_HDA_POSITION_QUIRK_USE_DPIB_DDR_UPDATE: /* - * For capture stream, we need more workaround to fix the - * position incorrect issue: - * - * 1. Wait at least 20us before reading position buffer after - * the interrupt generated(IOC), to make sure position update - * happens on frame boundary i.e. 20.833uSec for 48KHz. - * 2. Perform a dummy Read to DPIB register to flush DMA - * position value. - * 3. Read the DMA Position from posbuf. Now the readback - * value should be >= period boundary. + * This is the recommended option when VC1 is enabled. + * While this isn't needed for SOF platforms it's added for + * consistency and debug. */ - usleep_range(20, 21); - snd_sof_dsp_read(sdev, HDA_DSP_HDA_BAR, - AZX_REG_VS_SDXDPIB_XBASE + - (AZX_REG_VS_SDXDPIB_XINTERVAL * - hstream->index)); pos = snd_hdac_stream_get_pos_posbuf(hstream); + break; + default: + dev_err_once(sdev->dev, "hda_position_quirk value %d not supported\n", + sof_hda_position_quirk); + pos = 0; + break; } if (pos >= hstream->bufsize) diff --git a/sound/soc/sof/intel/hda.c b/sound/soc/sof/intel/hda.c index 2c0d4d06ab364..25200a0e1dc9d 100644 --- a/sound/soc/sof/intel/hda.c +++ b/sound/soc/sof/intel/hda.c @@ -440,6 +440,10 @@ MODULE_PARM_DESC(use_msi, "SOF HDA use PCI MSI mode"); #define hda_use_msi (1) #endif +int sof_hda_position_quirk = SOF_HDA_POSITION_QUIRK_USE_DPIB_REGISTERS; +module_param_named(position_quirk, sof_hda_position_quirk, int, 0444); +MODULE_PARM_DESC(position_quirk, "SOF HDaudio position quirk"); + static char *hda_model; module_param(hda_model, charp, 0444); MODULE_PARM_DESC(hda_model, "Use the given HDA board model."); @@ -618,7 +622,10 @@ static int hda_init(struct snd_sof_dev *sdev) /* HDA bus init */ sof_hda_bus_init(bus, &pci->dev); - bus->use_posbuf = 1; + if (sof_hda_position_quirk == SOF_HDA_POSITION_QUIRK_USE_DPIB_REGISTERS) + bus->use_posbuf = 0; + else + bus->use_posbuf = 1; bus->bdl_pos_adj = 0; bus->sync_write = 1; diff --git a/sound/soc/sof/intel/hda.h b/sound/soc/sof/intel/hda.h index 1195018a1f4f5..dba4733ccf9ae 100644 --- a/sound/soc/sof/intel/hda.h +++ b/sound/soc/sof/intel/hda.h @@ -738,4 +738,10 @@ struct sof_ipc_dai_config; int hda_ctrl_dai_widget_setup(struct snd_soc_dapm_widget *w); int hda_ctrl_dai_widget_free(struct snd_soc_dapm_widget *w); +#define SOF_HDA_POSITION_QUIRK_USE_SKYLAKE_LEGACY (0) /* previous implementation */ +#define SOF_HDA_POSITION_QUIRK_USE_DPIB_REGISTERS (1) /* recommended if VC0 only */ +#define SOF_HDA_POSITION_QUIRK_USE_DPIB_DDR_UPDATE (2) /* recommended with VC0 or VC1 */ + +extern int sof_hda_position_quirk; + #endif -- 2.34.1
1 0
0 0
[Sound-open-firmware] [PATCH v15 0/2] mtk: add ADSP mailbox controller support for MT8195
by allen-kh.cheng 17 Jan '22

17 Jan '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> Mediatek ADSP IPC is used to send notification or short message between processors with dsp.· It will place the message to the share buffer and will access the ADSP mailbox registers to kick dsp. Two mailboxes used to send notification or short message between processors with dsp changes since v14: - add inline for get_mtk_adsp_mbox_priv changes since v13: - rebase on v5.16-rc8 - add back ptr check from of_device_get_match_data changes since v12: - remove of_device_get_match_data ptr check: of_device_get_match_data(dev) will never going to return NULL. driver probe with compatible mediatek,mt8195-adsp-mbox. changes since v11: - remove unuseful MODULE_LICENSE changes since v10: - split up v9 into two separate submissions https://patchwork.kernel.org/project/linux-mediatek/patch/20220111071011.59… changes since v9: - rename adsp_mbox_chan_ops to mtk_adsp_mbox_chan_ops changes since v8: - remove struct adsp_mbox_ch_info - add get_mtk_adsp_mbox_priv - use mtk_adsp_mbox_priv va_mboxreg address in adsp mbox driver - add struct mtk_adsp_mbox_cfg for DSP mbox register offset - remove adsp mbox register offset hard code define - remove mtk-adsp-ipc.h reference in adsp mbox driver changes since v7: - add mtk prefix for adsp ipc functions - rename adsp_mbox_ch_info to mtk_adsp_mbox_ch_info - remove incorrect reviewers in commit message changes since v6: - dt-bindings: change example dtsi node. - rename config MTK_ADSP_IPC_MBOX to MTK_ADSP_MBOX - remove unused variable - add reviewers changes since v5: - remove some redundant code changes since v4: - use switch ... case in adsp_ipc_recv - add error handling path for chan_name pointer - refine some code to be concise changes since v3: - reorder MTK_ADSP_IPC_MBOX config - remove some redundant code - remove lock in mtk-adsp-mailbox changes since v2: - separate adsp_mailbox into two instances changes since v1: - fix dt_binding_check error Allen-KH Cheng (2): dt-bindings: mediatek: add adsp-mbox document mailbox: mediatek: add support for adsp mailbox controller .../bindings/mailbox/mtk,adsp-mbox.yaml | 52 ++++++ drivers/mailbox/Kconfig | 7 + drivers/mailbox/Makefile | 2 + drivers/mailbox/mtk-adsp-mailbox.c | 175 ++++++++++++++++++ 4 files changed, 236 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/mtk,adsp-mbox.yaml create mode 100644 drivers/mailbox/mtk-adsp-mailbox.c -- 2.18.0
1 2
0 0
[Sound-open-firmware] [PATCH v14 0/2] mtk: add ADSP mailbox controller support for MT8195
by allen-kh.cheng 17 Jan '22

17 Jan '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> Mediatek ADSP IPC is used to send notification or short message between processors with dsp.· It will place the message to the share buffer and will access the ADSP mailbox registers to kick dsp. Two mailboxes used to send notification or short message between processors with dsp changes since v13: - rebase on v5.16-rc8 - add back ptr check from of_device_get_match_data changes since v12: - remove of_device_get_match_data ptr check: of_device_get_match_data(dev) will never going to return NULL. driver probe with compatible mediatek,mt8195-adsp-mbox. changes since v11: - remove unuseful MODULE_LICENSE changes since v10: - split up v9 into two separate submissions https://patchwork.kernel.org/project/linux-mediatek/patch/20220111071011.59… changes since v9: - rename adsp_mbox_chan_ops to mtk_adsp_mbox_chan_ops changes since v8: - remove struct adsp_mbox_ch_info - add get_mtk_adsp_mbox_priv - use mtk_adsp_mbox_priv va_mboxreg address in adsp mbox driver - add struct mtk_adsp_mbox_cfg for DSP mbox register offset - remove adsp mbox register offset hard code define - remove mtk-adsp-ipc.h reference in adsp mbox driver changes since v7: - add mtk prefix for adsp ipc functions - rename adsp_mbox_ch_info to mtk_adsp_mbox_ch_info - remove incorrect reviewers in commit message changes since v6: - dt-bindings: change example dtsi node. - rename config MTK_ADSP_IPC_MBOX to MTK_ADSP_MBOX - remove unused variable - add reviewers changes since v5: - remove some redundant code changes since v4: - use switch ... case in adsp_ipc_recv - add error handling path for chan_name pointer - refine some code to be concise changes since v3: - reorder MTK_ADSP_IPC_MBOX config - remove some redundant code - remove lock in mtk-adsp-mailbox changes since v2: - separate adsp_mailbox into two instances changes since v1: - fix dt_binding_check error Allen-KH Cheng (2): dt-bindings: mediatek: add adsp-mbox document mailbox: mediatek: add support for adsp mailbox controller .../bindings/mailbox/mtk,adsp-mbox.yaml | 52 ++++++ drivers/mailbox/Kconfig | 7 + drivers/mailbox/Makefile | 2 + drivers/mailbox/mtk-adsp-mailbox.c | 175 ++++++++++++++++++ 4 files changed, 236 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/mtk,adsp-mbox.yaml create mode 100644 drivers/mailbox/mtk-adsp-mailbox.c -- 2.18.0
2 4
0 0
[Sound-open-firmware] [PATCH v4 0/1] firmware: mtk: add adsp ipc protocol for sof
by allen-kh.cheng 14 Jan '22

14 Jan '22
From: Allen-KH Cheng <Allen-KH.Cheng(a)mediatek.com> This patch provides mtk adsp ipc support for sof. ADSP IPC protocol offers (send/recv) interfaces using mediatek-mailbox APIs. changes since v3: - rebase on v5.16-rc8 - update reviewers changes since v2: - add out tag for two memroy free phases changes since v1: - add comments for mtk_adsp_ipc_send and mtk_adsp_ipc_recv - remove unuseful MODULE_LICENSE - change label name to out_free Allen-KH Cheng (1): firmware: mediatek: add adsp ipc protocol interface drivers/firmware/Kconfig | 1 + drivers/firmware/Makefile | 1 + drivers/firmware/mediatek/Kconfig | 9 + drivers/firmware/mediatek/Makefile | 2 + drivers/firmware/mediatek/mtk-adsp-ipc.c | 160 ++++++++++++++++++ .../linux/firmware/mediatek/mtk-adsp-ipc.h | 65 +++++++ 6 files changed, 238 insertions(+) create mode 100644 drivers/firmware/mediatek/Kconfig create mode 100644 drivers/firmware/mediatek/Makefile create mode 100644 drivers/firmware/mediatek/mtk-adsp-ipc.c create mode 100644 include/linux/firmware/mediatek/mtk-adsp-ipc.h -- 2.18.0
1 1
0 0
  • ← Newer
  • 1
  • 2
  • Older →

HyperKitty Powered by HyperKitty version 1.3.8.