diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile index c50b1dfa9d733..32b3395b3fe2c 100644 --- 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 \ @@ -64,6 +65,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ mmc.dtbo \ mpu6050.dtbo \ mz61581.dtbo \ + ov5647.dtbo \ pi3-act-led.dtbo \ pi3-disable-bt.dtbo \ pi3-disable-wifi.dtbo \ @@ -109,6 +111,8 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ spi2-1cs.dtbo \ spi2-2cs.dtbo \ spi2-3cs.dtbo \ + tc358743.dtbo \ + tc358743-fast.dtbo \ tinylcd35.dtbo \ uart1.dtbo \ vc4-fkms-v3d.dtbo \ diff --git a/arch/arm/boot/dts/overlays/adv7282m-overlay.dts b/arch/arm/boot/dts/overlays/adv7282m-overlay.dts new file mode 100644 index 0000000000000..319c6950c656f --- /dev/null +++ b/arch/arm/boot/dts/overlays/adv7282m-overlay.dts @@ -0,0 +1,52 @@ +// 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>; + //clock-noncontinuous; + 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>; + }; + }; + }; + }; +}; + diff --git a/arch/arm/boot/dts/overlays/ov5647-overlay.dts b/arch/arm/boot/dts/overlays/ov5647-overlay.dts new file mode 100644 index 0000000000000..8c1b800196591 --- /dev/null +++ b/arch/arm/boot/dts/overlays/ov5647-overlay.dts @@ -0,0 +1,59 @@ +// 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>; + 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>; + }; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/tc358743-fast-overlay.dts b/arch/arm/boot/dts/overlays/tc358743-fast-overlay.dts new file mode 100644 index 0000000000000..29b8cd004dcf3 --- /dev/null +++ b/arch/arm/boot/dts/overlays/tc358743-fast-overlay.dts @@ -0,0 +1,59 @@ +// 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>; + data-lanes = <1 2>; + clock-noncontinuous; + link-frequencies = + /bits/ 64 <495000000>; + }; + }; + }; + }; + }; + + 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>; + }; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/tc358743-overlay.dts b/arch/arm/boot/dts/overlays/tc358743-overlay.dts new file mode 100644 index 0000000000000..836016a3a25e5 --- /dev/null +++ b/arch/arm/boot/dts/overlays/tc358743-overlay.dts @@ -0,0 +1,59 @@ +// 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>; + 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 = <&tc358743>; + }; + }; + }; + }; +};