From patchwork Thu Feb 21 07:21:54 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Louis Kuo X-Patchwork-Id: 10823229 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2663914E1 for ; Thu, 21 Feb 2019 07:24:04 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 09D682A57E for ; Thu, 21 Feb 2019 07:24:04 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EEA412F869; Thu, 21 Feb 2019 07:24:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 9C6CD2A57E for ; Thu, 21 Feb 2019 07:24:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=7OiokRHvO8k41uEF0G5GE6ufK83CeE/ODNxpnKVr4MI=; b=SDRdzwhy9ReftX nhsl2VPS7Rpintxee3zYucrJ5jsNBk4T4PScU6ZryrJziyINkpCo0lN6wjF4OLvuON+JyLTxCua5/ PnQtDI+bqsNQNYk6PtS6tBTRp/CfqHLWQ54j9rFzyaEqE03CswcKGIs5lF74Yfr+nBWi6WI9DMImj S3LZpXa09Efpsxu87pnzc4O0WjS7Qo8aqvbmKG9BiiPFQ29M8K1q+GQBTKl1gCNfH+RzN3WwccDhj EDpFeGR8Mbqm1145cCTzyVRj2dlJ/ILHElR8yYzU2K1fhi8DxrneGnRzfC7INqUnXXCbcwZed8zDp csrCQq1N2KjeP6cSeGqQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gwihz-0007w8-QR; Thu, 21 Feb 2019 07:23:51 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gwigZ-00060y-Ob; Thu, 21 Feb 2019 07:22:35 +0000 X-UUID: f1dc92c3cafa48559047b1f8d6d91655-20190220 X-UUID: f1dc92c3cafa48559047b1f8d6d91655-20190220 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 687499777; Wed, 20 Feb 2019 23:22:04 -0800 Received: from MTKMBS01N1.mediatek.inc (172.21.101.68) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 20 Feb 2019 23:22:02 -0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs01n1.mediatek.inc (172.21.101.68) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Thu, 21 Feb 2019 15:22:01 +0800 Received: from mtkslt306.mediatek.inc (10.21.14.136) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Thu, 21 Feb 2019 15:22:01 +0800 From: Louis Kuo To: , , , , Subject: [RFC PATCH V0 0/4] media: support Mediatek sensor interface driver Date: Thu, 21 Feb 2019 15:21:54 +0800 Message-ID: <1550733718-31702-1-git-send-email-louis.kuo@mediatek.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190220_232224_411525_6188788A X-CRM114-Status: UNSURE ( 7.62 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Sean.Cheng@mediatek.com, Rynn.Wu@mediatek.com, srv_heupstream@mediatek.com, holmes.chiou@mediatek.com, Jerry-ch.Chen@mediatek.com, jungo.lin@mediatek.com, sj.huang@mediatek.com, yuzhao@chromium.org, linux-mediatek@lists.infradead.org, zwisler@chromium.org, christie.yu@mediatek.com, frederic.chen@mediatek.com, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Hello, This is the first version of the RFC patch series adding Sensor Inferface(seninf) driver on Mediatek mt8183 SoC, which will be used in camera features on CrOS application. It belongs to the first Mediatek's camera driver series based on V4L2 and media controller framework. I posted the main part of the seninf driver as RFC to discuss first and would like some review comments on the overall structure of the driver. The driver is implemented with V4L2 framework. 1. Register as a V4L2 sub-device. 2. Only one entity with sink pads linked to camera sensors for choosing desired camera sensor by setup link and with source pads linked to cam-io for routing different types of decoded packet datas to PASS1 driver to generate sensor image frame and meta-data. The overall file structure of the seninf driver is as following: * mtk_seninf.c: Implement software and HW control flow of seninf driver. * seninf_drv_def.h: Define data structure and enumeration. * seninf_reg.h: Define HW register R/W macros and HW register names. Louis Kuo (4): media: platform: mtk-isp: Add Mediatek sensor interface driver media: platform: Add Mediatek sensor interface driver KConfig dt-bindings: mt8183: Added sensor interface dt-bindings dts: arm64: mt8183: Add sensor interface nodes .../devicetree/bindings/media/mediatek-seninf.txt | 52 + arch/arm64/boot/dts/mediatek/mt8183.dtsi | 34 + drivers/media/platform/Makefile | 2 + drivers/media/platform/mtk-isp/Kconfig | 16 + drivers/media/platform/mtk-isp/Makefile | 14 + drivers/media/platform/mtk-isp/isp_50/Makefile | 17 + .../media/platform/mtk-isp/isp_50/seninf/Makefile | 4 + .../platform/mtk-isp/isp_50/seninf/mtk_seninf.c | 1339 ++++++++++++++++++++ .../mtk-isp/isp_50/seninf/seninf_drv_def.h | 201 +++ .../platform/mtk-isp/isp_50/seninf/seninf_reg.h | 992 +++++++++++++++ 10 files changed, 2671 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/mediatek-seninf.txt create mode 100644 drivers/media/platform/mtk-isp/Kconfig create mode 100644 drivers/media/platform/mtk-isp/Makefile create mode 100644 drivers/media/platform/mtk-isp/isp_50/Makefile create mode 100644 drivers/media/platform/mtk-isp/isp_50/seninf/Makefile create mode 100644 drivers/media/platform/mtk-isp/isp_50/seninf/mtk_seninf.c create mode 100644 drivers/media/platform/mtk-isp/isp_50/seninf/seninf_drv_def.h create mode 100644 drivers/media/platform/mtk-isp/isp_50/seninf/seninf_reg.h