aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.14/950-0343-arm-dt-Add-DT-overlays-for-ADV7282M-OV5647-and-TC358.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0343-arm-dt-Add-DT-overlays-for-ADV7282M-OV5647-and-TC358.patch')
-rw-r--r--target/linux/brcm2708/patches-4.14/950-0343-arm-dt-Add-DT-overlays-for-ADV7282M-OV5647-and-TC358.patch477
1 files changed, 0 insertions, 477 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0343-arm-dt-Add-DT-overlays-for-ADV7282M-OV5647-and-TC358.patch b/target/linux/brcm2708/patches-4.14/950-0343-arm-dt-Add-DT-overlays-for-ADV7282M-OV5647-and-TC358.patch
deleted file mode 100644
index 008af64e8e..0000000000
--- a/target/linux/brcm2708/patches-4.14/950-0343-arm-dt-Add-DT-overlays-for-ADV7282M-OV5647-and-TC358.patch
+++ /dev/null
@@ -1,477 +0,0 @@
-From c4146a18836381f09b1ea2f4295cb94aa606f67b Mon Sep 17 00:00:00 2001
-From: Dave Stevenson <dave.stevenson@raspberrypi.org>
-Date: Thu, 5 Jul 2018 16:44:39 +0100
-Subject: [PATCH 343/454] arm: dt: Add DT overlays for ADV7282M, OV5647, and
- TC358743
-
-DT overlays to setup the above devices via i2c_arm and csi1.
-(This currently does not use the i2c-mux-pinctrl driver to
-dynamically switch the pinctrl)
-
-tc358743 is tc358743 running at a default link frequency
-of 972Mbit/s. This allows up to 1080P50 UYVY on 2 lanes.
-There is a parameter to allow changing the link frequency,
-but the only values supported by the driver are 297000000
-for 594Mbit/s, and 486000000 for 972Mbit/s.
-There is also a parameter to enable 4 lane mode (only
-relevant to Compute Module (1 or 3) csi1).
-
-tc358743-audio overlay enables I2S audio from the TC358743
-to the Pi (SD to GPIO20, SCK to GPIO18, WFS to GPIO19).
-
-ADV7282M is the Analog Devices analogue video to CSI bridge
-chip.
-
-OV5647 is the Pi V1.3 camera module. Currently the driver only
-supports VGA 8bit Bayer and very few controls.
-
-Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
----
- arch/arm/boot/dts/overlays/Makefile | 4 +
- arch/arm/boot/dts/overlays/README | 51 ++++++++
- .../boot/dts/overlays/adv7282m-overlay.dts | 75 ++++++++++++
- arch/arm/boot/dts/overlays/ov5647-overlay.dts | 86 ++++++++++++++
- .../dts/overlays/tc358743-audio-overlay.dts | 51 ++++++++
- .../boot/dts/overlays/tc358743-overlay.dts | 111 ++++++++++++++++++
- 6 files changed, 378 insertions(+)
- create mode 100644 arch/arm/boot/dts/overlays/adv7282m-overlay.dts
- create mode 100644 arch/arm/boot/dts/overlays/ov5647-overlay.dts
- create mode 100644 arch/arm/boot/dts/overlays/tc358743-audio-overlay.dts
- create mode 100644 arch/arm/boot/dts/overlays/tc358743-overlay.dts
-
---- a/arch/arm/boot/dts/overlays/Makefile
-+++ b/arch/arm/boot/dts/overlays/Makefile
-@@ -6,6 +6,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
- ads1015.dtbo \
- ads1115.dtbo \
- ads7846.dtbo \
-+ adv7282m.dtbo \
- akkordion-iqdacplus.dtbo \
- allo-boss-dac-pcm512x-audio.dtbo \
- allo-digione.dtbo \
-@@ -77,6 +78,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
- mmc.dtbo \
- mpu6050.dtbo \
- mz61581.dtbo \
-+ ov5647.dtbo \
- papirus.dtbo \
- pi3-act-led.dtbo \
- pi3-disable-bt.dtbo \
-@@ -127,6 +129,8 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
- spi2-3cs.dtbo \
- superaudioboard.dtbo \
- sx150x.dtbo \
-+ tc358743.dtbo \
-+ tc358743-audio.dtbo \
- tinylcd35.dtbo \
- uart0.dtbo \
- uart1.dtbo \
---- a/arch/arm/boot/dts/overlays/README
-+++ b/arch/arm/boot/dts/overlays/README
-@@ -267,6 +267,15 @@ Params: cs SPI bus
- www.kernel.org/doc/Documentation/devicetree/bindings/input/ads7846.txt
-
-
-+Name: adv7282m
-+Info: Analog Devices ADV7282M analogue video to CSI2 bridge.
-+ Uses Unicam1, which is the standard camera connector on most Pi
-+ variants.
-+Load: dtoverlay=adv7282m,<param>=<val>
-+Params: i2c_pins_28_29 Use pins 28&29 for the I2C instead of 44&45.
-+ This is required for Pi B+, 2, 0, and 0W.
-+
-+
- Name: akkordion-iqdacplus
- Info: Configures the Digital Dreamtime Akkordion Music Player (based on the
- OEM IQAudIO DAC+ or DAC Zero module).
-@@ -1232,6 +1241,23 @@ Params: speed Display
- xohms Touchpanel sensitivity (X-plate resistance)
-
-
-+Name: ov5647
-+Info: Omnivision OV5647 camera module.
-+ Uses Unicam 1, which is the standard camera connector on most Pi
-+ variants.
-+Load: dtoverlay=ov5647,<param>=<val>
-+Params: cam0-pwdn GPIO used to control the sensor powerdown line.
-+
-+ cam0-led GPIO used to control the sensor led
-+ Both these fields should be automatically filled
-+ in by the firmware to reflect the default GPIO
-+ configuration of the particular Pi variant in
-+ use.
-+
-+ i2c_pins_28_29 Use pins 28&29 for the I2C instead of 44&45.
-+ This is required for Pi B+, 2, 0, and 0W.
-+
-+
- Name: papirus
- Info: PaPiRus ePaper Screen by Pi Supply (both HAT and pHAT)
- Load: dtoverlay=papirus,<param>=<val>
-@@ -1828,6 +1854,31 @@ Params: sx150<x>-<n>-<m> Enables
- connected.
-
-
-+Name: tc358743
-+Info: Toshiba TC358743 HDMI to CSI-2 bridge chip.
-+ Uses Unicam 1, which is the standard camera connector on most Pi
-+ variants.
-+Load: dtoverlay=tc358743,<param>=<val>
-+Params: 4lane Use 4 lanes (only applicable to Compute Modules
-+ CAM1 connector).
-+
-+ link-frequency Set the link frequency. Only values of 297000000
-+ (574Mbit/s) and 486000000 (972Mbit/s - default)
-+ are supported by the driver.
-+
-+ i2c_pins_28_29 Use pins 28&29 for the I2C instead of 44&45.
-+ This is required for Pi B+, 2, 0, and 0W.
-+
-+
-+Name: tc358743-audio
-+Info: Used in combination with the tc358743-fast overlay to route the audio
-+ from the TC358743 over I2S to the Pi.
-+ Wiring is LRCK/WFS to GPIO 19, BCK/SCK to GPIO 18, and DATA/SD to GPIO
-+ 20.
-+Load: dtoverlay=tc358743-audio,<param>=<val>
-+Params: card-name Override the default, "tc358743", card name.
-+
-+
- Name: tinylcd35
- Info: 3.5" Color TFT Display by www.tinylcd.com
- Options: Touch, RTC, keypad
---- /dev/null
-+++ b/arch/arm/boot/dts/overlays/adv7282m-overlay.dts
-@@ -0,0 +1,75 @@
-+// Definitions for Analog Devices ADV7282-M video to CSI2 bridge on VC I2C bus
-+/dts-v1/;
-+/plugin/;
-+
-+/{
-+ compatible = "brcm,bcm2708";
-+
-+ fragment@0 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "okay";
-+
-+ adv7282: adv7282@21 {
-+ compatible = "adi,adv7282-m";
-+ reg = <0x21>;
-+ status = "okay";
-+ clock-frequency = <24000000>;
-+ port {
-+ adv7282_0: endpoint {
-+ remote-endpoint = <&csi1_ep>;
-+ clock-lanes = <0>;
-+ data-lanes = <1>;
-+ link-frequencies =
-+ /bits/ 64 <297000000>;
-+
-+ mclk-frequency = <12000000>;
-+ };
-+ };
-+ };
-+ };
-+ };
-+ fragment@1 {
-+ target = <&csi1>;
-+ __overlay__ {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "okay";
-+
-+ port {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ csi1_ep: endpoint {
-+ remote-endpoint = <&adv7282_0>;
-+ };
-+ };
-+ };
-+ };
-+ fragment@2 {
-+ target = <&i2c0_pins>;
-+ __dormant__ {
-+ brcm,pins = <28 29>;
-+ brcm,function = <4>; /* alt0 */
-+ };
-+
-+ };
-+ fragment@3 {
-+ target = <&i2c0_pins>;
-+ __overlay__ {
-+ brcm,pins = <44 45>;
-+ brcm,function = <5>; /* alt1 */
-+ };
-+ };
-+ fragment@4 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ status = "okay";
-+ };
-+ };
-+
-+ __overrides__ {
-+ i2c_pins_28_29 = <0>,"+2-3";
-+ };
-+};
---- /dev/null
-+++ b/arch/arm/boot/dts/overlays/ov5647-overlay.dts
-@@ -0,0 +1,86 @@
-+// Definitions for OV5647 camera module on VC I2C bus
-+/dts-v1/;
-+/plugin/;
-+
-+/{
-+ compatible = "brcm,bcm2708";
-+
-+ fragment@0 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "okay";
-+
-+ ov5647: ov5647@36 {
-+ compatible = "ov5647";
-+ reg = <0x36>;
-+ status = "okay";
-+
-+ pwdn-gpios = <&gpio 41 1>, <&gpio 32 1>;
-+ clocks = <&ov5647_clk>;
-+
-+ ov5647_clk: camera-clk {
-+ compatible = "fixed-clock";
-+ #clock-cells = <0>;
-+ clock-frequency = <25000000>;
-+ };
-+
-+ port {
-+ ov5647_0: endpoint {
-+ remote-endpoint = <&csi1_ep>;
-+ clock-lanes = <0>;
-+ data-lanes = <1 2>;
-+ clock-noncontinuous;
-+ link-frequencies =
-+ /bits/ 64 <297000000>;
-+ };
-+ };
-+ };
-+ };
-+ };
-+
-+ fragment@1 {
-+ target = <&csi1>;
-+ __overlay__ {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "okay";
-+
-+ port {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ csi1_ep: endpoint {
-+ remote-endpoint = <&ov5647_0>;
-+ };
-+ };
-+ };
-+ };
-+
-+ fragment@2 {
-+ target = <&i2c0_pins>;
-+ __dormant__ {
-+ brcm,pins = <28 29>;
-+ brcm,function = <4>; /* alt0 */
-+ };
-+ };
-+ fragment@3 {
-+ target = <&i2c0_pins>;
-+ __overlay__ {
-+ brcm,pins = <44 45>;
-+ brcm,function = <5>; /* alt1 */
-+ };
-+ };
-+ fragment@4 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ status = "okay";
-+ };
-+ };
-+
-+ __overrides__ {
-+ i2c_pins_28_29 = <0>,"+4-5";
-+ cam0-pwdn = <&ov5647>,"pwdn-gpios:4";
-+ cam0-led = <&ov5647>,"pwdn-gpios:16";
-+ };
-+};
---- /dev/null
-+++ b/arch/arm/boot/dts/overlays/tc358743-audio-overlay.dts
-@@ -0,0 +1,51 @@
-+// Definitions to add I2S audio from the Toshiba TC358743 HDMI to CSI2 bridge.
-+// Requires tc358743 overlay to have been loaded to actually function.
-+/dts-v1/;
-+/plugin/;
-+
-+/ {
-+ compatible = "brcm,bcm2708";
-+
-+ fragment@0 {
-+ target = <&i2s>;
-+ __overlay__ {
-+ status = "okay";
-+ };
-+ };
-+
-+ fragment@1 {
-+ target-path = "/";
-+ __overlay__ {
-+ tc358743_codec: tc358743-codec {
-+ #sound-dai-cells = <0>;
-+ compatible = "linux,spdif-dir";
-+ status = "okay";
-+ };
-+ };
-+ };
-+
-+ fragment@2 {
-+ target = <&sound>;
-+ sound_overlay: __overlay__ {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,format = "i2s";
-+ simple-audio-card,name = "tc358743";
-+ simple-audio-card,bitclock-master = <&dailink0_slave>;
-+ simple-audio-card,frame-master = <&dailink0_slave>;
-+ status = "okay";
-+
-+ simple-audio-card,cpu {
-+ sound-dai = <&i2s>;
-+ dai-tdm-slot-num = <2>;
-+ dai-tdm-slot-width = <32>;
-+ };
-+ dailink0_slave: simple-audio-card,codec {
-+ sound-dai = <&tc358743_codec>;
-+ };
-+ };
-+ };
-+
-+ __overrides__ {
-+ card-name = <&sound_overlay>,"simple-audio-card,name";
-+ };
-+};
---- /dev/null
-+++ b/arch/arm/boot/dts/overlays/tc358743-overlay.dts
-@@ -0,0 +1,111 @@
-+// Definitions for Toshiba TC358743 HDMI to CSI2 bridge on VC I2C bus
-+/dts-v1/;
-+/plugin/;
-+
-+/{
-+ compatible = "brcm,bcm2708";
-+
-+ fragment@0 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "okay";
-+
-+ tc358743@0f {
-+ compatible = "toshiba,tc358743";
-+ reg = <0x0f>;
-+ status = "okay";
-+
-+ clocks = <&tc358743_clk>;
-+ clock-names = "refclk";
-+
-+ tc358743_clk: bridge-clk {
-+ compatible = "fixed-clock";
-+ #clock-cells = <0>;
-+ clock-frequency = <27000000>;
-+ };
-+
-+ port {
-+ tc358743: endpoint {
-+ remote-endpoint = <&csi1_ep>;
-+ clock-lanes = <0>;
-+ clock-noncontinuous;
-+ link-frequencies =
-+ /bits/ 64 <486000000>;
-+ };
-+ };
-+ };
-+ };
-+ };
-+
-+ fragment@1 {
-+ target = <&csi1>;
-+ __overlay__ {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "okay";
-+
-+ port {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ csi1_ep: endpoint {
-+ remote-endpoint = <&tc358743>;
-+ };
-+ };
-+ };
-+ };
-+
-+ fragment@2 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ tc358743@0f {
-+ port {
-+ endpoint {
-+ data-lanes = <1 2>;
-+ };
-+ };
-+ };
-+ };
-+ };
-+
-+ fragment@3 {
-+ target = <&i2c_vc>;
-+ __dormant__ {
-+ tc358743@0f {
-+ port {
-+ endpoint {
-+ data-lanes = <1 2 3 4>;
-+ };
-+ };
-+ };
-+ };
-+ };
-+
-+ fragment@4 {
-+ target = <&i2c0_pins>;
-+ __dormant__ {
-+ brcm,pins = <28 29>;
-+ brcm,function = <4>; /* alt0 */
-+ };
-+ };
-+ fragment@5 {
-+ target = <&i2c0_pins>;
-+ __overlay__ {
-+ brcm,pins = <44 45>;
-+ brcm,function = <5>; /* alt1 */
-+ };
-+ };
-+ fragment@6 {
-+ target = <&i2c_vc>;
-+ __overlay__ {
-+ status = "okay";
-+ };
-+ };
-+
-+ __overrides__ {
-+ i2c_pins_28_29 = <0>,"+4-5";
-+ 4lane = <0>, "-2+3";
-+ link-frequency = <&tc358743>,"link-frequencies#0";
-+ };
-+};