[PATCH v1 01/13] dt-bindings: power: mediatek: Document mediatek,bus-protection
AngeloGioacchino Del Regno
angelogioacchino.delregno at collabora.com
Mon Jun 30 02:36:31 PDT 2025
Il 27/06/25 22:15, Rob Herring ha scritto:
> On Mon, Jun 23, 2025 at 02:01:42PM +0200, AngeloGioacchino Del Regno wrote:
>> Add a new mediatek,bus-protection property in the main power
>> controller node and deprecate the old mediatek,infracfg,
>> mediatek,infracfg-nao and mediatek,smi properties located in
>> the children.
>>
>> This is done in order to both simplify the power controller
>> nodes and in preparation for adding support for new generation
>> SoCs like MT8196/MT6991 and other variants, which will need
>> to set protection on new busses.
>
> Protection like access controls? We have the access-controller binding
> for that.
>
I was not aware of that - but that's *so* cool.
From a very (very, very) fast look, it looks like that fits this case perfectly.
I'll check if that's right and will come up with a v2 for that.
Thanks a lot!
Angelo
>>
>> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
>> ---
>> .../power/mediatek,power-controller.yaml | 40 +++++++++++++++++++
>> 1 file changed, 40 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/power/mediatek,power-controller.yaml b/Documentation/devicetree/bindings/power/mediatek,power-controller.yaml
>> index 9c7cc632abee..2530c873bb3c 100644
>> --- a/Documentation/devicetree/bindings/power/mediatek,power-controller.yaml
>> +++ b/Documentation/devicetree/bindings/power/mediatek,power-controller.yaml
>> @@ -44,6 +44,18 @@ properties:
>> '#size-cells':
>> const: 0
>>
>> + mediatek,bus-protection:
>> + $ref: /schemas/types.yaml#/definitions/phandle-array
>> + description:
>> + A number of phandles to external blocks to set and clear the required
>> + bits to enable or disable bus protection, necessary to avoid any bus
>> + faults while enabling or disabling a power domain.
>> + For example, this may hold phandles to INFRACFG and SMI.
>> + minItems: 1
>> + maxItems: 3
>> + items:
>> + maxItems: 1
>> +
>> patternProperties:
>> "^power-domain@[0-9a-f]+$":
>> $ref: "#/$defs/power-domain-node"
>> @@ -123,14 +135,17 @@ $defs:
>> mediatek,infracfg:
>> $ref: /schemas/types.yaml#/definitions/phandle
>> description: phandle to the device containing the INFRACFG register range.
>> + deprecated: true
>>
>> mediatek,infracfg-nao:
>> $ref: /schemas/types.yaml#/definitions/phandle
>> description: phandle to the device containing the INFRACFG-NAO register range.
>> + deprecated: true
>>
>> mediatek,smi:
>> $ref: /schemas/types.yaml#/definitions/phandle
>> description: phandle to the device containing the SMI register range.
>> + deprecated: true
>>
>> required:
>> - reg
>> @@ -138,6 +153,31 @@ $defs:
>> required:
>> - compatible
>>
>> +allOf:
>> + - if:
>> + properties:
>> + compatible:
>> + contains:
>> + enum:
>> + - mediatek,mt8183-power-controller
>> + then:
>> + properties:
>> + mediatek,bus-protection:
>> + minItems: 2
>> + maxItems: 2
>> +
>> + - if:
>> + properties:
>> + compatible:
>> + contains:
>> + enum:
>> + - mediatek,mt8365-power-controller
>> + then:
>> + properties:
>> + mediatek,bus-protection:
>> + minItems: 3
>> + maxItems: 3
>> +
>> additionalProperties: false
>>
>> examples:
>> --
>> 2.49.0
>>
More information about the Linux-mediatek
mailing list