On Thu, 28 Sep 2023 16:55:28 +0800, Chen-Yu Tsai wrote: > From: Zhiyong Tao <zhiyong.tao@xxxxxxxxxxxx> > > The MediaTek MT6366 PMIC is similar to the MT6358 PMIC. It is designed > to be paired with the MediaTek MT8186 SoC. It has 9 buck regulators and > 29 LDO regulators, not counting ones that feed internally and basically > have no controls. The regulators are named after their intended usage > for the SoC and system design, thus not named generically as ldoX or > dcdcX, but as vcn33 or vgpu. > > The differences compared to the MT6358 are minimal: > - Regulators removed: VCAMA1, VCAMA2, VCAMD, VCAMIO, VLDO28 > - Regulators added: VM18, VMDDR, VSRAM_CORE > > Both PMIC models contain a chip ID register at the same address that > can be used to differentiate the actual model. Thus, even though the > MT6366 is not fully backward compatible with the MT6358, it still falls > back on the MT6358 compatible string. It is up to the implementation > to use the chip ID register as a probing mechanism. > > Update the MT6358 regulator binding and add entries for all the MT6366's > regulators and their supplies. The regulator node names follow a cleaned > up style without type prefixes and with underscores replaced with hyphens. > > Signed-off-by: Zhiyong Tao <zhiyong.tao@xxxxxxxxxxxx> > [wens@xxxxxxxxxxxx: major rework and added commit message] > Signed-off-by: Chen-Yu Tsai <wenst@xxxxxxxxxxxx> > --- > Changes since v3: > - Expanded commit message to mention why a fallback compatible is used > - Adapted to ldo_vxo22 and ldo_vusb movement to properties in previous > patch > - Split example into two, one for each variant > - Renamed regulator node in examples to just "regulator" > > Changes since v2: > - Merged all the propertyPatterns together; the if-then sections now > only block out invalid properties > > Changes since v1: > - Replaced underscores in supply names to hyphens > - Merged with MT6358 regulator binding > - Added MT6358 fallback compatible to MT6366 regulator > > Changes since Zhiyong's last version (v4) [1]: > - simplified regulator names > - added descriptions to regulators > - removed bogus regulators (*_sshub) > - merged vcn33-wifi and vcn33-bt as vcn33 > - added missing regulators (vm18, vmddr, vsram-core) > - cut down examples to a handful of cases and made them complete > - expanded commit message a lot > > [1] https://lore.kernel.org/linux-arm-kernel/20220823123745.14061-1-zhiyong.tao@xxxxxxxxxxxx/ > > .../regulator/mediatek,mt6358-regulator.yaml | 149 ++++++++++++++---- > 1 file changed, 120 insertions(+), 29 deletions(-) > Reviewed-by: Rob Herring <robh@xxxxxxxxxx>