Re: [PATCH v2 1/4] dt-bindings: media: max9286: Describe gpio-hog

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

 



Hi Laurent,

On Tue, Mar 16, 2021 at 12:15:16AM +0200, Laurent Pinchart wrote:
> Hi Jacopo,
>
> Thank you for the patch.
>
> On Mon, Mar 15, 2021 at 05:30:25PM +0100, Jacopo Mondi wrote:
> > The MAX9286 GMSL deserializer features gpio controller capabilities,
> > as it provides 2 GPIO lines.
> >
> > As establishing a regulator that uses one of the GPIO lines and
> > enabling/disabling it at run-time in the max9286 won't work due to
> > a circular dependency on the gpio-controller/regulator creation, allow
> > the usage of a gpio-hog for that purpose.
> >
> > The usage of the gpio-hog is required in designs where the MAX9286
> > GPIO lines control the remote cameras power.
> >
> > Signed-off-by: Jacopo Mondi <jacopo+renesas@xxxxxxxxxx>
>
> That's really a workaround until we can find a good solution, do we have
> to officially support it in the DT bindings ?
>

That's an interesting question. The 'good' solution implies resolving
the circular dependency on the regulator/gpio-controller creation and
I feel like it might take a while to find a proper solution.

In the meantime, all designs like Eagle that control the camera power
through a MAX9286 gpio have to rely on this. I'll go with the majority
here: either we add this and upstream the gmsl .dtsi for eagle, or we
keep out-of-tree patches :/

> > ---
> >  .../bindings/media/i2c/maxim,max9286.yaml        | 16 ++++++++++++++++
> >  1 file changed, 16 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml
> > index ee16102fdfe7..9038300e373c 100644
> > --- a/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml
> > +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml
> > @@ -177,6 +177,22 @@ properties:
> >
> >      additionalProperties: false
> >
> > +patternProperties:
> > +  "^(hog-[0-9]+|.+-hog(-[0-9]+)?)$":
> > +    type: object
> > +    properties:
> > +      gpio-hog: true
> > +      gpios: true
> > +      output-low: true
> > +      line-name: true
> > +
> > +    required:
> > +      - gpio-hog
> > +      - gpios
> > +      - output-low
> > +
> > +    additionalProperties: false
> > +
> >  required:
> >    - compatible
> >    - reg
>
> --
> Regards,
>
> Laurent Pinchart



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux