Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / media / sun6i-csi.txt
1 Allwinner V3s Camera Sensor Interface
2 -------------------------------------
3
4 Allwinner V3s SoC features a CSI module(CSI1) with parallel interface.
5
6 Required properties:
7   - compatible: value must be one of:
8     * "allwinner,sun6i-a31-csi"
9     * "allwinner,sun8i-h3-csi", "allwinner,sun6i-a31-csi"
10     * "allwinner,sun8i-v3s-csi"
11   - reg: base address and size of the memory-mapped region.
12   - interrupts: interrupt associated to this IP
13   - clocks: phandles to the clocks feeding the CSI
14     * bus: the CSI interface clock
15     * mod: the CSI module clock
16     * ram: the CSI DRAM clock
17   - clock-names: the clock names mentioned above
18   - resets: phandles to the reset line driving the CSI
19
20 The CSI node should contain one 'port' child node with one child 'endpoint'
21 node, according to the bindings defined in
22 Documentation/devicetree/bindings/media/video-interfaces.txt.
23
24 Endpoint node properties for CSI
25 ---------------------------------
26 See the video-interfaces.txt for a detailed description of these properties.
27 - remote-endpoint       : (required) a phandle to the bus receiver's endpoint
28                            node
29 - bus-width:            : (required) must be 8, 10, 12 or 16
30 - pclk-sample           : (optional) (default: sample on falling edge)
31 - hsync-active          : (required; parallel-only)
32 - vsync-active          : (required; parallel-only)
33
34 Example:
35
36 csi1: csi@1cb4000 {
37         compatible = "allwinner,sun8i-v3s-csi";
38         reg = <0x01cb4000 0x1000>;
39         interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
40         clocks = <&ccu CLK_BUS_CSI>,
41                  <&ccu CLK_CSI1_SCLK>,
42                  <&ccu CLK_DRAM_CSI>;
43         clock-names = "bus", "mod", "ram";
44         resets = <&ccu RST_BUS_CSI>;
45
46         port {
47                 /* Parallel bus endpoint */
48                 csi1_ep: endpoint {
49                         remote-endpoint = <&adv7611_ep>;
50                         bus-width = <16>;
51
52                         /* If hsync-active/vsync-active are missing,
53                            embedded BT.656 sync is used */
54                         hsync-active = <0>; /* Active low */
55                         vsync-active = <0>; /* Active low */
56                         pclk-sample = <1>;  /* Rising */
57                 };
58         };
59 };