Commit 48a0c73f authored by Jacopo Mondi's avatar Jacopo Mondi Committed by Mauro Carvalho Chehab

media: dt-bindings: media: max9286: Define 'maxim,gpio-poc'

Define a new vendor property in the maxim,max9286 binding schema.

The new property allows to declare that the remote camera
power-over-coax is controlled by one of the MAX9286 gpio lines.

As it is currently not possible to establish a regulator as consumer
of the MAX9286 gpio controller for this purpose, the property allows to
declare that the camera power is controlled by the MAX9286 directly.

The property accepts a gpio-index (0 or 1) and one line polarity
flag as defined by dt-bindings/gpio/gpio.h.
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarJacopo Mondi <jacopo+renesas@jmondi.org>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent 882ded92
...@@ -70,6 +70,28 @@ properties: ...@@ -70,6 +70,28 @@ properties:
a remote serializer whose high-threshold noise immunity is not enabled a remote serializer whose high-threshold noise immunity is not enabled
is 100000 micro volts is 100000 micro volts
maxim,gpio-poc:
$ref: '/schemas/types.yaml#/definitions/uint32-array'
minItems: 2
maxItems: 2
description: |
Index of the MAX9286 gpio output line (0 or 1) that controls Power over
Coax to the cameras and its associated polarity flag.
The property accepts an array of two unsigned integers, the first being
the gpio line index (0 or 1) and the second being the gpio line polarity
flag (GPIO_ACTIVE_HIGH or GPIO_ACTIVE_LOW) as defined in
<include/dt-bindings/gpio/gpio.h>.
When the remote cameras power is controlled by one of the MAX9286 gpio
lines, this property has to be used to specify which line among the two
available ones controls the remote camera power enablement.
When this property is used it is not possible to register a gpio
controller as the gpio lines are controlled directly by the MAX9286 and
not available for consumers, nor the 'poc-supply' property should be
specified.
ports: ports:
$ref: /schemas/graph.yaml#/properties/ports $ref: /schemas/graph.yaml#/properties/ports
...@@ -165,7 +187,16 @@ required: ...@@ -165,7 +187,16 @@ required:
- reg - reg
- ports - ports
- i2c-mux - i2c-mux
- gpio-controller
# If 'maxim,gpio-poc' is present, then 'poc-supply' and 'gpio-controller'
# are not allowed.
if:
required:
- maxim,gpio-poc
then:
properties:
poc-supply: false
gpio-controller: false
additionalProperties: false additionalProperties: false
...@@ -310,4 +341,38 @@ examples: ...@@ -310,4 +341,38 @@ examples:
}; };
}; };
}; };
/*
* Example of a deserializer that controls the camera Power over Coax
* through one of its gpio lines.
*/
gmsl-deserializer@6c {
compatible = "maxim,max9286";
reg = <0x6c>;
enable-gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
/*
* The remote camera power is controlled by MAX9286 GPIO line #0.
* No 'poc-supply' nor 'gpio-controller' are specified.
*/
maxim,gpio-poc = <0 GPIO_ACTIVE_LOW>;
/*
* Do not describe connections as they're the same as in the previous
* example.
*/
ports {
#address-cells = <1>;
#size-cells = <0>;
port@4 {
reg = <4>;
};
};
i2c-mux {
#address-cells = <1>;
#size-cells = <0>;
};
};
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment