From patchwork Thu Feb 24 13:30:43 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen-KH Cheng X-Patchwork-Id: 12758585 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5B0AAC433F5 for ; Thu, 24 Feb 2022 13:32:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:CC :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=1mhKrMl11q34hTwuOqvgNFh9neJzSHNc8j7zlKA0pa8=; b=MXzDh/jobEvQ2D nNwePuqpnn/fCTsNp3ACoSPcau1jfgDBZ0LSSorbBkoVP0HGAH0PWU65j3AWNYaBnYPf3nGgFUXJD 8XywMX7Mj7sv194Vk7WXMSQ2inHCbgybCQz32NMts1+arJ1yxSQljHAN8aXoqVu7AcMc1j0pqqiVU RbswJfICBunBNFDnEBRJenBqKeQRiSj4WtQo3YMSiyjs+bzlHYPLs5xyasJKkhpr5vrBIYE784MlX bqnx0/WVCU6znWTYKAGBBSJW0mqERkRl/4i8b+9+I0v0+6MTolZAFBx1UlQ6d2jytnkUSuA1/TwMJ jEo1gp0sPQJc+slbWkfQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nNED5-000vxk-Nv; Thu, 24 Feb 2022 13:31:07 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nNED2-000vw8-Ui; Thu, 24 Feb 2022 13:31:06 +0000 X-UUID: 70c11cfbd12545159780aab9d61e2c04-20220224 X-UUID: 70c11cfbd12545159780aab9d61e2c04-20220224 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 1561274068; Thu, 24 Feb 2022 06:30:55 -0700 Received: from MTKMBS07N2.mediatek.inc (172.21.101.141) by MTKMBS62DR.mediatek.inc (172.29.94.18) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 24 Feb 2022 05:30:53 -0800 Received: from mtkcas11.mediatek.inc (172.21.101.40) by mtkmbs07n2.mediatek.inc (172.21.101.141) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 24 Feb 2022 21:30:50 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas11.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 24 Feb 2022 21:30:50 +0800 From: Allen-KH Cheng To: Jassi Brar , Rob Herring , Matthias Brugger CC: Jassi Brar , Linux-ALSA , , , Pierre-Louis Bossart , Liam Girdwood , Ranjani Sridharan , Kai Vehmanen , Daniel Baluta , "Mark Brown" , Jaroslav Kysela , Takashi Iwai , Chen-Yu Tsai , Kevin Hilman , , , , , , , Allen-KH Cheng Subject: [RESEND v17 0/2] mtk: add ADSP mailbox controller for MT8195 Date: Thu, 24 Feb 2022 21:30:43 +0800 Message-ID: <20220224133045.23903-1-allen-kh.cheng@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220224_053105_008235_F473919C X-CRM114-Status: GOOD ( 13.58 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org 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 tag: next-20220223, linux-next/master 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: mtk,adsp-mbox: 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