* Re: [PATCH v15 01/22] dt-bindings: mediatek: add vdosys1 RDMA definition for mt8195
[not found] ` <20220311015506.11232-2-nancy.lin@mediatek.com>
@ 2022-03-11 9:31 ` AngeloGioacchino Del Regno
0 siblings, 0 replies; 2+ messages in thread
From: AngeloGioacchino Del Regno @ 2022-03-11 9:31 UTC (permalink / raw)
To: Nancy.Lin, Rob Herring, Matthias Brugger, Chun-Kuang Hu,
Philipp Zabel, wim, linux
Cc: David Airlie, Daniel Vetter, Nathan Chancellor, Nick Desaulniers,
jason-jh . lin, Yongqiang Niu, devicetree, linux-kernel,
linux-arm-kernel, linux-mediatek, dri-devel, llvm, singo.chang,
srv_heupstream, Project_Global_Chrome_Upstream_Group
Il 11/03/22 02:54, Nancy.Lin ha scritto:
> Add vdosys1 RDMA definition.
>
> Signed-off-by: Nancy.Lin <nancy.lin@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> ---
> .../arm/mediatek/mediatek,mdp-rdma.yaml | 86 +++++++++++++++++++
> 1 file changed, 86 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,mdp-rdma.yaml
>
> diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,mdp-rdma.yaml b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mdp-rdma.yaml
> new file mode 100644
> index 000000000000..6ab773569462
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,mdp-rdma.yaml
> @@ -0,0 +1,86 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/arm/mediatek/mediatek,mdp-rdma.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Mediatek MDP RDMA
> +
> +maintainers:
> + - Matthias Brugger <matthias.bgg@gmail.com>
> +
> +description: |
> + The mediatek MDP RDMA stands for Read Direct Memory Access.
> + It provides real time data to the back-end panel driver, such as DSI,
> + DPI and DP_INTF.
> + It contains one line buffer to store the sufficient pixel data.
> + RDMA device node must be siblings to the central MMSYS_CONFIG node.
> + For a description of the MMSYS_CONFIG binding, see
> + Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml for details.
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - const: mediatek,mt8195-vdo1-rdma
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + power-domains:
> + description: A phandle and PM domain specifier as defined by bindings of
> + the power controller specified by phandle. See
> + Documentation/devicetree/bindings/power/power-domain.yaml for details.
> +
> + clocks:
> + items:
> + - description: RDMA Clock
> +
> + iommus:
> + description:
> + This property should point to the respective IOMMU block with master port as argument,
> + see Documentation/devicetree/bindings/iommu/mediatek,iommu.yaml for details.
> +
> + mediatek,gce-client-reg:
> + description:
> + The register of display function block to be set by gce. There are 4 arguments,
> + such as gce node, subsys id, offset and register size. The subsys id that is
> + mapping to the register of display function blocks is defined in the gce header
> + include/include/dt-bindings/gce/<chip>-gce.h of each chips.
> + $ref: /schemas/types.yaml#/definitions/phandle-array
> + maxItems: 1
> +
> +required:
> + - compatible
> + - reg
> + - power-domains
> + - clocks
> + - iommus
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/clock/mt8195-clk.h>
> + #include <dt-bindings/power/mt8195-power.h>
> + #include <dt-bindings/gce/mt8195-gce.h>
> + #include <dt-bindings/memory/mt8195-memory-port.h>
> +
> + soc {
> + #address-cells = <2>;
> + #size-cells = <2>;
> +
> + vdo1_rdma0: mdp-rdma@1c104000 {
> + compatible = "mediatek,mt8195-vdo1-rdma";
> + reg = <0 0x1c104000 0 0x1000>;
> + interrupts = <GIC_SPI 495 IRQ_TYPE_LEVEL_HIGH 0>;
> + clocks = <&vdosys1 CLK_VDO1_MDP_RDMA0>;
> + power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS1>;
> + iommus = <&iommu_vdo M4U_PORT_L2_MDP_RDMA0>;
> + mediatek,gce-client-reg = <&gce0 SUBSYS_1c10XXXX 0x4000 0x1000>;
> + };
> + };
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH v15 00/22] Add MediaTek SoC DRM (vdosys1) support for mt8195
[not found] <20220311015506.11232-1-nancy.lin@mediatek.com>
[not found] ` <20220311015506.11232-2-nancy.lin@mediatek.com>
@ 2022-03-11 9:51 ` AngeloGioacchino Del Regno
1 sibling, 0 replies; 2+ messages in thread
From: AngeloGioacchino Del Regno @ 2022-03-11 9:51 UTC (permalink / raw)
To: Nancy.Lin, Rob Herring, Matthias Brugger, Chun-Kuang Hu,
Philipp Zabel, wim, linux
Cc: David Airlie, Daniel Vetter, Nathan Chancellor, Nick Desaulniers,
jason-jh . lin, Yongqiang Niu, devicetree, linux-kernel,
linux-arm-kernel, linux-mediatek, dri-devel, llvm, singo.chang,
srv_heupstream, Project_Global_Chrome_Upstream_Group
Il 11/03/22 02:54, Nancy.Lin ha scritto:
> The hardware path of vdosys1 with DPTx output need to go through by several modules, such as, OVL_ADAPTOR and MERGE.
>
> Add DRM and these modules support by the patches below:
Hello maintainers,
I have tested this series (and its dependencies - where [1] is needed to even
be able to apply this one) on multiple machines featuring different MediaTek
SoCs and everything works as expected on both oldies and new ones.
I want to make sure you know that series [1] is also fine and has R-b tags,
apart from the first commit (1/8) that in my opinion should be removed (or
simply ignored while applying, as it's not impacting on any other change in
that series, nor in this one).
In my opinion, the two (vdosys0 and 1) series are ready to be picked.
[1]: https://patchwork.kernel.org/project/linux-mediatek/list/?series=620795
Thank you all,
Angelo
>
> Changes in v15:
> - fix ethdr uppercase hex number in dts
>
> Changes in v14:
> - remove MTK_MMSYS 64 bit dependency
> - add ethdr.yaml back and fix dt_schema check fail
>
> Resend v13
> - add related maintainer in maillist
>
> Changes in v13:
> - fix reviewer comment in v12
> - fix rdma dt-binding format
> - fix dts node naming
> - fix 32 bit build error
> - modify 64bit dependency for mtk-mmsys
> - rebase to vdosys0 series v16. (ref [5])
>
> Changes in v12:
> - fix reviewer comment in v11
> - modify mbox index
> - refine dma dev for ovl_adaptor sub driver
>
> Changes in v11:
> - remove ethdr vblank spin lock
> - refine ovl_adaptor print message
>
> Changes in v10:
> - refine ethdr reset control using devm_reset_control_array_get_optional_exclusive
> - fix ovl_adaptor mtk_ovl_adaptor_clk_enable error handle issue
>
> Changes in v9:
> - rebase on kernel-5.16-rc1
> - rebase on vdosys0 series v13. (ref [5])
> - fix ovl_adaptor sub driver is brought up unintentionally
> - fix clang build test fail- duplicate ethdr/mdp_rdma init_module/cleanup_module symbol issue
>
> Changes in v8:
> - separate merge async reset to new patch.
> - separate drm ovl_adaptor sub driver to new patch.
> - fix reviewer comment in v7.
>
> Changes in v7:
> - rebase on vdosys0 series v12 (ref[5])
> - add dma description in ethdr binding document.
> - refine vdosys1 bit definition of mmsys routing table.
> - separate merge modification into 3 pathces.
> - separate mutex modification into 2 patches.
> - add plane color coding for mdp_rdma csc.
> - move mdp_rdma pm control to ovl_adaptor.
> - fix reviewer comment in v6.
>
> Changes in v6:
> - rebase on kernel-5.15-rc1.
> - change mbox label to gce0 for dts node of vdosys1.
> - modify mmsys reset num for mt8195.
> - rebase on vdosys0 series v10. (ref [5])
> - use drm to bring up ovl_adaptor driver.
> - move drm iommu/mutex check from kms init to drm bind.
> - modify rdma binding doc location. (Documentation/devicetree/bindings/arm/)
> - modify for reviewer's comment in v5.
>
> Changes in v5:
> - add mmsys reset controller reference.
>
> Changes in v4:
> - use merge common driver for merge1~4.
> - refine ovl_adaptor rdma driver.
> - use ovl_adaptor ddp_comp function instead of ethdr.
> - modify for reviewer's comment in v3.
>
> Changes in v3:
> - modify for reviewer's comment in v2.
> - add vdosys1 2 pixels align limit.
> - add mixer odd offset support.
>
> Changes in v2:
> - Merge PSEUDO_OVL and ETHDR into one DRM component.
> - Add mmsys config API for vdosys1 hardware setting.
> - Add mmsys reset control using linux reset framework.
>
> Signed-off-by: Nancy.Lin <nancy.lin@mediatek.com>
>
> This series are based on the following patch:
> [1] arm64: dts: Add mediatek SoC mt8195 and evaluation board
> https://patchwork.kernel.org/project/linux-mediatek/patch/20220112114724.1953-4-tinghan.shen@mediatek.com/
> [2] arm64: dts: mt8195: add IOMMU and smi nodes
> https://patchwork.kernel.org/project/linux-mediatek/patch/20210615173233.26682-15-tinghan.shen@mediatek.com/
> [3] arm64: dts: mt8195: add gce node
> https://patchwork.kernel.org/project/linux-mediatek/patch/20220126090109.32143-1-jason-jh.lin@mediatek.com/
> [4] [v2] arm64: dts: mt8195: add display node for vdosys0
> https://patchwork.kernel.org/project/linux-mediatek/patch/20220225021535.2655-1-jason-jh.lin@mediatek.com/
> [5] Add MediaTek SoC DRM (vdosys0) support for mt8195
> https://patchwork.kernel.org/project/linux-mediatek/list/?series=620795
> [6] dt-bindings: mediatek: mt8195: Add binding for MM IOMMU
> https://patchwork.kernel.org/project/linux-mediatek/patch/20220217113453.13658-2-yong.wu@mediatek.com/
>
> Nancy.Lin (22):
> dt-bindings: mediatek: add vdosys1 RDMA definition for mt8195
> dt-bindings: reset: mt8195: add vdosys1 reset control bit
> dt-bindings: mediatek: add ethdr definition for mt8195
> soc: mediatek: add mtk-mmsys support for mt8195 vdosys1
> soc: mediatek: add mtk-mmsys config API for mt8195 vdosys1
> soc: mediatek: add cmdq support of mtk-mmsys config API for mt8195
> vdosys1
> soc: mediatek: mmsys: modify reset controller for MT8195 vdosys1
> soc: mediatek: change the mutex defines and the mutex_mod type
> soc: mediatek: add mtk-mutex support for mt8195 vdosys1
> drm/mediatek: add display MDP RDMA support for MT8195
> drm/mediatek: add display merge advance config API for MT8195
> drm/mediatek: add display merge start/stop API for cmdq support
> drm/mediatek: add display merge mute/unmute support for MT8195
> drm/mediatek: add display merge async reset control
> drm/mediatek: add ETHDR support for MT8195
> drm/mediatek: add mediatek-drm plane color encoding info
> drm/mediatek: add ovl_adaptor support for MT8195
> drm/mediatek: add dma dev get function
> drm/mediatek: modify mediatek-drm for mt8195 multi mmsys support
> drm/mediatek: add drm ovl_adaptor sub driver for MT8195
> drm/mediatek: add mediatek-drm of vdosys1 support for MT8195
> arm64: dts: mt8195: add display node for vdosys1
>
> .../arm/mediatek/mediatek,mdp-rdma.yaml | 86 ++++
> .../display/mediatek/mediatek,ethdr.yaml | 158 +++++++
> arch/arm64/boot/dts/mediatek/mt8195.dtsi | 223 +++++++++
> drivers/gpu/drm/mediatek/Makefile | 5 +-
> drivers/gpu/drm/mediatek/mtk_disp_drv.h | 29 ++
> drivers/gpu/drm/mediatek/mtk_disp_merge.c | 89 +++-
> .../gpu/drm/mediatek/mtk_disp_ovl_adaptor.c | 443 ++++++++++++++++++
> drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 55 ++-
> drivers/gpu/drm/mediatek/mtk_drm_crtc.h | 4 +-
> drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 31 +-
> drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 9 +
> drivers/gpu/drm/mediatek/mtk_drm_drv.c | 329 +++++++++----
> drivers/gpu/drm/mediatek/mtk_drm_drv.h | 13 +-
> drivers/gpu/drm/mediatek/mtk_drm_plane.c | 1 +
> drivers/gpu/drm/mediatek/mtk_drm_plane.h | 1 +
> drivers/gpu/drm/mediatek/mtk_ethdr.c | 376 +++++++++++++++
> drivers/gpu/drm/mediatek/mtk_ethdr.h | 23 +
> drivers/gpu/drm/mediatek/mtk_mdp_rdma.c | 315 +++++++++++++
> drivers/gpu/drm/mediatek/mtk_mdp_rdma.h | 20 +
> drivers/soc/mediatek/mt8195-mmsys.h | 199 ++++++++
> drivers/soc/mediatek/mtk-mmsys.c | 79 +++-
> drivers/soc/mediatek/mtk-mmsys.h | 11 +
> drivers/soc/mediatek/mtk-mutex.c | 318 +++++++------
> include/dt-bindings/reset/mt8195-resets.h | 12 +
> include/linux/soc/mediatek/mtk-mmsys.h | 22 +
> 25 files changed, 2596 insertions(+), 255 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,mdp-rdma.yaml
> create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,ethdr.yaml
> create mode 100644 drivers/gpu/drm/mediatek/mtk_disp_ovl_adaptor.c
> create mode 100644 drivers/gpu/drm/mediatek/mtk_ethdr.c
> create mode 100644 drivers/gpu/drm/mediatek/mtk_ethdr.h
> create mode 100644 drivers/gpu/drm/mediatek/mtk_mdp_rdma.c
> create mode 100644 drivers/gpu/drm/mediatek/mtk_mdp_rdma.h
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-03-11 9:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20220311015506.11232-1-nancy.lin@mediatek.com>
[not found] ` <20220311015506.11232-2-nancy.lin@mediatek.com>
2022-03-11 9:31 ` [PATCH v15 01/22] dt-bindings: mediatek: add vdosys1 RDMA definition for mt8195 AngeloGioacchino Del Regno
2022-03-11 9:51 ` [PATCH v15 00/22] Add MediaTek SoC DRM (vdosys1) support " AngeloGioacchino Del Regno
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).