diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-05 19:36:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-05 19:36:30 -0400 |
commit | f4d33337eac4007793ca11fd1ab68d91ce7aa762 (patch) | |
tree | b775ad213179822225a3e1c1a27e4cc16f8aff68 /Documentation/devicetree/bindings | |
parent | 91c2ff7708d4edf73ef1f0abb3ea4a44b4b0cf1d (diff) | |
parent | 0f3bf3dc1ca394a8385079a5653088672b65c5c4 (diff) |
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab:
- removal of sn9c102. This device driver was replaced a long time ago
by gspca
- solo6x10 and go7007 webcam drivers moved from staging into
mainstream. They were waiting for an API to allow setting the image
detection matrix
- SDR drivers moved from staging into mainstream: sdr-msi3101 (renamed
as msi2500) and rtl2832
- added SDR driver for airspy
- added demux driver: si2165
- rework at several RC subsystem, making the code for RC-5 SZ variant
to be added at the standard RC5 decoder
- added decoder for the XMP IR protocol
- tuner driver moved from staging into mainstream: msi3101 (renamed as
msi001)
- added documentation for some additional SDR pixfmt
- some device tree bindings documented
- added support for exynos3250 at s5p-jpeg
- remove the obsolete, unmaintained and broken mx1_camera driver
- added support for remote controllers at au0828 driver
- added a RC driver: sunxi-cir
- several driver fixes, enhancements and cleanups.
* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (455 commits)
[media] cx23885: fix UNSET/TUNER_ABSENT confusion
[media] coda: fix build error by making reset control optional
[media] radio-miropcm20: fix sparse NULL pointer warning
[media] MAINTAINERS: Update go7007 pattern
[media] MAINTAINERS: Update solo6x10 patterns
[media] media: atmel-isi: add primary DT support
[media] media: atmel-isi: convert the pdata from pointer to structure
[media] media: atmel-isi: add v4l2 async probe support
[media] rcar_vin: add devicetree support
[media] media: pxa_camera device-tree support
[media] media: mt9m111: add device-tree suppport
[media] soc_camera: add support for dt binding soc_camera drivers
[media] media: soc_camera: pxa_camera documentation device-tree support
[media] media: mt9m111: add device-tree documentation
[media] s5p-mfc: remove unnecessary calling to function video_devdata()
[media] s5p-jpeg: add chroma subsampling adjustment for Exynos3250
[media] s5p-jpeg: Prevent erroneous downscaling for Exynos3250 SoC
[media] s5p-jpeg: Assure proper crop rectangle initialization
[media] s5p-jpeg: fix g_selection op
[media] s5p-jpeg: Adjust jpeg_bound_align_image to Exynos3250 needs
...
Diffstat (limited to 'Documentation/devicetree/bindings')
6 files changed, 239 insertions, 4 deletions
diff --git a/Documentation/devicetree/bindings/media/atmel-isi.txt b/Documentation/devicetree/bindings/media/atmel-isi.txt new file mode 100644 index 000000000000..17e71b7b44c6 --- /dev/null +++ b/Documentation/devicetree/bindings/media/atmel-isi.txt | |||
@@ -0,0 +1,51 @@ | |||
1 | Atmel Image Sensor Interface (ISI) SoC Camera Subsystem | ||
2 | ---------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible: must be "atmel,at91sam9g45-isi" | ||
6 | - reg: physical base address and length of the registers set for the device; | ||
7 | - interrupts: should contain IRQ line for the ISI; | ||
8 | - clocks: list of clock specifiers, corresponding to entries in | ||
9 | the clock-names property; | ||
10 | - clock-names: must contain "isi_clk", which is the isi peripherial clock. | ||
11 | |||
12 | ISI supports a single port node with parallel bus. It should contain one | ||
13 | 'port' child node with child 'endpoint' node. Please refer to the bindings | ||
14 | defined in Documentation/devicetree/bindings/media/video-interfaces.txt. | ||
15 | |||
16 | Example: | ||
17 | isi: isi@f0034000 { | ||
18 | compatible = "atmel,at91sam9g45-isi"; | ||
19 | reg = <0xf0034000 0x4000>; | ||
20 | interrupts = <37 IRQ_TYPE_LEVEL_HIGH 5>; | ||
21 | |||
22 | clocks = <&isi_clk>; | ||
23 | clock-names = "isi_clk"; | ||
24 | |||
25 | pinctrl-names = "default"; | ||
26 | pinctrl-0 = <&pinctrl_isi>; | ||
27 | |||
28 | port { | ||
29 | #address-cells = <1>; | ||
30 | #size-cells = <0>; | ||
31 | |||
32 | isi_0: endpoint { | ||
33 | remote-endpoint = <&ov2640_0>; | ||
34 | bus-width = <8>; | ||
35 | }; | ||
36 | }; | ||
37 | }; | ||
38 | |||
39 | i2c1: i2c@f0018000 { | ||
40 | ov2640: camera@0x30 { | ||
41 | compatible = "omnivision,ov2640"; | ||
42 | reg = <0x30>; | ||
43 | |||
44 | port { | ||
45 | ov2640_0: endpoint { | ||
46 | remote-endpoint = <&isi_0>; | ||
47 | bus-width = <8>; | ||
48 | }; | ||
49 | }; | ||
50 | }; | ||
51 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/exynos-jpeg-codec.txt b/Documentation/devicetree/bindings/media/exynos-jpeg-codec.txt index 937b755baf8f..bf52ed4a5067 100644 --- a/Documentation/devicetree/bindings/media/exynos-jpeg-codec.txt +++ b/Documentation/devicetree/bindings/media/exynos-jpeg-codec.txt | |||
@@ -3,9 +3,13 @@ Samsung S5P/EXYNOS SoC series JPEG codec | |||
3 | Required properties: | 3 | Required properties: |
4 | 4 | ||
5 | - compatible : should be one of: | 5 | - compatible : should be one of: |
6 | "samsung,s5pv210-jpeg", "samsung,exynos4210-jpeg"; | 6 | "samsung,s5pv210-jpeg", "samsung,exynos4210-jpeg", |
7 | "samsung,exynos3250-jpeg"; | ||
7 | - reg : address and length of the JPEG codec IP register set; | 8 | - reg : address and length of the JPEG codec IP register set; |
8 | - interrupts : specifies the JPEG codec IP interrupt; | 9 | - interrupts : specifies the JPEG codec IP interrupt; |
9 | - clocks : should contain the JPEG codec IP gate clock specifier, from the | 10 | - clock-names : should contain: |
10 | common clock bindings; | 11 | - "jpeg" for the core gate clock, |
11 | - clock-names : should contain "jpeg" entry. | 12 | - "sclk" for the special clock (optional). |
13 | - clocks : should contain the clock specifier and clock ID list | ||
14 | matching entries in the clock-names property; from | ||
15 | the common clock bindings. | ||
diff --git a/Documentation/devicetree/bindings/media/i2c/mt9m111.txt b/Documentation/devicetree/bindings/media/i2c/mt9m111.txt new file mode 100644 index 000000000000..ed5a334b1e57 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/mt9m111.txt | |||
@@ -0,0 +1,28 @@ | |||
1 | Micron 1.3Mp CMOS Digital Image Sensor | ||
2 | |||
3 | The Micron MT9M111 is a CMOS active pixel digital image sensor with an active | ||
4 | array size of 1280H x 1024V. It is programmable through a simple two-wire serial | ||
5 | interface. | ||
6 | |||
7 | Required Properties: | ||
8 | - compatible: value should be "micron,mt9m111" | ||
9 | |||
10 | For further reading on port node refer to | ||
11 | Documentation/devicetree/bindings/media/video-interfaces.txt. | ||
12 | |||
13 | Example: | ||
14 | |||
15 | i2c_master { | ||
16 | mt9m111@5d { | ||
17 | compatible = "micron,mt9m111"; | ||
18 | reg = <0x5d>; | ||
19 | |||
20 | remote = <&pxa_camera>; | ||
21 | port { | ||
22 | mt9m111_1: endpoint { | ||
23 | bus-width = <8>; | ||
24 | remote-endpoint = <&pxa_camera>; | ||
25 | }; | ||
26 | }; | ||
27 | }; | ||
28 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/pxa-camera.txt b/Documentation/devicetree/bindings/media/pxa-camera.txt new file mode 100644 index 000000000000..11f5b5d51af8 --- /dev/null +++ b/Documentation/devicetree/bindings/media/pxa-camera.txt | |||
@@ -0,0 +1,43 @@ | |||
1 | Marvell PXA camera host interface | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "marvell,pxa270-qci" | ||
5 | - reg: register base and size | ||
6 | - interrupts: the interrupt number | ||
7 | - any required generic properties defined in video-interfaces.txt | ||
8 | |||
9 | Optional properties: | ||
10 | - clocks: input clock (see clock-bindings.txt) | ||
11 | - clock-output-names: should contain the name of the clock driving the | ||
12 | sensor master clock MCLK | ||
13 | - clock-frequency: host interface is driving MCLK, and MCLK rate is this rate | ||
14 | |||
15 | Example: | ||
16 | |||
17 | pxa_camera: pxa_camera@50000000 { | ||
18 | compatible = "marvell,pxa270-qci"; | ||
19 | reg = <0x50000000 0x1000>; | ||
20 | interrupts = <33>; | ||
21 | |||
22 | clocks = <&pxa2xx_clks 24>; | ||
23 | clock-names = "ciclk"; | ||
24 | clock-frequency = <50000000>; | ||
25 | clock-output-names = "qci_mclk"; | ||
26 | |||
27 | status = "okay"; | ||
28 | |||
29 | port { | ||
30 | #address-cells = <1>; | ||
31 | #size-cells = <0>; | ||
32 | |||
33 | /* Parallel bus endpoint */ | ||
34 | qci: endpoint@0 { | ||
35 | reg = <0>; /* Local endpoint # */ | ||
36 | remote-endpoint = <&mt9m111_1>; | ||
37 | bus-width = <8>; /* Used data lines */ | ||
38 | hsync-active = <0>; /* Active low */ | ||
39 | vsync-active = <0>; /* Active low */ | ||
40 | pclk-sample = <1>; /* Rising */ | ||
41 | }; | ||
42 | }; | ||
43 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/rcar_vin.txt b/Documentation/devicetree/bindings/media/rcar_vin.txt new file mode 100644 index 000000000000..ba61782c2af9 --- /dev/null +++ b/Documentation/devicetree/bindings/media/rcar_vin.txt | |||
@@ -0,0 +1,86 @@ | |||
1 | Renesas RCar Video Input driver (rcar_vin) | ||
2 | ------------------------------------------ | ||
3 | |||
4 | The rcar_vin device provides video input capabilities for the Renesas R-Car | ||
5 | family of devices. The current blocks are always slaves and suppot one input | ||
6 | channel which can be either RGB, YUYV or BT656. | ||
7 | |||
8 | - compatible: Must be one of the following | ||
9 | - "renesas,vin-r8a7791" for the R8A7791 device | ||
10 | - "renesas,vin-r8a7790" for the R8A7790 device | ||
11 | - "renesas,vin-r8a7779" for the R8A7779 device | ||
12 | - "renesas,vin-r8a7778" for the R8A7778 device | ||
13 | - reg: the register base and size for the device registers | ||
14 | - interrupts: the interrupt for the device | ||
15 | - clocks: Reference to the parent clock | ||
16 | |||
17 | Additionally, an alias named vinX will need to be created to specify | ||
18 | which video input device this is. | ||
19 | |||
20 | The per-board settings: | ||
21 | - port sub-node describing a single endpoint connected to the vin | ||
22 | as described in video-interfaces.txt[1]. Only the first one will | ||
23 | be considered as each vin interface has one input port. | ||
24 | |||
25 | These settings are used to work out video input format and widths | ||
26 | into the system. | ||
27 | |||
28 | |||
29 | Device node example | ||
30 | ------------------- | ||
31 | |||
32 | aliases { | ||
33 | vin0 = &vin0; | ||
34 | }; | ||
35 | |||
36 | vin0: vin@0xe6ef0000 { | ||
37 | compatible = "renesas,vin-r8a7790"; | ||
38 | clocks = <&mstp8_clks R8A7790_CLK_VIN0>; | ||
39 | reg = <0 0xe6ef0000 0 0x1000>; | ||
40 | interrupts = <0 188 IRQ_TYPE_LEVEL_HIGH>; | ||
41 | status = "disabled"; | ||
42 | }; | ||
43 | |||
44 | Board setup example (vin1 composite video input) | ||
45 | ------------------------------------------------ | ||
46 | |||
47 | &i2c2 { | ||
48 | status = "ok"; | ||
49 | pinctrl-0 = <&i2c2_pins>; | ||
50 | pinctrl-names = "default"; | ||
51 | |||
52 | adv7180@20 { | ||
53 | compatible = "adi,adv7180"; | ||
54 | reg = <0x20>; | ||
55 | remote = <&vin1>; | ||
56 | |||
57 | port { | ||
58 | adv7180: endpoint { | ||
59 | bus-width = <8>; | ||
60 | remote-endpoint = <&vin1ep0>; | ||
61 | }; | ||
62 | }; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | /* composite video input */ | ||
67 | &vin1 { | ||
68 | pinctrl-0 = <&vin1_pins>; | ||
69 | pinctrl-names = "default"; | ||
70 | |||
71 | status = "ok"; | ||
72 | |||
73 | port { | ||
74 | #address-cells = <1>; | ||
75 | #size-cells = <0>; | ||
76 | |||
77 | vin1ep0: endpoint { | ||
78 | remote-endpoint = <&adv7180>; | ||
79 | bus-width = <8>; | ||
80 | }; | ||
81 | }; | ||
82 | }; | ||
83 | |||
84 | |||
85 | |||
86 | [1] video-interfaces.txt common video media interface | ||
diff --git a/Documentation/devicetree/bindings/media/sunxi-ir.txt b/Documentation/devicetree/bindings/media/sunxi-ir.txt new file mode 100644 index 000000000000..23dd5ad07b7c --- /dev/null +++ b/Documentation/devicetree/bindings/media/sunxi-ir.txt | |||
@@ -0,0 +1,23 @@ | |||
1 | Device-Tree bindings for SUNXI IR controller found in sunXi SoC family | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : should be "allwinner,sun4i-a10-ir"; | ||
5 | - clocks : list of clock specifiers, corresponding to | ||
6 | entries in clock-names property; | ||
7 | - clock-names : should contain "apb" and "ir" entries; | ||
8 | - interrupts : should contain IR IRQ number; | ||
9 | - reg : should contain IO map address for IR. | ||
10 | |||
11 | Optional properties: | ||
12 | - linux,rc-map-name : Remote control map name. | ||
13 | |||
14 | Example: | ||
15 | |||
16 | ir0: ir@01c21800 { | ||
17 | compatible = "allwinner,sun4i-a10-ir"; | ||
18 | clocks = <&apb0_gates 6>, <&ir0_clk>; | ||
19 | clock-names = "apb", "ir"; | ||
20 | interrupts = <0 5 1>; | ||
21 | reg = <0x01C21800 0x40>; | ||
22 | linux,rc-map-name = "rc-rc6-mce"; | ||
23 | }; | ||