Re: [PATCH 20/29] dt-bindings:iio:dac:microchip,mcp4725 yaml conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jonathan,

On Mon, 12 Oct 2020 15:39:23 +0100
Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> wrote:

> On Mon, 12 Oct 2020 16:02:30 +0200
> Tomas Novotny <tomas@xxxxxxxxxx> wrote:
> 
> > Hi Jonathan,
> > 
> > On Sun, 11 Oct 2020 18:07:40 +0100
> > Jonathan Cameron <jic23@xxxxxxxxxx> wrote:
> >   
> > > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > > 
> > > I'm not sure vdd-supply absolutely has to be provided if vref-supply
> > > is, but as the previous binding docs stated it was required it seems
> > > reasonable to leave it as such.    
> > 
> > Good catch. Vdd is useless on MCP4726 if Vref is specified. The driver
> > requires Vdd...  
> 
> The driver will get the regulator but as it's not via an optional
> call it the regulator core will provide a stub regulator.
> If the ref regulator is present, all that will happen with vdd is
> a regulator_enable() call which is fine with a stub regulator (it's
> a noop).   So we should be good to update the binding to specify
> the requirement.   Perhaps it's one to do as a follow up patch?
> Given any existing DT must be providing that regulator, there is
> no rush for us to fix it :)

ok, I see, I will handle with a follow up patch when this will be merged.
Thanks,

Tomas

> > How to proceed there?
> > 
> > Thanks,
> > 
> > Tomas
> >   
> > > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > > Cc:  Tomas Novotny <tomas@xxxxxxxxxx>
> > > ---
> > >  .../devicetree/bindings/iio/dac/mcp4725.txt   | 35 ---------
> > >  .../bindings/iio/dac/microchip,mcp4725.yaml   | 71 +++++++++++++++++++
> > >  2 files changed, 71 insertions(+), 35 deletions(-)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/iio/dac/mcp4725.txt b/Documentation/devicetree/bindings/iio/dac/mcp4725.txt
> > > deleted file mode 100644
> > > index 1bc6c093fbfe..000000000000
> > > --- a/Documentation/devicetree/bindings/iio/dac/mcp4725.txt
> > > +++ /dev/null
> > > @@ -1,35 +0,0 @@
> > > -Microchip mcp4725 and mcp4726 DAC device driver
> > > -
> > > -Required properties:
> > > -	- compatible: Must be "microchip,mcp4725" or "microchip,mcp4726"
> > > -	- reg: Should contain the DAC I2C address
> > > -	- vdd-supply: Phandle to the Vdd power supply. This supply is used as a
> > > -	  voltage reference on mcp4725. It is used as a voltage reference on
> > > -	  mcp4726 if there is no vref-supply specified.
> > > -
> > > -Optional properties (valid only for mcp4726):
> > > -	- vref-supply: Optional phandle to the Vref power supply. Vref pin is
> > > -	  used as a voltage reference when this supply is specified.
> > > -	- microchip,vref-buffered: Boolean to enable buffering of the external
> > > -	  Vref pin. This boolean is not valid without the vref-supply. Quoting
> > > -	  the datasheet: This is offered in cases where the reference voltage
> > > -	  does not have the current capability not to drop its voltage when
> > > -	  connected to the internal resistor ladder circuit.
> > > -
> > > -Examples:
> > > -
> > > -	/* simple mcp4725 */
> > > -	mcp4725@60 {
> > > -		compatible = "microchip,mcp4725";
> > > -		reg = <0x60>;
> > > -		vdd-supply = <&vdac_vdd>;
> > > -	};
> > > -
> > > -	/* mcp4726 with the buffered external reference voltage */
> > > -	mcp4726@60 {
> > > -		compatible = "microchip,mcp4726";
> > > -		reg = <0x60>;
> > > -		vdd-supply = <&vdac_vdd>;
> > > -		vref-supply = <&vdac_vref>;
> > > -		microchip,vref-buffered;
> > > -	};
> > > diff --git a/Documentation/devicetree/bindings/iio/dac/microchip,mcp4725.yaml b/Documentation/devicetree/bindings/iio/dac/microchip,mcp4725.yaml
> > > new file mode 100644
> > > index 000000000000..271998610ceb
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/iio/dac/microchip,mcp4725.yaml
> > > @@ -0,0 +1,71 @@
> > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/iio/dac/microchip,mcp4725.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Microchip mcp4725 and mcp4726 DAC
> > > +
> > > +maintainers:
> > > +  - Tomas Novotny <tomas@xxxxxxxxxx>
> > > +
> > > +properties:
> > > +  compatible:
> > > +    enum:
> > > +      - microchip,mcp4725
> > > +      - microchip,mcp4726
> > > +
> > > +  reg:
> > > +    maxItems: 1
> > > +
> > > +  vdd-supply:
> > > +    description: |
> > > +      Provides both power and acts as the reference supply on the mcp4725.
> > > +      For the mcp4726 it will be used as the reference voltage if vref-supply
> > > +      is not provided.
> > > +
> > > +  vref-supply:
> > > +    description:
> > > +      Vref pin is used as a voltage reference when this supply is specified.
> > > +
> > > +  microchip,vref-buffered:
> > > +    type: boolean
> > > +    description: |
> > > +      Enable buffering of the external Vref pin. This boolean is not valid
> > > +      without the vref-supply. Quoting the datasheet: This is offered in
> > > +      cases where the reference voltage does not have the current
> > > +      capability not to drop its voltage when connected to the internal
> > > +      resistor ladder circuit.
> > > +
> > > +allOf:
> > > +  - if:
> > > +      not:
> > > +        properties:
> > > +          compatible:
> > > +            contains:
> > > +              const: microchip,mcp4726
> > > +    then:
> > > +      properties:
> > > +        vref-supply: false
> > > +        microchip,vref-buffered: false
> > > +
> > > +required:
> > > +  - compatible
> > > +  - reg
> > > +  - vdd-supply
> > > +
> > > +additionalProperties: false
> > > +
> > > +examples:
> > > +  - |
> > > +    i2c {
> > > +        #address-cells = <1>;
> > > +        #size-cells = <0>;
> > > +
> > > +        mcp4725@60 {
> > > +            compatible = "microchip,mcp4725";
> > > +            reg = <0x60>;
> > > +            vdd-supply = <&vdac_vdd>;
> > > +        };
> > > +    };
> > > +...    
> 
> 



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux