From patchwork Thu Sep 6 09:02:11 2018
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Philipp Zabel
X-Patchwork-Id: 10590105
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 81C796CB
for ;
Thu, 6 Sep 2018 09:03:35 +0000 (UTC)
Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1])
by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 61DA82A676
for ;
Thu, 6 Sep 2018 09:03:35 +0000 (UTC)
Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486)
id 565DE2A683; Thu, 6 Sep 2018 09:03:35 +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=-2.9 required=2.0 tests=BAYES_00,DKIM_SIGNED,
DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE 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 BCEFB2A676
for ;
Thu, 6 Sep 2018 09:03:34 +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:MIME-Version:Cc:List-Subscribe:
List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id: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=pN8Wff6bSvQVuJZ085EJOItDsx+SVHJ+A2HJpY+icmg=; b=Tfp
3oyEX7vEH+bjbAYakhmI76eTkiE7x+Tlo+vdJVrL24+eJxV3TiUcd0lx2I0mC3Qds4h9iCG6kaTYa
kxf3Acw2R2AQPYNEJhYXcnEVfAJU9AJhyG0fRrOO9sFrtoHxEvNgATkd5ZX0OHn7uFBH+grcnKoj3
u/vCaL+IUsK/Thhk78TgQ6vtOJlWDrP3GV4wy3jWVQ7c5QQdsmkJO1pXiJnw294i5L2vDumcD6tJD
khRQiqayZKPY0FyMLYczTE38AuzKtocA6cjJf2xkibE6TtbibkKUHT9a5rt9mzcSe69a67bKDDX0T
jcqfLWDH1tjdVu35c8d4bc9TIZmz7Vw==;
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 1fxqCC-0003cr-4P; Thu, 06 Sep 2018 09:03:24 +0000
Received: from metis.ext.pengutronix.de
([2001:67c:670:201:290:27ff:fe1d:cc33])
by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux))
id 1fxqBP-0003J9-Rz
for linux-arm-kernel@lists.infradead.org; Thu, 06 Sep 2018 09:02:38 +0000
Received: from lupine.hi.pengutronix.de
([2001:67c:670:100:3ad5:47ff:feaf:1a17] helo=lupine.pengutronix.de.)
by metis.ext.pengutronix.de with esmtp (Exim 4.89)
(envelope-from )
id 1fxqB9-0006aW-9W; Thu, 06 Sep 2018 11:02:19 +0200
From: Philipp Zabel
To: linux-media@vger.kernel.org
Subject: [PATCH v3 0/4] i.MX PXP scaler/CSC driver
Date: Thu, 6 Sep 2018 11:02:11 +0200
Message-Id: <20180906090215.15719-1-p.zabel@pengutronix.de>
X-Mailer: git-send-email 2.11.0
X-SA-Exim-Connect-IP: 2001:67c:670:100:3ad5:47ff:feaf:1a17
X-SA-Exim-Mail-From: p.zabel@pengutronix.de
X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de);
SAEximRunCond expanded to false
X-PTX-Original-Recipient: linux-arm-kernel@lists.infradead.org
X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3
X-CRM114-CacheID: sfid-20180906_020236_081069_20AD1E06
X-CRM114-Status: GOOD ( 13.84 )
X-BeenThere: linux-arm-kernel@lists.infradead.org
X-Mailman-Version: 2.1.21
Precedence: list
List-Id:
List-Unsubscribe:
,
List-Archive:
List-Post:
List-Help:
List-Subscribe:
,
Cc: Jacopo Mondi , Hans Verkuil ,
kernel@pengutronix.de, Mauro Carvalho Chehab ,
Shawn Guo , linux-arm-kernel@lists.infradead.org
MIME-Version: 1.0
Sender: "linux-arm-kernel"
Errors-To:
linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org
X-Virus-Scanned: ClamAV using ClamSMTP
The Pixel Pipeline (PXP) is a memory-to-memory graphics processing
engine that supports scaling, colorspace conversion, alpha blending,
rotation, and pixel conversion via lookup table. Different versions are
present on various i.MX SoCs from i.MX23 to i.MX7. The latest versions
on i.MX6ULL and i.MX7D have grown an additional pipeline for dithering
and e-ink update processing that is ignored by this driver.
This series adds a V4L2 mem-to-mem scaler/CSC driver for the PXP version
found on i.MX6ULL SoCs which is a size reduced variant of the i.MX7 PXP.
The driver uses only the legacy pipeline, so it should be reasonably
easy to extend it to work with the older PXP versions found on i.MX6UL,
i.MX6SX, i.MX6SL, i.MX28, and i.MX23. The driver supports scaling and
colorspace conversion. There is currently no support for rotation,
alpha-blending, and the LUTs.
Changes since v2:
- fix Kconfig whitespace
- remove unused defines
- fix video_unregister_device/v4l2_m2m_release order in pxp_remove
- use GPL-2.0+ instead of GPL-2.0-or-later SPDX license identifer
- remove pxp_default_ycbcr_enc/quantization, always map to default
encoding/quantization
- rename pxp_fixup_colorimetry to pxp_fixup_colorimetry_cap
regards
Philipp
Philipp Zabel (4):
dt-bindings: media: Add i.MX Pixel Pipeline binding
ARM: dts: imx6ull: add pxp support
media: imx-pxp: add i.MX Pixel Pipeline driver
MAINTAINERS: add entry for i.MX PXP media mem2mem driver
.../devicetree/bindings/media/fsl-pxp.txt | 26 +
MAINTAINERS | 7 +
arch/arm/boot/dts/imx6ul.dtsi | 8 +
arch/arm/boot/dts/imx6ull.dtsi | 6 +
drivers/media/platform/Kconfig | 9 +
drivers/media/platform/Makefile | 2 +
drivers/media/platform/imx-pxp.c | 1752 +++++++++++++++++
drivers/media/platform/imx-pxp.h | 1685 ++++++++++++++++
8 files changed, 3495 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/fsl-pxp.txt
create mode 100644 drivers/media/platform/imx-pxp.c
create mode 100644 drivers/media/platform/imx-pxp.h