]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commitdiff
ARM64: dt: tegra: update camera DT in t132 brds
authorCharlie Huang <chahuang@nvidia.com>
Sat, 12 Apr 2014 00:14:46 +0000 (17:14 -0700)
committerLaxman Dewangan <ldewangan@nvidia.com>
Mon, 14 Apr 2014 05:35:29 +0000 (22:35 -0700)
bug 1455100

Change-Id: I9567172bfdb138749ad5a7daa61094a6b6b9e5a6
Signed-off-by: Charlie Huang <chahuang@nvidia.com>
Reviewed-on: http://git-master/r/395421
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
arch/arm64/boot/dts/tegra132-bowmore-e1971-1100-a00-00.dts
arch/arm64/boot/dts/tegra132-bowmore-e1973-1000-a01-00.dts
arch/arm64/boot/dts/tegra132-loki.dts
arch/arm64/boot/dts/tegra132-norrin-pm374-0001-common.dtsi
arch/arm64/boot/dts/tegra132-platforms/tegra132-bowmore-camera-a00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra132-platforms/tegra132-norrin-camera-a00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra132-platforms/tegra132-tn8-camera-a00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra132-tn8-p1761-1270-a03.dts

index 7d553474d6914fe77639fbe3580bfdd3dd0ee66a..cec50cdb2d45f3bf478fb08be3826578d187b696 100644 (file)
@@ -9,6 +9,7 @@
 #include "tegra132-platforms/tegra132-bowmore-powermon-e1971-1100-a00.dtsi"
 #include "tegra132-tn8-dfll.dtsi"
 #include "tegra132-platforms/tegra132-bowmore-sensor-e1934-1000-a00.dtsi"
+#include "tegra132-platforms/tegra132-bowmore-camera-a00.dtsi"
 
 / {
        model = "bowmore";
index db31efb0527eae4083ebc69f1cd66be418d1db4b..4aad537d0be3826e5124cde6e24590ebe2bbef43 100644 (file)
@@ -6,6 +6,7 @@
 #include "tegra124-platforms/tegra124-ardbeg-fixed-e1733-1000-a00.dtsi"
 #include "tegra132-tn8-dfll.dtsi"
 #include "tegra132-platforms/tegra132-bowmore-sensor-e1934-1000-a00.dtsi"
+#include "tegra132-platforms/tegra132-bowmore-camera-a00.dtsi"
 
 / {
        model = "bowmore";
index 7d729f459ff11c8ad1d9a744fb688a5deaf850f4..1833fb361f9670afa9788df5fd0cf41d8058522f 100644 (file)
@@ -4,7 +4,7 @@
 #include <dt-bindings/gpio/tegra-gpio.h>
 #include <tegra132-platforms/tegra132-loki-pinmux.dtsi>
 #include <tegra132-platforms/tegra132-loki-gpio-default.dtsi>
-
+#include <tegra124-platforms/tegra124-loki-camera-a00.dtsi>
 
 / {
        model = "t132loki";
index dbd52445d411b2b8bfbf6eb892241df5bed44c1a..8103d8748d42248cfa9b0be850310ac6185d10eb 100644 (file)
@@ -4,6 +4,7 @@
 #include "tegra124-platforms/tegra124-norrin-keys-pm374-0000-a00.dtsi"
 #include "tegra124-platforms/tegra124-norrin-fixed-pm374-0000-a00.dtsi"
 #include "tegra124-platforms/tegra124-norrin-pmic-pm374-0000-a00.dtsi"
+#include "tegra132-platforms/tegra132-norrin-camera-a00.dtsi"
 
 / {
        model = "norrin";
diff --git a/arch/arm64/boot/dts/tegra132-platforms/tegra132-bowmore-camera-a00.dtsi b/arch/arm64/boot/dts/tegra132-platforms/tegra132-bowmore-camera-a00.dtsi
new file mode 100644 (file)
index 0000000..8fa23ec
--- /dev/null
@@ -0,0 +1,360 @@
+#include <dt-bindings/media/camera.h>
+
+/ {
+       camera-pcl {
+               compatible = "nvidia,tegra124-camera", "simple-bus";
+               configuration = <0xAA55AA55>;
+
+               modules {
+                       module1: module1@modules {
+                               compatible = "sensor,rear";
+                               badge_info = "e1793_rear_camera";
+
+                               sensor {
+                                       profile = <&ov5693_1>;
+                                       platformdata = "ardbeg_ov5693_pdata";
+                               };
+                               focuser {
+                                       profile = <&ad5823_1>;
+                                       platformdata = "ardbeg_ad5823_pdata";
+                               };
+                               flash {
+                                       profile = <&as3648_1>;
+                                       platformdata = "ardbeg_as3648_pdata";
+                               };
+                       };
+                       module2: module2@modules {
+                               compatible = "sensor,front";
+                               badge_info = "e1793_front_camera";
+
+                               sensor {
+                                       profile = <&mt9m114_1>;
+                                       platformdata = "ardbeg_mt9m114_pdata";
+                               };
+                       };
+                       module3: module3@modules {
+                               compatible = "sensor,rear";
+                               badge_info = "e1823_rear_camera";
+
+                               sensor {
+                                       profile = <&imx135_1>;
+                                       platformdata = "ardbeg_imx135_pdata";
+                               };
+                               focuser {
+                                       profile = <&dw9718_1>;
+                                       platformdata = "ardbeg_dw9718_pdata";
+                               };
+                               flash {
+                                       profile = <&as3648_1>;
+                                       platformdata = "ardbeg_as3648_pdata";
+                               };
+                       };
+                       module4: module4@modules {
+                               compatible = "sensor,front";
+                               badge_info = "e1823_front_camera";
+
+                               sensor {
+                                       profile = <&ar0261_1>;
+                                       platformdata = "ardbeg_ar0261_pdata";
+                               };
+                       };
+                       module5: module5@modules {
+                               compatible = "sensor,front";
+                               badge_info = "loki_front_camera_brd";
+
+                               sensor {
+                                       profile = <&ov7695_1>;
+                                       platformdata = "ardbeg_ov7695_pdata";
+                               };
+                       };
+               };
+
+               profiles {
+                       ov5693_1: ov5693@2_0010 {
+                               index = <1>;
+                               chipname = "pcl_OV5693";
+                               type = "sensor";
+                               guid = "s_OV5693";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x10>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "avdd_ov5693", "vdd_af1", "dovdd";
+                               clocks = "mclk";
+                               drivername = "ov5693";
+                               detect = <0x0002 0x300A 0xFFFF 0x5690>;
+                               devid = <0x5693>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITMS(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_WAITMS(1)
+                                       CAMERA_GPIO_SET(221)
+                                       CAMERA_WAITMS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       mt9m114_1: mt9m114@2_0048 {
+                               index = <2>;
+                               chipname = "pcl_MT9M114";
+                               type = "sensor";
+                               guid = "sMT9M114";
+                               position = <1>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x48>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vif";
+                               clocks = "mclk2";
+                               drivername = "mt9m114";
+                               detect = <0x0002 0x0000 0xFFFF 0x2481>;
+                               devid = <0x1040>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(219)
+                                       CAMERA_GPIO_SET(222)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_WAITMS(10)
+                                       CAMERA_GPIO_CLR(222)
+                                       CAMERA_GPIO_SET(219)
+                                       CAMERA_WAITMS(20)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_SET(222)
+                                       CAMERA_GPIO_CLR(219)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       ad5823_1: ad5823@2_000c {
+                               index = <3>;
+                               chipname = "pcl_AD5823";
+                               type = "focuser";
+                               guid = "f_AD5823";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0xc>;
+                               datalen = <1>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vdd", "vdd_i2c";
+                               drivername = "ad5823";
+                               detect = <0x0002 0x0006 0xFFFF 0x0010>;
+                               devid = <0x5823>;
+                               poweron = <
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_GPIO_SET(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_GPIO_CLR(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                       };
+                       as3648_1: as3648@2_0030 {
+                               index = <4>;
+                               chipname = "pcl_AS3648";
+                               type = "flash";
+                               guid = "l_NVCAM0";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x30>;
+                               datalen = <1>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vi2c", "vin";
+                               drivername = "as3648";
+                               detect = <0x0001 0x0000 0x00F0 0x00b0>;
+                               devid = <0x3648>;
+                               poweron = <
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITUS(1000)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                       };
+                       imx135_1: imx135@2_0010 {
+                               index = <5>;
+                               chipname = "pcl_IMX135";
+                               type = "sensor";
+                               guid = "s_IMX135";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x10>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vdig_lv", "vif";
+                               clocks = "mclk";
+                               drivername = "imx135";
+                               detect = <0x0002 0x0016 0xFFFF 0x0135>;
+                               devid = <0x0135>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITMS(5)
+                                       CAMERA_GPIO_SET(221)
+                                       CAMERA_WAITUS(300)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       ar0261_1: ar0261@2_0036 {
+                               index = <6>;
+                               chipname = "pcl_AR0261";
+                               type = "sensor";
+                               guid = "s_AR0261";
+                               position = <1>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x36>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vdig", "vif";
+                               clocks = "mclk2";
+                               drivername = "ar0261";
+                               detect = <0x0002 0x0003 0xFFFF 0x060A>;
+                               devid = <0x0261>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(219)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_WAITMS(40)
+                                       CAMERA_GPIO_SET(219)
+                                       CAMERA_WAITMS(20)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(219)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       ov7695_1: ov7695@2_0021 {
+                               index = <7>;
+                               chipname = "pcl_OV7695";
+                               type = "sensor";
+                               guid = "s_OV7695";
+                               position = <1>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x21>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vif2";
+                               clocks = "mclk2";
+                               drivername = "ov7695";
+                               detect = <0x0002 0x300A 0xFFFF 0x7695>;
+                               devid = <0x7695>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(222)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_WAITMS(40)
+                                       CAMERA_GPIO_SET(222)
+                                       CAMERA_WAITMS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(222)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       dw9718_1: dw9718@2_000c {
+                               index = <8>;
+                               chipname = "pcl_DW9718";
+                               type = "focuser";
+                               guid = "f_NVCAM0";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0xc>;
+                               datalen = <1>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vdd", "vdd_i2c";
+                               drivername = "dw9718";
+                               detect = <0x0002 0x0004 0xFFFF 0x0060>;
+                               devid = <0x9718>;
+                               poweron = <
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_GPIO_SET(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_GPIO_CLR(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                       };
+               };
+       };
+};
+
diff --git a/arch/arm64/boot/dts/tegra132-platforms/tegra132-norrin-camera-a00.dtsi b/arch/arm64/boot/dts/tegra132-platforms/tegra132-norrin-camera-a00.dtsi
new file mode 100644 (file)
index 0000000..9a13898
--- /dev/null
@@ -0,0 +1,179 @@
+#include <dt-bindings/media/camera.h>
+
+/ {
+       camera-pcl {
+               compatible = "nvidia,tegra124-camera", "simple-bus";
+               configuration = <0xAA55AA55>;
+
+               modules {
+                       module1: module1@modules {
+                               compatible = "sensor,rear";
+                               badge_info = "e1823_rear_camera";
+
+                               sensor {
+                                       profile = <&imx135_1>;
+                                       platformdata = "ardbeg_imx135_pdata";
+                               };
+                               focuser {
+                                       profile = <&dw9718_1>;
+                                       platformdata = "ardbeg_dw9718_pdata";
+                               };
+                               flash {
+                                       profile = <&as3648_1>;
+                                       platformdata = "ardbeg_as3648_pdata";
+                               };
+                       };
+                       module2: module4@modules {
+                               compatible = "sensor,front";
+                               badge_info = "e1823_front_camera";
+
+                               sensor {
+                                       profile = <&ar0261_1>;
+                                       platformdata = "ardbeg_ar0261_pdata";
+                               };
+                       };
+               };
+
+               profiles {
+                       as3648_1: as3648@2_0030 {
+                               index = <4>;
+                               chipname = "pcl_AS3648";
+                               type = "flash";
+                               guid = "l_NVCAM0";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x30>;
+                               datalen = <1>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vi2c", "vin";
+                               drivername = "as3648";
+                               detect = <0x0001 0x0000 0x00F0 0x00b0>;
+                               devid = <0x3648>;
+                               poweron = <
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITUS(1000)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                       };
+                       imx135_1: imx135@2_0010 {
+                               index = <5>;
+                               chipname = "pcl_IMX135";
+                               type = "sensor";
+                               guid = "s_IMX135";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x10>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vdig_lv", "vif";
+                               clocks = "mclk";
+                               drivername = "imx135";
+                               detect = <0x0002 0x0016 0xFFFF 0x0135>;
+                               devid = <0x0135>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITMS(5)
+                                       CAMERA_GPIO_SET(221)
+                                       CAMERA_WAITUS(300)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       ar0261_1: ar0261@2_0036 {
+                               index = <6>;
+                               chipname = "pcl_AR0261";
+                               type = "sensor";
+                               guid = "s_AR0261";
+                               position = <1>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x36>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vdig", "vif";
+                               clocks = "mclk2";
+                               drivername = "ar0261";
+                               detect = <0x0002 0x0003 0xFFFF 0x060A>;
+                               devid = <0x0261>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(219)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_WAITMS(40)
+                                       CAMERA_GPIO_SET(219)
+                                       CAMERA_WAITMS(20)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(219)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       dw9718_1: dw9718@2_000c {
+                               index = <8>;
+                               chipname = "pcl_DW9718";
+                               type = "focuser";
+                               guid = "f_NVCAM0";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0xc>;
+                               datalen = <1>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vdd", "vdd_i2c";
+                               drivername = "dw9718";
+                               detect = <0x0002 0x0004 0xFFFF 0x0060>;
+                               devid = <0x9718>;
+                               poweron = <
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_GPIO_SET(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_GPIO_CLR(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                       };
+               };
+       };
+};
+
diff --git a/arch/arm64/boot/dts/tegra132-platforms/tegra132-tn8-camera-a00.dtsi b/arch/arm64/boot/dts/tegra132-platforms/tegra132-tn8-camera-a00.dtsi
new file mode 100644 (file)
index 0000000..92232c4
--- /dev/null
@@ -0,0 +1,147 @@
+#include <dt-bindings/media/camera.h>
+
+/ {
+       camera-pcl {
+               compatible = "nvidia,tegra124-camera", "simple-bus";
+               configuration = <0xAA55AA55>;
+
+               modules {
+                       module1: module1@modules {
+                               compatible = "sensor,rear";
+                               badge_info = "e1793_rear_camera";
+
+                               sensor {
+                                       profile = <&ov5693_1>;
+                                       platformdata = "ardbeg_ov5693_pdata";
+                               };
+                               focuser {
+                                       profile = <&ad5823_1>;
+                                       platformdata = "ardbeg_ad5823_pdata";
+                               };
+                       };
+                       module2: module2@modules {
+                               compatible = "sensor,front";
+                               badge_info = "e1793_front_camera";
+
+                               sensor {
+                                       profile = <&ov5693_2>;
+                                       platformdata = "ardbeg_ov5693f_pdata";
+                               };
+                       };
+               };
+
+               profiles {
+                       ov5693_1: ov5693@2_0010 {
+                               index = <1>;
+                               chipname = "pcl_OV5693";
+                               type = "sensor";
+                               guid = "s_OV5693";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x10>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "avdd_ov5693", "vdd_af1", "dovdd";
+                               clocks = "mclk";
+                               drivername = "ov5693";
+                               detect = <0x0002 0x300A 0xFFFF 0x5690>;
+                               devid = <0x5693>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITMS(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_WAITMS(1)
+                                       CAMERA_GPIO_SET(221)
+                                       CAMERA_WAITMS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       ov5693_2: ov5693@2_0036 {
+                               index = <1>;
+                               chipname = "pcl_OV5693";
+                               type = "sensor";
+                               guid = "s_OV5693";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0x36>;
+                               datalen = <2>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vana", "vdig", "vif";
+                               clocks = "mclk2";
+                               drivername = "ov5693";
+                               detect = <0x0002 0x300A 0xFFFF 0x5690>;
+                               devid = <0x5693>;
+                               poweron = <
+                                       CAMERA_IND_CLK_SET(10000)
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITMS(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(2)
+                                       CAMERA_WAITMS(1)
+                                       CAMERA_GPIO_SET(221)
+                                       CAMERA_WAITMS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_IND_CLK_CLR
+                                       CAMERA_GPIO_CLR(221)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_REGULATOR_OFF(2)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_END
+                                       >;
+                       };
+                       ad5823_1: ad5823@2_000c {
+                               index = <3>;
+                               chipname = "pcl_AD5823";
+                               type = "focuser";
+                               guid = "f_AD5823";
+                               position = <0>;
+                               bustype = "i2c";
+                               busnum = <2>;
+                               addr = <0xc>;
+                               datalen = <1>;
+                               pinmuxgrp = <0xFFFF>;
+                               gpios = <3>;
+                               regulators = "vdd", "vdd_i2c";
+                               drivername = "ad5823";
+                               detect = <0x0002 0x0006 0xFFFF 0x0010>;
+                               devid = <0x5823>;
+                               poweron = <
+                                       CAMERA_REGULATOR_ON(1)
+                                       CAMERA_REGULATOR_ON(0)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_GPIO_SET(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                               poweroff = <
+                                       CAMERA_REGULATOR_OFF(0)
+                                       CAMERA_REGULATOR_OFF(1)
+                                       CAMERA_GPIO_CLR(223)
+                                       CAMERA_WAITUS(10)
+                                       CAMERA_END
+                                       >;
+                       };
+               };
+       };
+};
+
index a240426eab00543de1cdbf0bb113e223d6a27ca9..4f7127aeb7aeaf8c4de770d68fd8f914024f4ff5 100644 (file)
@@ -10,6 +10,7 @@
 #include "tegra124-platforms/tegra124-tn8-sysedp-p1761-1270-a02.dtsi"
 #include "tegra124-platforms/tegra124-tn8-powermon-p1761-a02.dtsi"
 #include "tegra132-tn8-dfll.dtsi"
+#include "tegra132-platforms/tegra132-tn8-camera-a00.dtsi"
 
 / {
        model = "tn8";