From: Jason-JH Lin <jason-jh.lin@mediatek.com>
To: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Jassi Brar <jassisinghbrar@gmail.com>,
Chun-Kuang Hu <chunkuang.hu@kernel.org>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: devicetree@vger.kernel.org, Moudy Ho <moudy.ho@mediatek.com>,
Xiandong Wang <xiandong.wang@mediatek.com>,
Jason-JH Lin <jason-jh.lin@mediatek.com>,
Singo Chang <singo.chang@mediatek.com>,
Chen-yu Tsai <wenst@chromium.org>,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
Project_Global_Chrome_Upstream_Group@mediatek.com,
Paul-PL Chen <paul-pl.chen@mediatek.com>,
Xavier Chang <xavier.chang@mediatek.com>,
Nancy Lin <nancy.lin@mediatek.com>,
linux-mediatek@lists.infradead.org,
Sirius Wang <sirius.wang@mediatek.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
linux-arm-kernel@lists.infradead.org,
linux-media@vger.kernel.org
Subject: [PATCH RESEND v5 00/20] Add GCE support for MT8196
Date: Mon, 12 May 2025 17:19:22 +0800 [thread overview]
Message-ID: <20250512092252.905629-1-jason-jh.lin@mediatek.com> (raw)
This patch series adds support for the MediaTek MT8196 SoC in the CMDQ
driver and related subsystems. The changes include adding compatible
names and iommus property, updating driver data to accommodate hardware
changes, and modifying the usage of CMDQ APIs to support non-subsys ID
hardware.
---
Change in RESEND v5:
1. Separate the removal of cmdq_get_shift_pa() from [PATCH v5 03/19] to a
single patch [PATCH RESEND v5 10/20].
Change in v5:
1. Rebase on tag: next-20250424 + patch [1].
2. Split adding driver data for MT8196 patch to 3 independent patch
and add more detail commit message to each patch.
3. Refine passing shift_pa as the parameter in API to storing it into
the cmdq_pkt.
4. Refine DMA address potential issue in cmdq mailbox driver.
5. Change the mminfra_offset related mbox API to passing it by cmdq_pkt.
6. Add new cmdq_pkt_write_pa() and cmdq_pkt_write_subsys() APIs to
replace the cmdq_pkt_write().
[1] mailbox: mtk-cmdq: Refine GCE_GCTL_VALUE setting
- https://patchwork.kernel.org/project/linux-mediatek/patch/20250421035650.441383-1-jason-jh.lin@mediatek.com/
Change in v4:
1. Remove dt-binding header and add a gce header in dts folder.
2. Remove dot in sign-off name.
3. Change addr type from u32 to dma_addr_t for cmdq_reg_shift_addr() and
cmdq_reg_revert_addr().
Change in v3:
1. Merge 2 dt-bindings pathes together and add more detail commit message.
2. Change type u32 to phys_addr_t for pa_base of struct cmdq_client_reg.
3. Remove cmdq_subsys_is_valid() and subsys_num in CMDQ driver.
4. Add CMDQ_SUBSYS_INVALID to check subsys instead of using
cmdq_subsys_is_invalid().
5. Make use of CMDQ_THR_SPR0 define to the parameter of CMDQ APIs.
6. Rebase on the new MACRO in mtk-mdp3-comp.h.
Change in v2:
1. Remove the constant and fix warning in dt-bindings.
2. Remove the pa_base parameter of CMDQ APIs and related modification.
3. Move subsys checking to client drivers and use 2 alternative
CMDQ APIs to achieve the same functionality.
---
Jason-JH Lin (20):
arm64: dts: mediatek: Add GCE header for MT8196
mailbox: mtk-cmdq: Refine DMA address handling for the command buffer
mailbox: mtk-cmdq: Add cmdq private data to cmdq_pkt for generating
instruction
soc: mediatek: mtk-cmdq: Add cmdq_get_mbox_priv() in cmdq_pkt_create()
soc: mediatek: mtk-cmdq: Add cmdq_pkt_jump_rel_temp() for removing
shift_pa
media: platform: mtk-mdp3: Change cmdq_pkt_jump_rel() to
cmdq_pkt_jump_rel_temp()
soc: mediatek: mtk-cmdq: Remove shift_pa parameter from
cmdq_pkt_jump()
media: platform: mtk-mdp3: Use cmdq_pkt_jump_rel() without shift_pa
soc: mediatek: mtk-cmdq: Remove cmdq_pkt_jump() and
cmdq_pkt_jump_rel_temp()
mailbox: mtk-cmdq: Remove unsued cmdq_get_shift_pa()
mailbox: mtk-cmdq: Add GCE hardware virtualization configuration
mailbox: mtk-cmdq: Add mminfra_offset configuration for DRAM
transaction
mailbox: mtk-cmdq: Add driver data to support for MT8196
soc: mediatek: mtk-cmdq: Add pa_base parsing for hardware without
subsys ID support
soc: mediatek: mtk-cmdq: Add new APIs to replace cmdq_pkt_write() and
cmdq_pkt_write_mask()
soc: mediatek: mtk-cmdq: Add mminfra_offset adjustment for DRAM
addresses
soc: mediatek: Add programming flow for unsupported subsys ID hardware
drm/mediatek: Add programming flow for unsupported subsys ID hardware
media: mediatek: mdp3: Add programming flow for unsupported subsys ID
hardware
soc: mediatek: mtk-cmdq: Remove cmdq_pkt_write() and
cmdq_pkt_write_mask()
arch/arm64/boot/dts/mediatek/mt8196-gce.h | 612 ++++++++++++++++++
drivers/gpu/drm/mediatek/mtk_ddp_comp.c | 24 +-
drivers/mailbox/mtk-cmdq-mailbox.c | 115 +++-
.../platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 16 +-
.../platform/mediatek/mdp3/mtk-mdp3-comp.h | 70 +-
.../platform/mediatek/mdp3/mtk-mdp3-core.c | 2 -
.../platform/mediatek/mdp3/mtk-mdp3-core.h | 1 -
drivers/soc/mediatek/mtk-cmdq-helper.c | 68 +-
drivers/soc/mediatek/mtk-mmsys.c | 12 +-
drivers/soc/mediatek/mtk-mutex.c | 8 +-
include/linux/mailbox/mtk-cmdq-mailbox.h | 19 +-
include/linux/soc/mediatek/mtk-cmdq.h | 83 ++-
12 files changed, 941 insertions(+), 89 deletions(-)
create mode 100644 arch/arm64/boot/dts/mediatek/mt8196-gce.h
--
2.43.0
next reply other threads:[~2025-05-12 9:28 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-12 9:19 Jason-JH Lin [this message]
2025-05-12 9:19 ` [PATCH RESEND v5 01/20] arm64: dts: mediatek: Add GCE header for MT8196 Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 02/20] mailbox: mtk-cmdq: Refine DMA address handling for the command buffer Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 03/20] mailbox: mtk-cmdq: Add cmdq private data to cmdq_pkt for generating instruction Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 04/20] soc: mediatek: mtk-cmdq: Add cmdq_get_mbox_priv() in cmdq_pkt_create() Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 05/20] soc: mediatek: mtk-cmdq: Add cmdq_pkt_jump_rel_temp() for removing shift_pa Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 06/20] media: platform: mtk-mdp3: Change cmdq_pkt_jump_rel() to cmdq_pkt_jump_rel_temp() Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 07/20] soc: mediatek: mtk-cmdq: Remove shift_pa parameter from cmdq_pkt_jump() Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 08/20] media: platform: mtk-mdp3: Use cmdq_pkt_jump_rel() without shift_pa Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 09/20] soc: mediatek: mtk-cmdq: Remove cmdq_pkt_jump() and cmdq_pkt_jump_rel_temp() Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 10/20] mailbox: mtk-cmdq: Remove unsued cmdq_get_shift_pa() Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 11/20] mailbox: mtk-cmdq: Add GCE hardware virtualization configuration Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 12/20] mailbox: mtk-cmdq: Add mminfra_offset configuration for DRAM transaction Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 13/20] mailbox: mtk-cmdq: Add driver data to support for MT8196 Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 14/20] soc: mediatek: mtk-cmdq: Add pa_base parsing for hardware without subsys ID support Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 15/20] soc: mediatek: mtk-cmdq: Add new APIs to replace cmdq_pkt_write() and cmdq_pkt_write_mask() Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 16/20] soc: mediatek: mtk-cmdq: Add mminfra_offset adjustment for DRAM addresses Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 17/20] soc: mediatek: Add programming flow for unsupported subsys ID hardware Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 18/20] drm/mediatek: " Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 19/20] media: mediatek: mdp3: " Jason-JH Lin
2025-05-12 9:19 ` [PATCH RESEND v5 20/20] soc: mediatek: mtk-cmdq: Remove cmdq_pkt_write() and cmdq_pkt_write_mask() Jason-JH Lin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250512092252.905629-1-jason-jh.lin@mediatek.com \
--to=jason-jh.lin@mediatek.com \
--cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=chunkuang.hu@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=jassisinghbrar@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=matthias.bgg@gmail.com \
--cc=mchehab@kernel.org \
--cc=moudy.ho@mediatek.com \
--cc=nancy.lin@mediatek.com \
--cc=paul-pl.chen@mediatek.com \
--cc=robh@kernel.org \
--cc=singo.chang@mediatek.com \
--cc=sirius.wang@mediatek.com \
--cc=wenst@chromium.org \
--cc=xavier.chang@mediatek.com \
--cc=xiandong.wang@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox