Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp3397992ybl; Sun, 15 Dec 2019 09:01:08 -0800 (PST) X-Google-Smtp-Source: APXvYqxaWe2nMLAclki4gmUQ/jHfkycVZPYBWQ3CJBU4NTIkI7gBS3q6rwQhHR4kWMDy/9PT7Tyr X-Received: by 2002:a05:6830:1555:: with SMTP id l21mr25543228otp.41.1576429268342; Sun, 15 Dec 2019 09:01:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576429268; cv=none; d=google.com; s=arc-20160816; b=IWegxkFlpscgi1i9rcDAhWjt00yvktQ4nD51/MT/DkeO2k1PgzKNW51cj5z9y91jGv HU/R4RyevO5+L6z6jS8hs7qqEVwks+iDzPf6m9dOHbcHZCIslMmAYol2yGXKOTkly9wx qoVw7EYr+231jhyMcIqltI4mnEXRECGiVqTc8ax8qY7DXbK//OtEaygS9A5HdK23T3gR pl5yKe0RYSI/qG30/p31tMTIMDx3Fo3gjCcM6n1hZQoeA3ztzrjCl8MaQNTGZpvAZTIY AfSb/LCzE+eCHNt7t0PdYbOBEzgw6z27PSkNj8MqTMve0pwIPkfx5b+CRsTO0KVfr9BV uGBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=msnENYPFqpH1iBUUyvGYXfL1Dl8Vb7Axfrkm1L9F4Cg=; b=Klf4GpCXr7Ze7AZpEUzXXBsWv7ovIn/i8uA0ANg7NPoaIXpcsYw8KsbvPVSwtRmhH1 qfBb2n0MpWTLzk8P8Rl3qPkfOzmZY40Eor0/BQHAPbfWGoaNcAzCflIFjd5RMreKB1ZD Mm22EY+5cThR/yiRsorwAEu7pkp1K1Vy0uEOyQXPajYo9y9z/mFbo9Xzg5mvD2+xQQRH I5+3THQyUZFftu0WT8GhtTrKXt+ypYYm4ABhHSa5sjOSPTG8JT/VLhqOX6cHNcct2LcT /A+JY3iW4+tfEstZh/bfV29gIO89d6RRaZG5xZkJrqdQDemUgoybkABoyl39EZ250FVz Chlw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=iRsFDfp5; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t195si9141971oih.209.2019.12.15.09.00.56; Sun, 15 Dec 2019 09:01:08 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=iRsFDfp5; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726704AbfLOQ7c (ORCPT + 99 others); Sun, 15 Dec 2019 11:59:32 -0500 Received: from mail.kernel.org ([198.145.29.99]:55134 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726536AbfLOQ7c (ORCPT ); Sun, 15 Dec 2019 11:59:32 -0500 Received: from wens.tw (mirror2.csie.ntu.edu.tw [140.112.30.76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 8C57424679; Sun, 15 Dec 2019 16:59:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1576429171; bh=h33d693tSXLso9w3yXgPuTbnms8ia3M5JIWMSCbNBnE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=iRsFDfp5dTCdd8hdfb7DRsrAhuVj+MbDM6yDZ4TkQLjmR183GI2NhsimxlOkuld0l lH0YUZBtbTWtQ5bFj6cEr5Is0L7icYgGC3qZiFbLKecUsQht57C6WsG6Dm1djuqBA1 ry+oYgAq/HPx0ms2JPnZEBar9La4Kb4P63emA+ig= Received: by wens.tw (Postfix, from userid 1000) id 84BFD5FF75; Mon, 16 Dec 2019 00:59:26 +0800 (CST) From: Chen-Yu Tsai To: Maxime Ripard , Mauro Carvalho Chehab , Sakari Ailus , Rob Herring , Mark Rutland Cc: Chen-Yu Tsai , linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Chen-Yu Tsai Subject: [PATCH 12/14] [DO NOT MERGE] ARM: dts: sun4i: cubieboard: Enable OV7670 camera on CSI1 Date: Mon, 16 Dec 2019 00:59:22 +0800 Message-Id: <20191215165924.28314-13-wens@kernel.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191215165924.28314-1-wens@kernel.org> References: <20191215165924.28314-1-wens@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Chen-Yu Tsai The Cubieboard has CSI1 pins exposed on one of its GPIO headers. Combined with I2C1 on the same header, a connected OV7670 based camera module can be used. Power is provided via the 5V rail on the same header. The module has onboard LDOs for the sensor's various power rails. Add a device node for the sensor, enable CSI1 and I2C1, and hook everything up. Signed-off-by: Chen-Yu Tsai --- arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts index 6ca02e824acc..29bfec8fad5b 100644 --- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts +++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts @@ -101,6 +101,25 @@ &cpu0 { cpu-supply = <®_dcdc2>; }; +&csi1 { + pinctrl-names = "default"; + pinctrl-0 = <&csi1_8bits_pg_pins>; + status = "okay"; + + port { + /* Parallel bus endpoint */ + csi_from_ov7670: endpoint { + remote-endpoint = <&ov7670_to_csi>; + bus-width = <8>; + /* driver is broken */ + hsync-active = <0>; /* Active high */ + vsync-active = <1>; /* Active high */ + data-active = <1>; /* Active high */ + pclk-sample = <1>; /* Rising */ + }; + }; +}; + &de { status = "okay"; }; @@ -143,6 +162,29 @@ axp209: pmic@34 { &i2c1 { status = "okay"; + + ov7670: camera@21 { + compatible = "ovti,ov7670"; + reg = <0x21>; + pinctrl-names = "default"; + pinctrl-0 = <&csi1_clk_pg_pin>; + clocks = <&ccu CLK_CSI1>; + clock-names = "xclk"; + + reset-gpios = <&pio 7 14 GPIO_ACTIVE_LOW>; /* PH14 */ + powerdown-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>; /* PH15 */ + + port { + ov7670_to_csi: endpoint { + remote-endpoint = <&csi_from_ov7670>; + bus-width = <8>; + hsync-active = <1>; /* Active high */ + vsync-active = <1>; /* Active high */ + data-active = <1>; /* Active high */ + pclk-sample = <1>; /* Rising */ + }; + }; + }; }; &ir0 { -- 2.24.0