diff mbox series

[v6,1/2] regulator: dt-bindings: mt6323: Convert to DT schema

Message ID 20240918064955.6518-1-macpaul.lin@mediatek.com
State Superseded
Headers show
Series [v6,1/2] regulator: dt-bindings: mt6323: Convert to DT schema | expand

Commit Message

Macpaul Lin Sept. 18, 2024, 6:49 a.m. UTC
Convert the MT6323 regulator binding from the old text-based format to
the new DT schema style. The property "regulator-name" has been added
as required property to reflect current usage in mt6323.dtsi.

Examples have been streamlined and relocated to the parent schema file:
  mfd/mediatek,mt6397.yaml.

Update maintainer and submitter information with new entries from MediaTek.

The reference document cited in "mediatek,mt7530.yaml" has been updated
to point to this new DT schema file

Signed-off-by: Sen Chu <sen.chu@mediatek.com>
Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 .../bindings/net/dsa/mediatek,mt7530.yaml     |   4 +-
 .../regulator/mediatek,mt6323-regulator.yaml  | 119 +++++++++
 .../bindings/regulator/mt6323-regulator.txt   | 237 ------------------
 3 files changed, 121 insertions(+), 239 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/regulator/mediatek,mt6323-regulator.yaml
 delete mode 100644 Documentation/devicetree/bindings/regulator/mt6323-regulator.txt

Changes for v1 and v2:
 - This is the first version of converting mt6323-regulator.
   This is because converting mt6323-regulator together
   with mfd/mediatek,mt6397.yaml, so we've create a patch set
   instead of single patch for each skydives.
 - This patch has been made base on linux-next/master git repo.

Changes for v3:
 - Rebased on linux-next/master git repo near next-20240906.
 - Added 'regulator-name' to 'requried' property to reflect current usage.
 - replace ^(buck_)? and ^(ldo_)? to ^buck_ and ^ldo_ prefix.
 - Update file name of 'mediatek,mt6323-regulator.yaml' in
   'mediatek,mt7530.yaml'

Changes for v4:
 - No change.

Changes for v5:
 - Add "Reviewed-by" in commit message. Thanks for the review!
 - Remove a blank line at EOF whcih causes whitespace warning
   when 'git am' the patch.

Changes for v6:
 - No change.

Comments

Alexandre Belloni Sept. 18, 2024, 11:56 a.m. UTC | #1
On 18/09/2024 13:51:51+0200, Alexandre Belloni wrote:
> > Changes for v4:
> >  - Remove "mediatek,mt6357" from PMIC's compatible string since there is a
> >    seperated DT schema for PMIC mt6357.
> > 
> > Changes for v5:
> >  - Rebase to next-20240913 (linux-next/master).
> >  - Fix the "title" (device type) of mfd/mediatek,mt6397.yaml to "PMIC".
> >  - RTC:
> >   - Drop "start-year"
> 
> Maybe, instead of dropping the property, you should add support in the
> driver by setting range_min and range_max.

Looking at this even more, the driver can probably be simplified by
setting start_year in probe and dropping RTC_MIN_YEAR_OFFSET.

> 
> >  - Regulators:
> >   - Add blank lines between description and properties.
> >   - Drop allOf for the $ref section on property.
> >  - clocks:
> >   - Fix no need '|' in descriptoin.
> >   - Add blank lines between description and properties.
> >  - Keys:
> >   - Drop compatible since these enums are already in $ref.
> >  - pinctrl:
> >   - Drop compatible since it is already in $ref.
> >  - examples:
> >   - Fix indentations for leds and keys.
> > 
> > Changes for v6:
> >  - Commit message:
> >   - Add note for simplifying examples of mt6358 and mt6397.
> >  - examples:
> >   - Fix indentations for mt6323-keys.
> >   - MT6358 and MT6397: simplify settings in regulators.
> >    - Preserve "audio-codec", "clocks", "pinctrl", "rtc", and "keys"
> >      sections as they contain typical settings for different PMICs.
> > 
> > diff --git a/Documentation/devicetree/bindings/input/mediatek,pmic-keys.yaml b/Documentation/devicetree/bindings/input/mediatek,pmic-keys.yaml
> > index 70567d9..466566a 100644
> > --- a/Documentation/devicetree/bindings/input/mediatek,pmic-keys.yaml
> > +++ b/Documentation/devicetree/bindings/input/mediatek,pmic-keys.yaml
> > @@ -19,7 +19,7 @@ description: |
> >    by the PMIC that is defined as a Multi-Function Device (MFD).
> >  
> >    For MediaTek MT6323/MT6397 PMIC bindings see
> > -  Documentation/devicetree/bindings/mfd/mt6397.txt
> > +  Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
> >  
> >  properties:
> >    compatible:
> > diff --git a/Documentation/devicetree/bindings/leds/leds-mt6323.txt b/Documentation/devicetree/bindings/leds/leds-mt6323.txt
> > deleted file mode 100644
> > index 052dccb8..0000000
> > --- a/Documentation/devicetree/bindings/leds/leds-mt6323.txt
> > +++ /dev/null
> > @@ -1,63 +0,0 @@
> > -Device Tree Bindings for LED support on MT6323 PMIC
> > -
> > -MT6323 LED controller is subfunction provided by MT6323 PMIC, so the LED
> > -controllers are defined as the subnode of the function node provided by MT6323
> > -PMIC controller that is being defined as one kind of Muti-Function Device (MFD)
> > -using shared bus called PMIC wrapper for each subfunction to access remote
> > -MT6323 PMIC hardware.
> > -
> > -For MT6323 MFD bindings see:
> > -Documentation/devicetree/bindings/mfd/mt6397.txt
> > -For MediaTek PMIC wrapper bindings see:
> > -Documentation/devicetree/bindings/soc/mediatek/mediatek,pwrap.yaml
> > -
> > -Required properties:
> > -- compatible : Must be one of
> > -  - "mediatek,mt6323-led"
> > -  - "mediatek,mt6331-led"
> > -  - "mediatek,mt6332-led"
> > -- address-cells : Must be 1
> > -- size-cells : Must be 0
> > -
> > -Each led is represented as a child node of the mediatek,mt6323-led that
> > -describes the initial behavior for each LED physically and currently only four
> > -LED child nodes can be supported.
> > -
> > -Required properties for the LED child node:
> > -- reg : LED channel number (0..3)
> > -
> > -Optional properties for the LED child node:
> > -- label : See Documentation/devicetree/bindings/leds/common.txt
> > -- linux,default-trigger : See Documentation/devicetree/bindings/leds/common.txt
> > -- default-state: See Documentation/devicetree/bindings/leds/common.txt
> > -
> > -Example:
> > -
> > -	mt6323: pmic {
> > -		compatible = "mediatek,mt6323";
> > -
> > -		...
> > -
> > -		mt6323led: leds {
> > -			compatible = "mediatek,mt6323-led";
> > -			#address-cells = <1>;
> > -			#size-cells = <0>;
> > -
> > -			led@0 {
> > -				reg = <0>;
> > -				label = "LED0";
> > -				linux,default-trigger = "timer";
> > -				default-state = "on";
> > -			};
> > -			led@1 {
> > -				reg = <1>;
> > -				label = "LED1";
> > -				default-state = "off";
> > -			};
> > -			led@2 {
> > -				reg = <2>;
> > -				label = "LED2";
> > -				default-state = "on";
> > -			};
> > -		};
> > -	};
> > diff --git a/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml b/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
> > new file mode 100644
> > index 0000000..953358b
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
> > @@ -0,0 +1,601 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/mfd/mediatek,mt6397.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: MediaTek MT6397/MT6323 PMIC
> > +
> > +maintainers:
> > +  - Sen Chu <sen.chu@mediatek.com>
> > +  - Macpaul Lin <macpaul.lin@mediatek.com>
> > +
> > +description: |
> > +  MT6397/MT6323 is a power management system chip.
> > +  Please see the sub-modules below for supported features.
> > +
> > +  MT6397/MT6323 is a multifunction device with the following sub modules:
> > +  - Regulators
> > +  - RTC
> > +  - Audio codec
> > +  - GPIO
> > +  - Clock
> > +  - LED
> > +  - Keys
> > +  - Power controller
> > +
> > +  It is interfaced to host controller using SPI interface by a proprietary hardware
> > +  called PMIC wrapper or pwrap. MT6397/MT6323 PMIC is a child device of pwrap.
> > +  See the following for pwrap node definitions:
> > +  Documentation/devicetree/bindings/soc/mediatek/mediatek,pwrap.yaml
> > +
> > +properties:
> > +  compatible:
> > +    oneOf:
> > +      - enum:
> > +          - mediatek,mt6323
> > +          - mediatek,mt6331 # "mediatek,mt6331" for PMIC MT6331 and MT6332.
> > +          - mediatek,mt6358
> > +          - mediatek,mt6359
> > +          - mediatek,mt6397
> > +      - items:
> > +          - enum:
> > +              - mediatek,mt6366
> > +          - const: mediatek,mt6358
> > +
> > +  interrupts:
> > +    maxItems: 1
> > +
> > +  interrupt-controller: true
> > +
> > +  "#interrupt-cells":
> > +    const: 2
> > +
> > +  rtc:
> > +    type: object
> > +    $ref: /schemas/rtc/rtc.yaml#
> > +    unevaluatedProperties: false
> > +    description:
> > +      MT6397 Real Time Clock.
> > +
> > +    properties:
> > +      compatible:
> > +        oneOf:
> > +          - enum:
> > +              - mediatek,mt6323-rtc
> > +              - mediatek,mt6331-rtc
> > +              - mediatek,mt6358-rtc
> > +              - mediatek,mt6397-rtc
> > +          - items:
> > +              - enum:
> > +                  - mediatek,mt6366-rtc
> > +              - const: mediatek,mt6358-rtc
> > +
> > +    required:
> > +      - compatible
> > +
> > +  regulators:
> > +    type: object
> > +    description:
> > +      List of child nodes that specify the regulators.
> > +    additionalProperties: true
> > +
> > +    properties:
> > +      compatible:
> > +        oneOf:
> > +          - enum:
> > +              - mediatek,mt6323-regulator
> > +              - mediatek,mt6358-regulator
> > +              - mediatek,mt6397-regulator
> > +          - items:
> > +              - enum:
> > +                  - mediatek,mt6366-regulator
> > +              - const: mediatek,mt6358-regulator
> > +
> > +    required:
> > +      - compatible
> > +
> > +  audio-codec:
> > +    type: object
> > +    additionalProperties: false
> > +    description:
> > +      Audio codec support with MT6397 and MT6358.
> > +
> > +    properties:
> > +      compatible:
> > +        oneOf:
> > +          - enum:
> > +              - mediatek,mt6397-codec
> > +              - mediatek,mt6358-sound
> > +          - items:
> > +              - enum:
> > +                  - mediatek,mt6366-sound
> > +              - const: mediatek,mt6358-sound
> > +
> > +      mediatek,dmic-mode:
> > +        description: |
> > +          Indicates how many data pins are used to transmit two channels of PDM
> > +          signal.
> > +          0 - two wires;
> > +          1 - one wire;
> > +          Default value is 0.
> > +        enum: [0, 1]
> > +        default: 0
> > +
> > +      Avdd-supply:
> > +        description: Power source of AVDD.
> > +
> > +    required:
> > +      - compatible
> > +
> > +  clocks:
> > +    type: object
> > +    additionalProperties: false
> > +    description:
> > +      This is a clock buffer node for mt6397. However, there are no sub nodes
> > +      or any public document exposed in public.
> > +
> > +    properties:
> > +      compatible:
> > +        const: mediatek,mt6397-clk
> > +
> > +      '#clock-cells':
> > +        const: 1
> > +
> > +    required:
> > +      - compatible
> > +
> > +  leds:
> > +    type: object
> > +    additionalProperties: false
> > +    description: |
> > +      MT6323 LED controller is subfunction provided by MT6323 PMIC, so the LED
> > +      controllers are defined as the subnode of the function node provided by MT6323
> > +      PMIC controller that is being defined as one kind of Muti-Function Device (MFD)
> > +      using shared bus called PMIC wrapper for each subfunction to access remote
> > +      MT6323 PMIC hardware.
> > +
> > +      Each led is represented as a child node of the mediatek,mt6323-led that
> > +      describes the initial behavior for each LED physically and currently only four
> > +      LED child nodes can be supported.
> > +
> > +    properties:
> > +      compatible:
> > +        enum:
> > +          - mediatek,mt6323-led
> > +          - mediatek,mt6331-led
> > +          - mediatek,mt6332-led
> > +
> > +      reg:
> > +        maxItems: 1
> > +
> > +      "#address-cells":
> > +        const: 1
> > +
> > +      "#size-cells":
> > +        const: 0
> > +
> > +    patternProperties:
> > +      "^led@[0-3]$":
> > +        type: object
> > +        $ref: /schemas/leds/common.yaml#
> > +        unevaluatedProperties: false
> > +
> > +        properties:
> > +          reg:
> > +            description:
> > +              LED channel number (0..3)
> > +            minimum: 0
> > +            maximum: 3
> > +
> > +        required:
> > +          - reg
> > +
> > +    required:
> > +      - compatible
> > +      - "#address-cells"
> > +      - "#size-cells"
> > +
> > +  keys:
> > +    type: object
> > +    $ref: /schemas/input/mediatek,pmic-keys.yaml
> > +    unevaluatedProperties: false
> > +    description:
> > +      Power and Home keys.
> > +
> > +  power-controller:
> > +    type: object
> > +    additionalProperties: false
> > +    description:
> > +      The power controller which could be found on PMIC is responsible for
> > +      externally powering off or on the remote MediaTek SoC through the
> > +      circuit BBPU (baseband power up).
> > +
> > +    properties:
> > +      compatible:
> > +        const: mediatek,mt6323-pwrc
> > +
> > +      '#power-domain-cells':
> > +        const: 0
> > +
> > +  pinctrl:
> > +    type: object
> > +    $ref: /schemas/pinctrl/mediatek,mt65xx-pinctrl.yaml
> > +    unevaluatedProperties: false
> > +    description:
> > +      Pin controller
> > +
> > +required:
> > +  - compatible
> > +  - regulators
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > +  - |
> > +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> > +    #include <dt-bindings/leds/common.h>
> > +
> > +    pmic {
> > +        compatible = "mediatek,mt6323";
> > +        interrupt-parent = <&pio>;
> > +        interrupts = <150 IRQ_TYPE_LEVEL_HIGH>;
> > +        interrupt-controller;
> > +        #interrupt-cells = <2>;
> > +
> > +        leds {
> > +            compatible = "mediatek,mt6323-led";
> > +            #address-cells = <1>;
> > +            #size-cells = <0>;
> > +        };
> > +
> > +        regulators {
> > +            compatible = "mediatek,mt6323-regulator";
> > +
> > +            buck_vproc {
> > +                regulator-name = "vproc";
> > +                regulator-min-microvolt = < 700000>;
> > +                regulator-max-microvolt = <1350000>;
> > +                regulator-ramp-delay = <12500>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            buck_vsys {
> > +                regulator-name = "vsys";
> > +                regulator-min-microvolt = <1400000>;
> > +                regulator-max-microvolt = <2987500>;
> > +                regulator-ramp-delay = <25000>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            buck_vpa {
> > +                regulator-name = "vpa";
> > +                regulator-min-microvolt = < 500000>;
> > +                regulator-max-microvolt = <3650000>;
> > +            };
> > +
> > +            ldo_vtcxo {
> > +                regulator-name = "vtcxo";
> > +                regulator-min-microvolt = <2800000>;
> > +                regulator-max-microvolt = <2800000>;
> > +                regulator-enable-ramp-delay = <90>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vcn28 {
> > +                regulator-name = "vcn28";
> > +                regulator-min-microvolt = <2800000>;
> > +                regulator-max-microvolt = <2800000>;
> > +                regulator-enable-ramp-delay = <185>;
> > +            };
> > +
> > +            ldo_vcn33_bt {
> > +                regulator-name = "vcn33_bt";
> > +                regulator-min-microvolt = <3300000>;
> > +                regulator-max-microvolt = <3600000>;
> > +                regulator-enable-ramp-delay = <185>;
> > +            };
> > +
> > +            ldo_vcn33_wifi {
> > +                regulator-name = "vcn33_wifi";
> > +                regulator-min-microvolt = <3300000>;
> > +                regulator-max-microvolt = <3600000>;
> > +                regulator-enable-ramp-delay = <185>;
> > +            };
> > +
> > +            ldo_va {
> > +                regulator-name = "va";
> > +                regulator-min-microvolt = <2800000>;
> > +                regulator-max-microvolt = <2800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vcama {
> > +                regulator-name = "vcama";
> > +                regulator-min-microvolt = <1500000>;
> > +                regulator-max-microvolt = <2800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vio28 {
> > +                regulator-name = "vio28";
> > +                regulator-min-microvolt = <2800000>;
> > +                regulator-max-microvolt = <2800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vusb {
> > +                regulator-name = "vusb";
> > +                regulator-min-microvolt = <3300000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vmc {
> > +                regulator-name = "vmc";
> > +                regulator-min-microvolt = <1800000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <36>;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vmch {
> > +                regulator-name = "vmch";
> > +                regulator-min-microvolt = <3000000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <36>;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vemc3v3 {
> > +                regulator-name = "vemc3v3";
> > +                regulator-min-microvolt = <3000000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <36>;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vgp1 {
> > +                regulator-name = "vgp1";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vgp2 {
> > +                regulator-name = "vgp2";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <3000000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vgp3 {
> > +                regulator-name = "vgp3";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <1800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vcn18 {
> > +                regulator-name = "vcn18";
> > +                regulator-min-microvolt = <1800000>;
> > +                regulator-max-microvolt = <1800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vsim1 {
> > +                regulator-name = "vsim1";
> > +                regulator-min-microvolt = <1800000>;
> > +                regulator-max-microvolt = <3000000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vsim2 {
> > +                regulator-name = "vsim2";
> > +                regulator-min-microvolt = <1800000>;
> > +                regulator-max-microvolt = <3000000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vrtc {
> > +                regulator-name = "vrtc";
> > +                regulator-min-microvolt = <2800000>;
> > +                regulator-max-microvolt = <2800000>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vcamaf {
> > +                regulator-name = "vcamaf";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vibr {
> > +                regulator-name = "vibr";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <36>;
> > +            };
> > +
> > +            ldo_vrf18 {
> > +                regulator-name = "vrf18";
> > +                regulator-min-microvolt = <1825000>;
> > +                regulator-max-microvolt = <1825000>;
> > +                regulator-enable-ramp-delay = <187>;
> > +            };
> > +
> > +            ldo_vm {
> > +                regulator-name = "vm";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <1800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +            ldo_vio18 {
> > +                regulator-name = "vio18";
> > +                regulator-min-microvolt = <1800000>;
> > +                regulator-max-microvolt = <1800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +                regulator-always-on;
> > +                regulator-boot-on;
> > +            };
> > +
> > +           ldo_vcamd {
> > +                regulator-name = "vcamd";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <1800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +
> > +            ldo_vcamio {
> > +                regulator-name = "vcamio";
> > +                regulator-min-microvolt = <1800000>;
> > +                regulator-max-microvolt = <1800000>;
> > +                regulator-enable-ramp-delay = <216>;
> > +            };
> > +        };
> > +
> > +        keys {
> > +            compatible = "mediatek,mt6323-keys";
> > +            mediatek,long-press-mode = <1>;
> > +            power-off-time-sec = <0>;
> > +
> > +            power {
> > +                linux,keycodes = <116>;
> > +                wakeup-source;
> > +            };
> > +
> > +            home {
> > +                linux,keycodes = <114>;
> > +            };
> > +        };
> > +
> > +        power-controller {
> > +            compatible = "mediatek,mt6323-pwrc";
> > +            #power-domain-cells = <0>;
> > +        };
> > +
> > +        rtc {
> > +            compatible = "mediatek,mt6323-rtc";
> > +        };
> > +    };
> > +
> > +  - |
> > +    #include <dt-bindings/input/input.h>
> > +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> > +
> > +    pmic {
> > +        compatible = "mediatek,mt6358";
> > +        interrupt-controller;
> > +        #interrupt-cells = <2>;
> > +
> > +        audio-codec {
> > +            compatible = "mediatek,mt6358-sound";
> > +            Avdd-supply = <&mt6358_vaud28_reg>;
> > +            mediatek,dmic-mode = <0>;
> > +        };
> > +
> > +        regulators {
> > +            compatible = "mediatek,mt6358-regulator";
> > +
> > +            buck_vdram1 {
> > +                regulator-name = "vdram1";
> > +                regulator-min-microvolt = <500000>;
> > +                regulator-max-microvolt = <2087500>;
> > +                regulator-ramp-delay = <12500>;
> > +                regulator-enable-ramp-delay = <0>;
> > +                regulator-always-on;
> > +                regulator-allowed-modes = <0 1>;
> > +            };
> > +
> > +            // ...
> > +
> > +            ldo_vsim2 {
> > +                regulator-name = "vsim2";
> > +                regulator-min-microvolt = <1700000>;
> > +                regulator-max-microvolt = <3100000>;
> > +                regulator-enable-ramp-delay = <540>;
> > +            };
> > +        };
> > +
> > +        rtc {
> > +            compatible = "mediatek,mt6358-rtc";
> > +        };
> > +
> > +        keys {
> > +            compatible = "mediatek,mt6358-keys";
> > +
> > +            power {
> > +                linux,keycodes = <KEY_POWER>;
> > +                wakeup-source;
> > +            };
> > +
> > +            home {
> > +                linux,keycodes = <KEY_HOME>;
> > +            };
> > +        };
> > +    };
> > +
> > +  - |
> > +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> > +
> > +    pmic {
> > +        compatible = "mediatek,mt6397";
> > +
> > +        interrupt-parent = <&pio>;
> > +        interrupts-extended = <&pio 222 IRQ_TYPE_LEVEL_HIGH>;
> > +        interrupt-controller;
> > +        #interrupt-cells = <2>;
> > +
> > +        audio-codec {
> > +            compatible = "mediatek,mt6397-codec";
> > +        };
> > +
> > +        clocks {
> > +            compatible = "mediatek,mt6397-clk";
> > +            #clock-cells = <1>;
> > +        };
> > +
> > +        pinctrl {
> > +            compatible = "mediatek,mt6397-pinctrl";
> > +            gpio-controller;
> > +            #gpio-cells = <2>;
> > +        };
> > +
> > +        regulators {
> > +            compatible = "mediatek,mt6397-regulator";
> > +
> > +            buck_vpca15 {
> > +                regulator-name = "vpca15";
> > +                regulator-min-microvolt = < 850000>;
> > +                regulator-max-microvolt = <1350000>;
> > +                regulator-ramp-delay = <12500>;
> > +                regulator-enable-ramp-delay = <200>;
> > +            };
> > +
> > +            // ...
> > +
> > +            ldo_vibr {
> > +                regulator-name = "vibr";
> > +                regulator-min-microvolt = <1200000>;
> > +                regulator-max-microvolt = <3300000>;
> > +                regulator-enable-ramp-delay = <218>;
> > +            };
> > +        };
> > +
> > +        rtc {
> > +            compatible = "mediatek,mt6397-rtc";
> > +        };
> > +    };
> > diff --git a/Documentation/devicetree/bindings/mfd/mt6397.txt b/Documentation/devicetree/bindings/mfd/mt6397.txt
> > deleted file mode 100644
> > index 10540aa..0000000
> > --- a/Documentation/devicetree/bindings/mfd/mt6397.txt
> > +++ /dev/null
> > @@ -1,110 +0,0 @@
> > -MediaTek MT6397/MT6323 Multifunction Device Driver
> > -
> > -MT6397/MT6323 is a multifunction device with the following sub modules:
> > -- Regulator
> > -- RTC
> > -- Audio codec
> > -- GPIO
> > -- Clock
> > -- LED
> > -- Keys
> > -- Power controller
> > -
> > -It is interfaced to host controller using SPI interface by a proprietary hardware
> > -called PMIC wrapper or pwrap. MT6397/MT6323 MFD is a child device of pwrap.
> > -See the following for pwarp node definitions:
> > -../soc/mediatek/mediatek,pwrap.yaml
> > -
> > -This document describes the binding for MFD device and its sub module.
> > -
> > -Required properties:
> > -compatible:
> > -	"mediatek,mt6323" for PMIC MT6323
> > -	"mediatek,mt6331" for PMIC MT6331 and MT6332
> > -	"mediatek,mt6357" for PMIC MT6357
> > -	"mediatek,mt6358" for PMIC MT6358
> > -	"mediatek,mt6359" for PMIC MT6359
> > -	"mediatek,mt6366", "mediatek,mt6358" for PMIC MT6366
> > -	"mediatek,mt6397" for PMIC MT6397
> > -
> > -Optional subnodes:
> > -
> > -- rtc
> > -	Required properties: Should be one of follows
> > -		- compatible: "mediatek,mt6323-rtc"
> > -		- compatible: "mediatek,mt6331-rtc"
> > -		- compatible: "mediatek,mt6358-rtc"
> > -		- compatible: "mediatek,mt6397-rtc"
> > -	For details, see ../rtc/rtc-mt6397.txt
> > -- regulators
> > -	Required properties:
> > -		- compatible: "mediatek,mt6323-regulator"
> > -	see ../regulator/mt6323-regulator.txt
> > -		- compatible: "mediatek,mt6358-regulator"
> > -		- compatible: "mediatek,mt6366-regulator", "mediatek-mt6358-regulator"
> > -	see ../regulator/mt6358-regulator.txt
> > -		- compatible: "mediatek,mt6397-regulator"
> > -	see ../regulator/mt6397-regulator.txt
> > -- codec
> > -	Required properties:
> > -		- compatible: "mediatek,mt6397-codec" or "mediatek,mt6358-sound"
> > -- clk
> > -	Required properties:
> > -		- compatible: "mediatek,mt6397-clk"
> > -- led
> > -	Required properties:
> > -		- compatible: "mediatek,mt6323-led"
> > -	see ../leds/leds-mt6323.txt
> > -
> > -- keys
> > -	Required properties: Should be one of the following
> > -		- compatible: "mediatek,mt6323-keys"
> > -		- compatible: "mediatek,mt6331-keys"
> > -		- compatible: "mediatek,mt6397-keys"
> > -	see ../input/mtk-pmic-keys.txt
> > -
> > -- power-controller
> > -	Required properties:
> > -		- compatible: "mediatek,mt6323-pwrc"
> > -	For details, see ../power/reset/mt6323-poweroff.txt
> > -
> > -- pin-controller
> > -	Required properties:
> > -		- compatible: "mediatek,mt6397-pinctrl"
> > -	For details, see ../pinctrl/pinctrl-mt65xx.txt
> > -
> > -Example:
> > -	pwrap: pwrap@1000f000 {
> > -		compatible = "mediatek,mt8135-pwrap";
> > -
> > -		...
> > -
> > -		pmic {
> > -			compatible = "mediatek,mt6397";
> > -
> > -			codec: mt6397codec {
> > -				compatible = "mediatek,mt6397-codec";
> > -			};
> > -
> > -			regulators {
> > -				compatible = "mediatek,mt6397-regulator";
> > -
> > -				mt6397_vpca15_reg: buck_vpca15 {
> > -					regulator-compatible = "buck_vpca15";
> > -					regulator-name = "vpca15";
> > -					regulator-min-microvolt = <850000>;
> > -					regulator-max-microvolt = <1400000>;
> > -					regulator-ramp-delay = <12500>;
> > -					regulator-always-on;
> > -				};
> > -
> > -				mt6397_vgp4_reg: ldo_vgp4 {
> > -					regulator-compatible = "ldo_vgp4";
> > -					regulator-name = "vgp4";
> > -					regulator-min-microvolt = <1200000>;
> > -					regulator-max-microvolt = <3300000>;
> > -					regulator-enable-ramp-delay = <218>;
> > -				};
> > -			};
> > -		};
> > -	};
> > diff --git a/Documentation/devicetree/bindings/power/reset/mt6323-poweroff.txt b/Documentation/devicetree/bindings/power/reset/mt6323-poweroff.txt
> > deleted file mode 100644
> > index 933f0c4..0000000
> > --- a/Documentation/devicetree/bindings/power/reset/mt6323-poweroff.txt
> > +++ /dev/null
> > @@ -1,20 +0,0 @@
> > -Device Tree Bindings for Power Controller on MediaTek PMIC
> > -
> > -The power controller which could be found on PMIC is responsible for externally
> > -powering off or on the remote MediaTek SoC through the circuit BBPU.
> > -
> > -Required properties:
> > -- compatible: Should be one of follows
> > -       "mediatek,mt6323-pwrc": for MT6323 PMIC
> > -
> > -Example:
> > -
> > -       pmic {
> > -               compatible = "mediatek,mt6323";
> > -
> > -               ...
> > -
> > -               power-controller {
> > -                       compatible = "mediatek,mt6323-pwrc";
> > -               };
> > -       }
> > diff --git a/Documentation/devicetree/bindings/rtc/rtc-mt6397.txt b/Documentation/devicetree/bindings/rtc/rtc-mt6397.txt
> > deleted file mode 100644
> > index 7212076..0000000
> > --- a/Documentation/devicetree/bindings/rtc/rtc-mt6397.txt
> > +++ /dev/null
> > @@ -1,31 +0,0 @@
> > -Device-Tree bindings for MediaTek PMIC based RTC
> > -
> > -MediaTek PMIC based RTC is an independent function of MediaTek PMIC that works
> > -as a type of multi-function device (MFD). The RTC can be configured and set up
> > -with PMIC wrapper bus which is a common resource shared with the other
> > -functions found on the same PMIC.
> > -
> > -For MediaTek PMIC MFD bindings, see:
> > -../mfd/mt6397.txt
> > -
> > -For MediaTek PMIC wrapper bus bindings, see:
> > -../soc/mediatek/pwrap.txt
> > -
> > -Required properties:
> > -- compatible: Should be one of follows
> > -       "mediatek,mt6323-rtc": for MT6323 PMIC
> > -       "mediatek,mt6358-rtc": for MT6358 PMIC
> > -       "mediatek,mt6366-rtc", "mediatek,mt6358-rtc": for MT6366 PMIC
> > -       "mediatek,mt6397-rtc": for MT6397 PMIC
> > -
> > -Example:
> > -
> > -       pmic {
> > -               compatible = "mediatek,mt6323";
> > -
> > -               ...
> > -
> > -               rtc {
> > -                       compatible = "mediatek,mt6323-rtc";
> > -               };
> > -       };
> > diff --git a/Documentation/devicetree/bindings/sound/mt6358.txt b/Documentation/devicetree/bindings/sound/mt6358.txt
> > deleted file mode 100644
> > index fbe9e55..0000000
> > --- a/Documentation/devicetree/bindings/sound/mt6358.txt
> > +++ /dev/null
> > @@ -1,26 +0,0 @@
> > -Mediatek MT6358 Audio Codec
> > -
> > -The communication between MT6358 and SoC is through Mediatek PMIC wrapper.
> > -For more detail, please visit Mediatek PMIC wrapper documentation.
> > -
> > -Must be a child node of PMIC wrapper.
> > -
> > -Required properties:
> > -
> > -- compatible - "string" - One of:
> > -    "mediatek,mt6358-sound"
> > -    "mediatek,mt6366-sound"
> > -- Avdd-supply : power source of AVDD
> > -
> > -Optional properties:
> > -- mediatek,dmic-mode : Indicates how many data pins are used to transmit two
> > -	channels of PDM signal. 0 means two wires, 1 means one wire. Default
> > -	value is 0.
> > -
> > -Example:
> > -
> > -mt6358_snd {
> > -	compatible = "mediatek,mt6358-sound";
> > -	Avdd-supply = <&mt6358_vaud28_reg>;
> > -	mediatek,dmic-mode = <0>;
> > -};
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 2cdd7ca..e97b5ae 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -14418,10 +14418,12 @@ F:	Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.ya
> >  F:	drivers/bluetooth/btmtkuart.c
> >  
> >  MEDIATEK BOARD LEVEL SHUTDOWN DRIVERS
> > +M:	Sen Chu <sen.chu@mediatek.com>
> >  M:	Sean Wang <sean.wang@mediatek.com>
> > +M:	Macpaul Lin <macpaul.lin@mediatek.com>
> >  L:	linux-pm@vger.kernel.org
> >  S:	Maintained
> > -F:	Documentation/devicetree/bindings/power/reset/mt6323-poweroff.txt
> > +F:	Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
> >  F:	drivers/power/reset/mt6323-poweroff.c
> >  
> >  MEDIATEK CIR DRIVER
> > @@ -14582,9 +14584,11 @@ F:	Documentation/devicetree/bindings/mtd/mediatek,mtk-nfc.yaml
> >  F:	drivers/mtd/nand/raw/mtk_*
> >  
> >  MEDIATEK PMIC LED DRIVER
> > +M:	Sen Chu <sen.chu@mediatek.com>
> >  M:	Sean Wang <sean.wang@mediatek.com>
> > +M:	Macpaul Lin <macpaul.lin@mediatek.com>
> >  S:	Maintained
> > -F:	Documentation/devicetree/bindings/leds/leds-mt6323.txt
> > +F:	Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml
> >  F:	drivers/leds/leds-mt6323.c
> >  
> >  MEDIATEK RANDOM NUMBER GENERATOR SUPPORT
> > -- 
> > 2.45.2
> > 
> > 
> 
> -- 
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
>
AngeloGioacchino Del Regno Sept. 18, 2024, 12:20 p.m. UTC | #2
Il 18/09/24 08:49, Macpaul Lin ha scritto:
> Convert the MT6323 regulator binding from the old text-based format to
> the new DT schema style. The property "regulator-name" has been added
> as required property to reflect current usage in mt6323.dtsi.
> 
> Examples have been streamlined and relocated to the parent schema file:
>    mfd/mediatek,mt6397.yaml.
> 
> Update maintainer and submitter information with new entries from MediaTek.
> 
> The reference document cited in "mediatek,mt7530.yaml" has been updated
> to point to this new DT schema file
> 
> Signed-off-by: Sen Chu <sen.chu@mediatek.com>
> Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Macpaul Lin Sept. 23, 2024, 10:43 a.m. UTC | #3
On 9/20/24 21:37, Alexandre Belloni wrote:

[snip]

>> > > > >  - RTC:
>> > > > >   - Drop "start-year"
>> > > > 

[snip]

>> > 
>> 
>> Alexandre, I definitely agree with you on the fact that the MTK PMIC RTC driver
>> can (and needs to) be improved, and that it can make use of some nice cleanup...
>> 
>> ... but!
>> 
>> This series performs a conversion to schema, and the previous txt file didn't
>> say anything about the start-year property - which was not mandatory to support
>> at that time (nor now, afaik?), so adding support for that is out of scope for
>> this series.
> 
> It is mandatory now. I agree this can be done in a subsequent series.
> 

Thanks you all for helping with the review and kindly understanding the
situation. I see that Angelo has already submitted the RTC patch set.
I'll check it with the internal driver owner. It seems okay with a quick 
glance.

>> 
>> Eventually, that can come as a series on top, adding support for that in the
>> binding (and, of course, in the driver).
>> 
>> I should be able to tackle that... most probably next week - but still, the
>> improvements would come as a series on top of this one.
>> 
>> Cheers,
>> Angelo
> 

Thanks
Macpaul Lin
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml b/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
index ea979bc..413db38 100644
--- a/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
+++ b/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
@@ -129,8 +129,8 @@  properties:
   io-supply:
     description: |
       Phandle to the regulator node necessary for the I/O power.
-      See Documentation/devicetree/bindings/regulator/mt6323-regulator.txt for
-      details for the regulator setup on these boards.
+      See Documentation/devicetree/bindings/regulator/mediatek,mt6323-regulator.yaml
+      for details for the regulator setup on these boards.
 
   mediatek,mcm:
     type: boolean
diff --git a/Documentation/devicetree/bindings/regulator/mediatek,mt6323-regulator.yaml b/Documentation/devicetree/bindings/regulator/mediatek,mt6323-regulator.yaml
new file mode 100644
index 0000000..9bc9aa9a
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/mediatek,mt6323-regulator.yaml
@@ -0,0 +1,119 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/mediatek,mt6323-regulator.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek MT6323 Regulator
+
+maintainers:
+  - John Crispin <john@phrozen.org>
+  - Sen Chu <sen.chu@mediatek.com>
+  - Macpaul Lin <macpaul.lin@mediatek.com>
+
+description: |
+  Regulator node of the PMIC. This node should under the PMIC's device node.
+  All voltage regulators provided by the PMIC are described as sub-nodes of
+  this node.
+
+properties:
+  compatible:
+    items:
+      - const: mediatek,mt6323-regulator
+
+patternProperties:
+  "^buck_v(pa|proc|sys)$":
+    description: Buck regulators
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+  "^ldo_v(camio|cn18)$":
+    description: LDO with fixed 1.8V output and 0~100/10mV tuning
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+  "^ldo_v((io|rf)18)$":
+    description: LDOs with fixed 1.825V output and 0~100/10mV tuning
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+  "^ldo_v(a|rtc|tcxo|(cn|io)28)$":
+    description: LDOs with fixed 2.8V output and 0~100/10mV tuning
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+  "^ldo_v(usb)$":
+    description: LDOs with fixed 3.3V output and 0~100/10mV tuning
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+  "^ldo_v(cn33_(bt|wifi))$":
+    description: LDOs with variable 3.3V output and 0~100/10mV tuning
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+  "^ldo_v(cama|camaf|camd|emc3v3|gp[123]|ibr|m|mc|mch|sim[12])$":
+    description: LDOs with variable output and 0~100/10mV tuning
+    type: object
+    $ref: regulator.yaml#
+
+    properties:
+      regulator-allowed-modes: false
+
+    unevaluatedProperties: false
+
+    required:
+      - regulator-name
+
+required:
+  - compatible
+
+additionalProperties: false
diff --git a/Documentation/devicetree/bindings/regulator/mt6323-regulator.txt b/Documentation/devicetree/bindings/regulator/mt6323-regulator.txt
deleted file mode 100644
index a48749d..0000000
--- a/Documentation/devicetree/bindings/regulator/mt6323-regulator.txt
+++ /dev/null
@@ -1,237 +0,0 @@ 
-Mediatek MT6323 Regulator
-
-All voltage regulators are defined as subnodes of the regulators node. A list
-of regulators provided by this controller are defined as subnodes of the
-PMIC's node. Each regulator is named according to its regulator type,
-buck_<name> and ldo_<name>. The definition for each of these nodes is defined
-using the standard binding for regulators at
-Documentation/devicetree/bindings/regulator/regulator.txt.
-
-The valid names for regulators are::
-BUCK:
-  buck_vproc, buck_vsys, buck_vpa
-LDO:
-  ldo_vtcxo, ldo_vcn28, ldo_vcn33_bt, ldo_vcn33_wifi, ldo_va, ldo_vcama,
-  ldo_vio28, ldo_vusb, ldo_vmc, ldo_vmch, ldo_vemc3v3, ldo_vgp1, ldo_vgp2,
-  ldo_vgp3, ldo_vcn18, ldo_vsim1, ldo_vsim2, ldo_vrtc, ldo_vcamaf, ldo_vibr,
-  ldo_vrf18, ldo_vm, ldo_vio18, ldo_vcamd, ldo_vcamio
-
-Example:
-
-	pmic: mt6323 {
-		mt6323regulator: regulators {
-			mt6323_vproc_reg: buck_vproc{
-				regulator-name = "vproc";
-				regulator-min-microvolt = < 700000>;
-				regulator-max-microvolt = <1350000>;
-				regulator-ramp-delay = <12500>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vsys_reg: buck_vsys{
-				regulator-name = "vsys";
-				regulator-min-microvolt = <1400000>;
-				regulator-max-microvolt = <2987500>;
-				regulator-ramp-delay = <25000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vpa_reg: buck_vpa{
-				regulator-name = "vpa";
-				regulator-min-microvolt = < 500000>;
-				regulator-max-microvolt = <3650000>;
-			};
-
-			mt6323_vtcxo_reg: ldo_vtcxo{
-				regulator-name = "vtcxo";
-				regulator-min-microvolt = <2800000>;
-				regulator-max-microvolt = <2800000>;
-				regulator-enable-ramp-delay = <90>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vcn28_reg: ldo_vcn28{
-				regulator-name = "vcn28";
-				regulator-min-microvolt = <2800000>;
-				regulator-max-microvolt = <2800000>;
-				regulator-enable-ramp-delay = <185>;
-			};
-
-			mt6323_vcn33_bt_reg: ldo_vcn33_bt{
-				regulator-name = "vcn33_bt";
-				regulator-min-microvolt = <3300000>;
-				regulator-max-microvolt = <3600000>;
-				regulator-enable-ramp-delay = <185>;
-			};
-
-			mt6323_vcn33_wifi_reg: ldo_vcn33_wifi{
-				regulator-name = "vcn33_wifi";
-				regulator-min-microvolt = <3300000>;
-				regulator-max-microvolt = <3600000>;
-				regulator-enable-ramp-delay = <185>;
-			};
-
-			mt6323_va_reg: ldo_va{
-				regulator-name = "va";
-				regulator-min-microvolt = <2800000>;
-				regulator-max-microvolt = <2800000>;
-				regulator-enable-ramp-delay = <216>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vcama_reg: ldo_vcama{
-				regulator-name = "vcama";
-				regulator-min-microvolt = <1500000>;
-				regulator-max-microvolt = <2800000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vio28_reg: ldo_vio28{
-				regulator-name = "vio28";
-				regulator-min-microvolt = <2800000>;
-				regulator-max-microvolt = <2800000>;
-				regulator-enable-ramp-delay = <216>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vusb_reg: ldo_vusb{
-				regulator-name = "vusb";
-				regulator-min-microvolt = <3300000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <216>;
-				regulator-boot-on;
-			};
-
-			mt6323_vmc_reg: ldo_vmc{
-				regulator-name = "vmc";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <36>;
-				regulator-boot-on;
-			};
-
-			mt6323_vmch_reg: ldo_vmch{
-				regulator-name = "vmch";
-				regulator-min-microvolt = <3000000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <36>;
-				regulator-boot-on;
-			};
-
-			mt6323_vemc3v3_reg: ldo_vemc3v3{
-				regulator-name = "vemc3v3";
-				regulator-min-microvolt = <3000000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <36>;
-				regulator-boot-on;
-			};
-
-			mt6323_vgp1_reg: ldo_vgp1{
-				regulator-name = "vgp1";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vgp2_reg: ldo_vgp2{
-				regulator-name = "vgp2";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <3000000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vgp3_reg: ldo_vgp3{
-				regulator-name = "vgp3";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vcn18_reg: ldo_vcn18{
-				regulator-name = "vcn18";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vsim1_reg: ldo_vsim1{
-				regulator-name = "vsim1";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <3000000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vsim2_reg: ldo_vsim2{
-				regulator-name = "vsim2";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <3000000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vrtc_reg: ldo_vrtc{
-				regulator-name = "vrtc";
-				regulator-min-microvolt = <2800000>;
-				regulator-max-microvolt = <2800000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vcamaf_reg: ldo_vcamaf{
-				regulator-name = "vcamaf";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vibr_reg: ldo_vibr{
-				regulator-name = "vibr";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-enable-ramp-delay = <36>;
-			};
-
-			mt6323_vrf18_reg: ldo_vrf18{
-				regulator-name = "vrf18";
-				regulator-min-microvolt = <1825000>;
-				regulator-max-microvolt = <1825000>;
-				regulator-enable-ramp-delay = <187>;
-			};
-
-			mt6323_vm_reg: ldo_vm{
-				regulator-name = "vm";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-enable-ramp-delay = <216>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vio18_reg: ldo_vio18{
-				regulator-name = "vio18";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-enable-ramp-delay = <216>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			mt6323_vcamd_reg: ldo_vcamd{
-				regulator-name = "vcamd";
-				regulator-min-microvolt = <1200000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-
-			mt6323_vcamio_reg: ldo_vcamio{
-				regulator-name = "vcamio";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-enable-ramp-delay = <216>;
-			};
-		};
-	};