[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0dcb2efd-6bbb-4701-960a-74930eb457e4@collabora.com>
Date: Mon, 24 Feb 2025 09:41:15 +0100
From: AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
To: Friday Yang <friday.yang@...iatek.com>, Yong Wu <yong.wu@...iatek.com>,
Krzysztof Kozlowski <krzk@...nel.org>, Rob Herring <robh@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Matthias Brugger
<matthias.bgg@...il.com>, Philipp Zabel <p.zabel@...gutronix.de>
Cc: linux-mediatek@...ts.infradead.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
Project_Global_Chrome_Upstream_Group@...iatek.com
Subject: Re: [PATCH v4 1/2] dt-bindings: memory: mediatek: Add SMI reset and
clamp for MT8188
Il 21/02/25 08:48, Friday Yang ha scritto:
> From: "Friday Yang" <friday.yang@...iatek.com>
>
> On the MediaTek platform, some SMI LARBs are directly connected to
> the SMI Common, while others are connected to the SMI Sub-Common,
> which in turn is connected to the SMI Common. The hardware block
> diagram can be described as follows.
>
> SMI-Common(Smart Multimedia Interface Common)
> |
> +----------------+------------------+
> | | |
> | | |
> | | |
> | | |
> | | |
> larb0 SMI-Sub-Common0 SMI-Sub-Common1
> | | | | |
> larb1 larb2 larb3 larb7 larb9
>
> For previous discussion on the direction of the code modifications,
> please refer to:
> https://lore.kernel.org/all/CAFGrd9qZhObQXvm2_abqaX83xMLqxjQETB2=
> wXpobDWU1CnvkA@...l.gmail.com/
> https://lore.kernel.org/all/CAPDyKFpokXV2gJDgowbixTvOH_5VL3B5H8ey
> hP+KJ5Fasm2rFg@...l.gmail.com/
>
> On the MediaTek MT8188 SoC platform, we encountered power-off failures
> and SMI bus hang issues during camera stress tests. The issue arises
> because bus glitches are sometimes produced when MTCMOS powers on or
> off. While this is fairly normal, the software must handle these
> glitches to avoid mistaking them for transaction signals. What's
> more, this issue emerged only after the initial upstreaming of this
> binding. Without these patches, the SMI becomes unstable during camera
> stress tests.
>
> The software solutions can be summarized as follows:
>
> 1. Use CLAMP to disable the SMI sub-common port after turning off the
> LARB CG and before turning off the LARB MTCMOS.
> 2. Use CLAMP to disable/enable the SMI sub-common port.
> 3. Implement an AXI reset for SMI LARBs.
>
> This patch primarily add two changes:
> 1. Add compatible for SMI sub-common on MT8188 SoC.
> 2. Add 'resets' and 'reset-names' properties for SMI LARBs to
> support SMI reset operations.
>
> Signed-off-by: Friday Yang <friday.yang@...iatek.com>
> ---
> .../mediatek,smi-common.yaml | 2 ++
> .../memory-controllers/mediatek,smi-larb.yaml | 20 +++++++++++++++++++
> 2 files changed, 22 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-common.yaml b/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-common.yaml
> index 2f36ac23604c..4392d349878c 100644
> --- a/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-common.yaml
> +++ b/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-common.yaml
> @@ -39,6 +39,7 @@ properties:
> - mediatek,mt8186-smi-common
> - mediatek,mt8188-smi-common-vdo
> - mediatek,mt8188-smi-common-vpp
> + - mediatek,mt8188-smi-sub-common
> - mediatek,mt8192-smi-common
> - mediatek,mt8195-smi-common-vdo
> - mediatek,mt8195-smi-common-vpp
> @@ -107,6 +108,7 @@ allOf:
> compatible:
> contains:
> enum:
> + - mediatek,mt8188-smi-sub-common
> - mediatek,mt8195-smi-sub-common
> then:
> required:
> diff --git a/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.yaml b/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.yaml
> index 2381660b324c..2e86bb3455f9 100644
> --- a/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.yaml
> +++ b/Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.yaml
> @@ -69,6 +69,12 @@ properties:
> description: the hardware id of this larb. It's only required when this
> hardware id is not consecutive from its M4U point of view.
>
> + resets:
> + maxItems: 1
> +
> + reset-names:
> + const: larb
> +
> required:
> - compatible
> - reg
> @@ -125,6 +131,20 @@ allOf:
> required:
> - mediatek,larb-id
>
> + - if: # only for image, camera and ipe subsys
> + properties:
> + compatible:
> + const: mediatek,mt8188-smi-larb
> + mediatek,larb-id:
> + oneOf:
Are you really sure that you need 'oneOf' here? :-)
Regards,
Angelo
> + - enum:
> + [ 9, 10, 11, 12, 13, 16, 17, 18, 19, 20 ]
> +
> + then:
> + required:
> + - resets
> + - reset-names
> +
> additionalProperties: false
>
> examples:
> --
> 2.46.0
>
Powered by blists - more mailing lists