From patchwork Sun Apr 24 21:08:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ivaylo Dimitrov X-Patchwork-Id: 34029 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.84_2) (envelope-from ) id 1auRIq-0007D3-TM; Sun, 24 Apr 2016 21:10:52 +0000 X-tubIT-Incoming-IP: 209.132.180.67 Received: from vger.kernel.org ([209.132.180.67]) by mail.tu-berlin.de (exim-4.76/mailfrontend-7) with esmtp id 1auRIo-0000Ec-2t; Sun, 24 Apr 2016 23:10:52 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753340AbcDXVKg (ORCPT + 1 other); Sun, 24 Apr 2016 17:10:36 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:33243 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753259AbcDXVKe (ORCPT ); Sun, 24 Apr 2016 17:10:34 -0400 Received: by mail-wm0-f67.google.com with SMTP id r12so17689104wme.0 for ; Sun, 24 Apr 2016 14:10:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=fi5PyvphbEQMo+q+mPdZH/5/djJ59nsKVeU5eZk/h6I=; b=C0eXX+47tWeQbvW5woncYMo+3oAr5SeleKZnRLZCORszDbp/I4YN4j/fhwfIfoOeE7 KXoMoNUA06bVb/hyR42lx9wVQ0fk0YdOdh0Q2Zk1DQPLJkED42DkqXz2LpiX6l+OuGLx sC66Md1eWg6Bkd2CoiYlN1iPEreoBsy8ze+fyKD/y3E8xqy75cG5hgr0FgecEN461kuh Stmrjh85gkdtgMEE0qYPLuRq0hKZbDhnNMTFt9fxuEYAYzp7MQ0+S3PCeBnD/s7no4kD CQSxs44NQmDmKLDjlAPrG0lfIeQoa2pJOCCR6OerM8VOdUNoC5wAhek+iW/O4BFlaY9K gBAA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=fi5PyvphbEQMo+q+mPdZH/5/djJ59nsKVeU5eZk/h6I=; b=mf/QUq/qZmICIisUgnJotrsacSVnK33Nj3WsHuxyn49gBry7Cr8aRAwpl0IcDUO4Ac 7BgfSWgm9dX4OCNfp1TFXqs1Oed5wwNP2w5iiFd8ahgEUTNTknMI6YFkFmcufq/S1b8h MuM3YwLvS+LsILcAlUkRd7qGPDOAHLINipMvVmYcl7dGKDBXYoth0LvNtRACJQyFFnDY n9dTjXptgzE5f1RCta149aU0hIiA68UkE39uUE/j/HkFaq2vKKrgOM65dUI+MEnnlnF6 zyAJGzb9MjWrhpURf8cEquYT39Pof7kijwEwbadeOZ8zu+OrPRTeYvXKtxLkUTZ0MFM6 CQiw== X-Gm-Message-State: AOPr4FVr2sHg14cOOUMrzlkpihhGgzHWFFsBJ+5R3HQXK3yyalfHhTDHX6q43zflgrWE2g== X-Received: by 10.28.31.22 with SMTP id f22mr8458047wmf.103.1461532232737; Sun, 24 Apr 2016 14:10:32 -0700 (PDT) Received: from localhost.localdomain ([46.249.74.23]) by smtp.gmail.com with ESMTPSA id b2sm15440182wmb.9.2016.04.24.14.10.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 24 Apr 2016 14:10:32 -0700 (PDT) From: Ivaylo Dimitrov To: sakari.ailus@iki.fi Cc: sre@kernel.org, pali.rohar@gmail.com, pavel@ucw.cz, linux-media@vger.kernel.org, Ivaylo Dimitrov Subject: [RFC PATCH 20/24] ARM: dts: omap3-n900: enable cameras Date: Mon, 25 Apr 2016 00:08:20 +0300 Message-Id: <1461532104-24032-21-git-send-email-ivo.g.dimitrov.75@gmail.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1461532104-24032-1-git-send-email-ivo.g.dimitrov.75@gmail.com> References: <20160420081427.GZ32125@valkosipuli.retiisi.org.uk> <1461532104-24032-1-git-send-email-ivo.g.dimitrov.75@gmail.com> Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-PMX-Version: 6.0.0.2142326, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2016.4.24.210315 X-PMX-Spam: Gauge=IIIIIIIII, Probability=9%, Report=' FORGED_FROM_GMAIL 0.1, MULTIPLE_RCPTS 0.1, HTML_00_01 0.05, HTML_00_10 0.05, BODY_SIZE_4000_4999 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, DKIM_SIGNATURE 0, NO_URI_HTTPS 0, REFERENCES 0, SINGLE_URI_IN_BODY 0, URI_ENDS_IN_HTML 0, __ANY_URI 0, __CP_MEDIA_BODY 0, __CP_URI_IN_BODY 0, __DATE_TZ_RU 0, __FRAUD_BODY_WEBMAIL 0, __FRAUD_WEBMAIL 0, __FRAUD_WEBMAIL_FROM 0, __FROM_GMAIL 0, __HAS_FROM 0, __HAS_MSGID 0, __HAS_X_MAILER 0, __HAS_X_MAILING_LIST 0, __IN_REP_TO 0, __MIME_TEXT_ONLY 0, __MULTIPLE_RCPTS_CC_X2 0, __PHISH_SPEAR_STRUCTURE_1 0, __REFERENCES 0, __SANE_MSGID 0, __SINGLE_URI_TEXT 0, __SUBJ_ALPHA_END 0, __TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_IN_BODY 0, __URI_NO_WWW 0, __URI_NS , __URI_WITH_PATH 0, __YOUTUBE_RCVD 0' Signed-off-by: Ivaylo Dimitrov --- arch/arm/boot/dts/omap3-n900.dts | 140 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 140 insertions(+) diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts index cc4cab2..03e1613 100644 --- a/arch/arm/boot/dts/omap3-n900.dts +++ b/arch/arm/boot/dts/omap3-n900.dts @@ -177,6 +177,84 @@ io-channels = <&twl_madc 0>, <&twl_madc 4>, <&twl_madc 12>; io-channel-names = "temp", "bsi", "vbat"; }; + + rear_camera: camera@0 { + compatible = "linux,camera"; + + module { + model = "TCM8341MD"; + sensor = <&cam1>; + focus = <&autofocus>; + }; + }; + + front_camera: camera@1 { + compatible = "linux,camera"; + + module { + model = "VS6555"; + sensor = <&cam2>; + }; + }; + + video-bus-switch { + compatible = "video-bus-switch"; + + switch-gpios = <&gpio4 1 GPIO_ACTIVE_HIGH>; /* 97 */ + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + csi_switch_in: endpoint { + remote-endpoint = <&csi_isp>; + }; + }; + + port@1 { + reg = <1>; + + csi_switch_out1: endpoint { + remote-endpoint = <&csi_cam1>; + }; + }; + + port@2 { + reg = <2>; + + csi_switch_out2: endpoint { + remote-endpoint = <&csi_cam2>; + }; + }; + }; + }; +}; + +&isp { + vdds_csib-supply = <&vaux2>; + + pinctrl-names = "default"; + pinctrl-0 = <&camera_pins>; + + ports { + port@1 { + reg = <1>; + + csi_isp: endpoint { + remote-endpoint = <&csi_switch_in>; + bus-type = <3>; /* CCP2 */ + clock-lanes = <0>; + data-lanes = <1>; + lane-polarity = <0 0>; + clock-inv = <0>; + strobe = <0>; + crc = <0>; + }; + }; + }; }; &omap3_pmx_core { @@ -341,6 +419,22 @@ OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4) /* gpio 157 => cmt_bsi */ >; }; + + camera_pins: pinmux_camera { + pinctrl-single,pins = < + OMAP3_CORE1_IOPAD(0x210c, PIN_OUTPUT | MUX_MODE7) /* cam_hs */ + OMAP3_CORE1_IOPAD(0x210e, PIN_OUTPUT | MUX_MODE7) /* cam_vs */ + OMAP3_CORE1_IOPAD(0x2110, PIN_OUTPUT | MUX_MODE0) /* cam_xclka */ + OMAP3_CORE1_IOPAD(0x211e, PIN_OUTPUT | MUX_MODE7) /* cam_d4 */ + OMAP3_CORE1_IOPAD(0x2122, PIN_INPUT | MUX_MODE0) /* cam_d6 */ + OMAP3_CORE1_IOPAD(0x2124, PIN_INPUT | MUX_MODE0) /* cam_d7 */ + OMAP3_CORE1_IOPAD(0x2126, PIN_INPUT | MUX_MODE0) /* cam_d8 */ + OMAP3_CORE1_IOPAD(0x2128, PIN_INPUT | MUX_MODE0) /* cam_d9 */ + OMAP3_CORE1_IOPAD(0x212a, PIN_OUTPUT | MUX_MODE7) /* cam_d10 */ + OMAP3_CORE1_IOPAD(0x212e, PIN_OUTPUT | MUX_MODE7) /* cam_xclkb */ + OMAP3_CORE1_IOPAD(0x2132, PIN_OUTPUT | MUX_MODE0) /* cam_strobe */ + >; + }; }; &i2c1 { @@ -529,6 +623,28 @@ clock-frequency = <100000>; + cam2: camera@10 { + compatible = "nokia,smia"; + reg = <0x10>; + + vana-supply = <&vaux4>; + + clocks = <&isp 0>; + clock-frequency = <9600000>; + + port { + csi_cam2: endpoint { + link-frequencies = /bits/ 64 <60000000>; + bus-type = <3>; /* CCP2 */ + strobe = <0>; + clock-inv = <0>; + crc = <0>; + + remote-endpoint = <&csi_switch_out2>; + }; + }; + }; + tlv320aic3x: tlv320aic3x@18 { compatible = "ti,tlv320aic3x"; reg = <0x18>; @@ -738,6 +854,30 @@ st,max-limit-y = <32>; st,max-limit-z = <32>; }; + + cam1: camera@3e { + compatible = "toshiba,et8ek8"; + reg = <0x3e>; + + vana-supply = <&vaux4>; + + clocks = <&isp 0>; + clock-names = "extclk"; + clock-frequency = <9600000>; + + reset-gpio = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */ + + port { + csi_cam1: endpoint { + bus-type = <3>; /* CCP2 */ + strobe = <1>; + clock-inv = <0>; + crc = <1>; + + remote-endpoint = <&csi_switch_out1>; + }; + }; + }; }; &mmc1 {