[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1c4f9aef-5e19-691e-706c-f65deed597e4@synopsys.com>
Date: Tue, 16 May 2017 19:05:40 +0100
From: Ramiro Oliveira <Ramiro.Oliveira@...opsys.com>
To: Rob Herring <robh@...nel.org>,
Ramiro Oliveira <Ramiro.Oliveira@...opsys.com>
CC: <linux-kernel@...r.kernel.org>, <linux-media@...r.kernel.org>,
<devicetree@...r.kernel.org>, <CARLOS.PALMINHA@...opsys.com>,
Andrew-CT Chen <andrew-ct.chen@...iatek.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Arnd Bergmann <arnd@...db.de>, Benoit Parrot <bparrot@...com>,
"David S. Miller" <davem@...emloft.net>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Guenter Roeck <linux@...ck-us.net>,
Hans Verkuil <hans.verkuil@...co.com>,
Hugues Fruchet <hugues.fruchet@...com>,
Jean-Christophe Trotin <jean-christophe.trotin@...com>,
Kamil Debski <k.debski@...sung.com>,
Laurent Pinchart <laurent.pinchart+renesas@...asonboard.com>,
Mark Rutland <mark.rutland@....com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Minghsiu Tsai <minghsiu.tsai@...iatek.com>,
Niklas Söderlund
<niklas.soderlund+renesas@...natech.se>,
Peter Griffin <peter.griffin@...aro.org>,
Rick Chang <rick.chang@...iatek.com>,
Simon Horman <simon.horman@...ronome.com>,
Tiffany Lin <tiffany.lin@...iatek.com>
Subject: Re: [PATCH 3/4] Documentation: dt: Add bindings documentation for
CSI-2 Host Video Platform
Hi Rob,
Once again sorry for the late response and thank you for your feedback.
On 3/15/2017 6:35 PM, Rob Herring wrote:
> On Tue, Mar 07, 2017 at 02:37:50PM +0000, Ramiro Oliveira wrote:
>> Create device tree bindings documentation for the CSI-2 Host Video
>> platform.
>>
>> Signed-off-by: Ramiro Oliveira <roliveir@...opsys.com>
>> ---
>> .../devicetree/bindings/media/snps,plat-csi2.txt | 77 ++++++++++++++++++++++
>> 1 file changed, 77 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/media/snps,plat-csi2.txt
>>
>> diff --git a/Documentation/devicetree/bindings/media/snps,plat-csi2.txt b/Documentation/devicetree/bindings/media/snps,plat-csi2.txt
>> new file mode 100644
>> index 000000000000..f559257a0a44
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/media/snps,plat-csi2.txt
>> @@ -0,0 +1,77 @@
>> +Synopsys DesignWare CSI-2 Host Video Platform
>> +
>> +The Synopsys DesignWare CSI-2 Host Video Device subsystem comprises of multiple
>> +sub-devices represented by separate device tree nodes. Currently this includes:
>> +plat-csi2, video-device, and dw-mipi-csi.
>> +
>> +The sub-subdevices are defined as child nodes of the common 'camera'.
>> +
>> +Common 'camera' node
>> +--------------------
>> +
>> +Required properties:
>> +
>> +- compatible: must be "snps,plat-csi2", "simple-bus"
>> +
>> +The 'camera' node must include at least one 'video-device' and one 'dw-mipi-csi'
>> +child node.
>> +
>> +'video-device' device nodes
>> +-------------------
>> +
>> +Required properties:
>> +
>> +- compatible: "snps,video-device"
>> +- dmas, dma-names: List of one DMA specifier and identifier string (as defined
>> + in Documentation/devicetree/bindings/dma/dma.txt) per port. Each port
>> + requires a DMA channel with the identifier string set to "vdma" followed by
>> + the port index.
>> +
>> +Image sensor nodes
>> +------------------
>> +
>> +The sensor device nodes should be added to their control bus controller (e.g.
>> +I2C0) nodes and linked to a port node in the dw-mipi-csi,using the common video
>> +interfaces bindings, defined in video-interfaces.txt.
>> +
>> +Example:
>> +
>> +
>> + camera {
>> + compatible = "snps,plat-csi2", "simple-bus";
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> + ranges;
>> + video_device: video-device@...0000 {
>
> Drop the '0x' and any leading 0s on unit addresses.
>
Sure.
>> + compatible = "snps,video-device";
>> + dmas = <&axi_vdma_0 0>;
>> + dma-names = "vdma0";
>> + };
>
> If video-device is not a real device, then you shouldn't need a DT node.
> I need a better explanation or diagram of what the h/w blocks and
> connections look like here.
>
> From the looks of this, you can just move dmas to the csi2 node. But I
> don't think that is right, because you can't generally just use an
> external DMA controller with camera data (maybe for validation, but it's
> not something you see in SoCs).
>
Actually we do use an external DMA controller directly connected to the CSI-2
Host controller, although, like you said, we use it for HW validation.
I "created" the video-device in order to remove the DMA engine control from the
CSI-2 Host driver, in order to make it more useful to other people.
>> +
>> + csi2: csi2@...3000 {
>> + compatible = "snps,dw-mipi-csi";
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> + reg = < 0x03000 0x7FF>;
>> + interrupts = <2>;
>> + phys = <&mipi_phy_ctrl1 0>;
>> + resets = <&csi2_rst 1>;
>> +
>> + output-type = <2>;
>> + ipi-mode = <0>;
>> + ipi-color-mode = <0>;
>> + ipi-auto-flush = <1>;
>> + virtual-channel = <0>;
>> +
>> + port@1 {
>> + reg = <1>;
>> + csi1_ep1: endpoint {
>> + remote-endpoint = <&camera>;
>> + data-lanes = <1 2>;
>> + };
>> + };
>> + };
>> + };
>> + };
>> +
>> +The dw-mipi-csi device binding is defined in snps,dw-mipi-csi.txt.
>> --
>> 2.11.0
>>
>>
--
Best Regards
Ramiro Oliveira
Ramiro.Oliveira@...opsys.com
Powered by blists - more mailing lists