On 06/07/2022 15:41, Matthias Brugger wrote: > > > On 04/07/2022 14:38, Krzysztof Kozlowski wrote: >> On 04/07/2022 12:00, Tinghan Shen wrote: >>> Add power domains controller node for mt8195. >>> >>> Signed-off-by: Weiyi Lu <weiyi.lu@xxxxxxxxxxxx> >>> Signed-off-by: Tinghan Shen <tinghan.shen@xxxxxxxxxxxx> >>> --- >>> arch/arm64/boot/dts/mediatek/mt8195.dtsi | 327 +++++++++++++++++++++++ >>> 1 file changed, 327 insertions(+) >>> >>> diff --git a/arch/arm64/boot/dts/mediatek/mt8195.dtsi b/arch/arm64/boot/dts/mediatek/mt8195.dtsi >>> index 8d59a7da3271..d52e140d9271 100644 >>> --- a/arch/arm64/boot/dts/mediatek/mt8195.dtsi >>> +++ b/arch/arm64/boot/dts/mediatek/mt8195.dtsi >>> @@ -10,6 +10,7 @@ >>> #include <dt-bindings/interrupt-controller/irq.h> >>> #include <dt-bindings/phy/phy.h> >>> #include <dt-bindings/pinctrl/mt8195-pinfunc.h> >>> +#include <dt-bindings/power/mt8195-power.h> >>> >>> / { >>> compatible = "mediatek,mt8195"; >>> @@ -338,6 +339,332 @@ >>> #interrupt-cells = <2>; >>> }; >>> >>> + scpsys: syscon@10006000 { >>> + compatible = "syscon", "simple-mfd"; >> >> These compatibles cannot be alone. >> > > You mean we would need something like "mediatek,scpsys" as dummy compatible > that's not bound to any driver? Yes. syscon (and simple-mfd) must always come with a specific compatible. > >>> + reg = <0 0x10006000 0 0x1000>; >>> + #power-domain-cells = <1>; >> >> If it is simple MFD, then probably it is not a power domain provider. >> Decide. > > The SCPSYS IP block of MediaTek SoCs group several functionality, one is the > power domain controller. Others are not yet implemented, but defining the scpsys > as a MFD will give us the possibility to do so in the future. No, quite the opposite. Having simple-mfd prevents you from implementing it correctly later as a driver, because you cannot remove it. It would be ABI break. It's fine to have one block being a simple MFD having several children, but then it's not a power controller. Children could be such power controller, but not simple-mfd. Rob explained this several times: https://lore.kernel.org/all/YXhINE00HG6hbQI4@xxxxxxxxxxxxxxxxxx/ https://lore.kernel.org/all/20220701000959.GA3588170-robh@xxxxxxxxxx/ Best regards, Krzysztof