From patchwork Thu May 3 02:42:50 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Satish Kumar Nagireddy X-Patchwork-Id: 49168 X-Patchwork-Delegate: laurent.pinchart@ideasonboard.com Received: from vger.kernel.org ([209.132.180.67]) by www.linuxtv.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fE4DE-0000EL-Nh; Thu, 03 May 2018 02:43:17 +0000 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751998AbeECCnO (ORCPT + 1 other); Wed, 2 May 2018 22:43:14 -0400 Received: from mail-by2nam03on0044.outbound.protection.outlook.com ([104.47.42.44]:40056 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751974AbeECCnL (ORCPT ); Wed, 2 May 2018 22:43:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector1-xilinx-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=3xpadXlQ5cJYvltigyVe/DLDjp/M0D4+0yS8fQRN92E=; b=cbAMfXSCO7hm7MQFvDADUwtJd7X84EMO9lGN22B+dlamKYlL3YO8/QbKLNdMaGjBvhAB/fnqMfT2bT09E4q/6YKvm0zpbhfXlwyHyUD7bFDcBpz5fvqk/mlif/88oHb/eH9VjS6P/Ca7s6kK1HWdidMZME8ETatVBaitCDQBL7g= Received: from CY4PR02CA0033.namprd02.prod.outlook.com (2603:10b6:903:117::19) by SN1PR02MB1679.namprd02.prod.outlook.com (2a01:111:e400:5230::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Thu, 3 May 2018 02:43:10 +0000 Received: from SN1NAM02FT035.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e44::203) by CY4PR02CA0033.outlook.office365.com (2603:10b6:903:117::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend Transport; Thu, 3 May 2018 02:43:09 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.100) smtp.mailfrom=xilinx.com; ideasonboard.com; dkim=none (message not signed) header.d=none;ideasonboard.com; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.100 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.100; helo=xsj-pvapsmtpgw02; Received: from xsj-pvapsmtpgw02 (149.199.60.100) by SN1NAM02FT035.mail.protection.outlook.com (10.152.72.145) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.715.13 via Frontend Transport; Thu, 3 May 2018 02:43:09 +0000 Received: from unknown-38-66.xilinx.com ([149.199.38.66]:39320 helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw02 with esmtp (Exim 4.63) (envelope-from ) id 1fE4D6-0006Ra-Qr; Wed, 02 May 2018 19:43:08 -0700 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1fE4D1-00058K-NM; Wed, 02 May 2018 19:43:03 -0700 Received: from xsj-pvapsmtp01 (xsj-smtp.xilinx.com [149.199.38.66]) by xsj-smtp-dlp2.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id w432gtDe009733; Wed, 2 May 2018 19:42:55 -0700 Received: from [172.19.2.23] (helo=xsjsatishna50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1fE4Ct-00057Q-1f; Wed, 02 May 2018 19:42:55 -0700 From: Satish Kumar Nagireddy To: , , , CC: Satish Kumar Nagireddy Subject: [PATCH v5 5/8] v4l: xilinx: dma: Update video format descriptor Date: Wed, 2 May 2018 19:42:50 -0700 Message-ID: <81391061e8a383fe33a1f8f519b9ae33748de00b.1525312401.git.satish.nagireddy.nagireddy@xilinx.com> X-Mailer: git-send-email 2.1.1 In-Reply-To: References: X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23620.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.100; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(39380400002)(346002)(396003)(39850400004)(376002)(2980300002)(438002)(199004)(189003)(126002)(6636002)(50226002)(50466002)(2906002)(36756003)(81166006)(107886003)(36386004)(48376002)(118296001)(4326008)(8936002)(81156014)(8676002)(356003)(6666003)(7696005)(336012)(426003)(16586007)(316002)(476003)(2616005)(26005)(486006)(2201001)(72206003)(76176011)(15650500001)(63266004)(11346002)(106002)(77096007)(478600001)(186003)(9786002)(110136005)(106466001)(51416003)(305945005)(446003)(47776003)(5660300001)(107986001)(5001870100001)(2101003); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR02MB1679; H:xsj-pvapsmtpgw02; FPR:; SPF:Pass; LANG:en; PTR:xapps1.xilinx.com,unknown-60-100.xilinx.com; A:1; MX:1; X-Microsoft-Exchange-Diagnostics: 1; SN1NAM02FT035; 1:hIuvaaGpkY+N+znxpPpFOiFmzwiRFSUlROehEmswU9FNIFXjIuCktbJ3tp0+DgOhdT4fZHlBfVk810pKitg5Z+WK1HjbiykRmWu/9tub/G759L5u01pBs7rG6dYym5L3 MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060); SRVR:SN1PR02MB1679; X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1679; 3:BNcXSWFDxpZXZMxvsW0h+4gcmbc05y2WIcoV78aY+X5NOdzXMknThP6ogkctpb9pO/TvpD6KIb41IE3i/hCjV1Dc5oALWtBeCPpHcr9+8Yhea7e7ty1w4YHfZ2pTY9fR3nhyrRwEawZYdL6fw/OS1B98JuKO2fUqEmB0MvetsBouOSOEqa30UlVoxDE7pyqdcFLfO3XmSiOT2dRfDylDzbvJzajoWkJF+pXrMnsbK3T/ZFr/MaRzT0yYXwY4p747xpnwbd1h6ZZNrWifn1543TL9khpQJ+Pfcvvw1fyFmWFUGp0lWP3vdLu/DGVp/1iOWAbft/m6x7yoaSbAoRj/dXpvQrDVjldUzf0KaFaXaLc=; 25:KdihgURBsgrHDLsZ0++MuyoFZZh7EdNvWWGA6b/cDQ88NoFGeTF02lLD8szwtZ0u3RirUM7aVOi6lUhMcJDdn1WfbohjONIBXcsdKPpL6OSYvyGrBPcyOTLW2ELqRZiaOIwp7wjVSfJm3GdrNpwvuDKLnRXgnZ18dt/ZAdO1gwXH6eP8q+sp9FKnc1ahxa/DTfBt/pfa/sNvj9CjJQErEiGU2Ax2hHk9aD8hwpeoemO6cJP1s3GJa3xje5d73y8uy85pSulLxzZoFaQa2rXLIoYWk4XpgG0LjB4wHCPR+tRcQ65B/BAKl3Rc9HSAfzDDSb8srXos9gJ73YTjGv+85A== X-MS-TrafficTypeDiagnostic: SN1PR02MB1679: X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1679; 31:/ReQ1mfZYhcdhrDXgB2pfq6XXyZychTsThG+cdfdqkzbGkvZypQn0LAxYpAWEazwAU3qmzvdDZ7kPstUWBi0SlSdPrOZAXRvqWJzsq8aXWvWbEB4zhcgWThoffJKieiGXiZMvSE73/dEHQ5grH2RQELn+rmj3kudDrEMUN16JSvTFFw1mJWfdOWOwJFJDK1n2jfvHLwEDvtEAWEzvrxoRqrQimK4jHGndSofyjmnVps=; 20:Xuo7y9PyX9YhGmGyzxGUqajIFLW1TGjAZSovoeLj8JNMwpphRl59jlqk0OtayZjk7QhBl1RcZT3Ll/oJ0PG8DUA0gk3NU3BuvKbUz2mnah4Ve/NG0v/Cgs6WugfqXqFkI0Ha2UBgpchVbfVDayAAXv/h/bWhHyYWOtBKin7PG/+35TdhbykNUqcDdkb0OSY5sT+dFbgpQ1lCzAGDxw5LSf4CcVptYq3Iq5Mkb9xigi2X677yAd6/CZ5t7e1e3WJ4aCUoZIdJCzbghztUHM0jLNjt77v5wytbqiWEd2gQ9IThVDp3qVlR6osdKD5YxgzCUv7j8lz1EjUTTBfMAD2a+icO5RtjEDu6QDxsUFKhQ0YBfGwEV91qTEA3NDXmHoh/sOr4UiyON8NY8f6Q6H12rRyQ1Z4j3wRSvpm4g4KF4Z4/9IL8xOnWyLevdCX5wKEdWNI5veLEp5DxZOADACTlKDvbmeP3AoLOZObyQxDGtZPqD+RQZv0ZlfFWGuMNdRq+ X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192813158149592); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93004095)(3231254)(944501410)(52105095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:SN1PR02MB1679; BCL:0; PCL:0; RULEID:; SRVR:SN1PR02MB1679; X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1679; 4:jkpvj1bw7IWvA9jJGsS3c+euLeoEQI71QzlultQtiV8Hrw2Hi4SvRHnsf5O2gUWHGVJWQbRNGh8Qp2hwmWQW80ngyGZdmlHIHvJhcxe6Fc2+bADH1MbxvEDCMlSjWcsrwNl+iY/w43MAzB5mtZn6saZmLEOJJ09Cws9//gLivQmaZPXnlNSnVVSoexepCgEzWFq8EqckEAHSS8k0bcI9PSUyyd/0qYNcoDpASKE3lp5kp3YBUKJc/F6aPhzXhO+gZK8oVgMM/qrk1u3JEg434Xh+Di0spDksfQrxKGTqBm9gxfTX2lte8DAUHSJIz5hb X-Forefront-PRVS: 066153096A X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN1PR02MB1679; 23:HNo3DxC8ZeQYfQnOlr2caGj7WuTt9oC9S4RNqn8dr?= =?us-ascii?Q?74lQQm9jPsSs3igZNlOmC9IliKMMaAeWe0Urfsp0XJyVv1CJWiND8uuXPEJ9?= =?us-ascii?Q?5yrsYL7F/YeRxDbWsT//3hAQicw+qyv121CYyB/AGt/w69cqIuDCQ+n7UnCK?= =?us-ascii?Q?+9vJa8aIFbTMNoo4NKKJXQzLTiPFfmv3HCQoYdiLmj4FxM9aPNIBhFfg+QN8?= =?us-ascii?Q?iCUmj5pqECn/njBf35YRy0L3iGtOk4gPe6kaMJvxRk1dgv5ByPLqb3GAIG5d?= =?us-ascii?Q?oTsJGhHilPVtCRCPlSW671YVsBHxPS+B8/CJZQL3VWkwWKae1GqckxaL69/C?= =?us-ascii?Q?TfZ7R0v8QjmSATcitXFM45xP4sYMtsQlLN9qauCQp8qR1GLFJwIwV4m2nDaG?= =?us-ascii?Q?sUPxr/4bN1gluo+pj8OBEYtIGNLYmVVuO8TOqjHwR3VZdfdsgoOE/62zc4yA?= =?us-ascii?Q?MGOMYsnCVq+Zd/Zrac0ucP+CJTNnxYPSonDRfICeCB3/mxDNX9hb+Mmf6gov?= =?us-ascii?Q?X6dJ/5p9/SF90l2sFINbrsFuan1PPEj1i+W7XBxuA+2EzhOql9rLIFYlMAup?= =?us-ascii?Q?ilcn5q8hRzIvP/qKgZIlg1G/A5u/pbydqFR46trszkuFxJ26dyMU9tIxYQ/B?= =?us-ascii?Q?rz4h/XCuPcqTaIp3avj4gM+E8JHxu2Xnh11D4EYmjZ0BizCAgtsd9VKz/MJj?= =?us-ascii?Q?uXTMyJbpQ1gZHfhvbwazBN/d6Ky1PSGu4RJXZQE8NqZh+o8w1rMIkciG8xdn?= =?us-ascii?Q?Db0T7T9DLqRGdo2yfSMvX/xP9y1cRCMP2uklVo9hIiuUuwh7dscxIlNsXNt4?= =?us-ascii?Q?jFli3ttauJy3vcJQ2e1epH1MoIEz+WiWyhoqQTEPY943hE67GrO8xwe2egy5?= =?us-ascii?Q?GO2iZit399nnjXqmNaa71CQeqUKFiCiLC5vBjU6O+I08SPnTk57/IsRmz3IL?= =?us-ascii?Q?HzLjmspcn+szjRKuWC8HMxNGbRNmeXtsjHsXX6URYMFb6G4hrbR21skjeLfL?= =?us-ascii?Q?C4CZJlupB697KWmGNRMGq9H3/EXeKxEdC0NovXDdLpmJva/E+gRM3Ll4zCsV?= =?us-ascii?Q?mD34T1hHvuRhnmj1ada2MuidpHTxE9aEcBo5T607xYc2y/kFKMDGDvPcQY5A?= =?us-ascii?Q?sVEW0dLhaPLptUY3Oo1J3Lr0esLwDRgMfuhUEfM8u3Q0yjpRnvBgHNyQ4byZ?= =?us-ascii?Q?D3xS32d+P/v0FjKCXF2ht/h52vURtBr+ENp7AMu2FmnilV9HU+Vzx/Y6WQ7h?= =?us-ascii?Q?pzFB24GInalaM5O1kw=3D?= X-Microsoft-Antispam-Message-Info: 71WOENBM0j/dvUi35RNaxYDAG522Gc4VDKCRqBWVmr8pbju3lIiK31zWHT5XPJAiDKQQEnN9yaVmKI2jcJwqWyN7cnuooZdg6HuW3FDhBsYgHqM5KRLQ09PDsfz9jWzxnw/RQMuJQR91fGqMWQigpf+L9TXUP1P6KeilhjjRrVUD+8EZ5OglD1jqDDCbC5Db X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1679; 6:VL7WGfIfQo7rQEX/FsQz/HitI7JCBRqSHjoe87a+XUGGXUS4rKji/byzdJBg6VlygUXQsOqs0PGRFdov5SH9k0cCbLUQVl3FcjB/sIAfX0VEyY3IMsPKW/+6T83+nATukiIUUWIhqqkEo51mg5lk5FvE5VhRTsOJ6Mf135gXoBXTiH/mrIJuZtkEff56yLofg/qA2hwxgDyL0YBrgkOviI9oTWLG5L6l3GcogmvJeTAOdcPg1IEQcN37/zS2Lmrlywlkz91AwIBzxF9kogrn/K7/nyHF6Ywyh7sUUvVDNyfX/KcaErK03m8mnnGmDkLcYFfPNpENjWlOL+2iZyJnD5LEAFbLiR0kxeWHGahQej6s+GGT6QLbxs1LofNdArSC+V0kd60+F/7zLQILPKrL8Rh+sxb4SliytydrsLuCOReRz661b5+KOD3l/BXIFbNFBJsOZS8cH+5q587cH30lsQ==; 5:7/YzJ3/DloVZsj5PCJdcaA2KjRPCIiVhZ9coQ8qRJGOYm/jF90MJjKSRzy77aDlg3AEHOaQh9wmUxNvVL2mY64rfsAi9sLmyBB499oMyqDgAaik+JHGmVw9CFmgMz0GCndIIZi/BCWfvYYIdO5Fk/4dyepcWZbASdeV5U6MIL6I=; 24:m+atZT1JrvceesOilmpW+m5dqjj12/WoUemrWc6L2QRpJHLURDja8JY79uiAPCWBzCz6Ev7kZrx65J/JKN4epMWzEu1kk92XeuC9Ss51ikg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1679; 7:KpySIou9uyppNB68a7JsaneXdLg2eayf7iwbbMbP1Re+/bieXHWsLsmXOgh7HXWBq4N7NhP9f59FDc8jL/4ceTEPi3cSxzmnJnUdoFKkIGyB85fykgakgXkeK5Q618zmybz1zAFxhUfhwrZCRz8AJnmxsJFEn2jDFuyaSvn+wySQxFVEWHhSCtWnt2n2A2UHj5yaeOK70tsUhwDRB8/Ea9V2uZACVvjpC2C1zRDPN5Nc8jZOoMHnPxaO59MTkv1x X-MS-Office365-Filtering-Correlation-Id: c2d0785e-0013-4486-6b15-08d5b09f9b5d X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 May 2018 02:43:09.3641 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c2d0785e-0013-4486-6b15-08d5b09f9b5d X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.100]; Helo=[xsj-pvapsmtpgw02] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR02MB1679 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org This patch updates video format descriptor to help information viz., number of planes per color format and chroma sub sampling factors. Signed-off-by: Satish Kumar Nagireddy --- Changes in v5: - Added YUV420 10 bit format to video descriptor table Changes in v4: - Introduced bpp (bits per pixel) per plane drivers/media/platform/xilinx/xilinx-dma.c | 12 ++++++------ drivers/media/platform/xilinx/xilinx-vip.c | 18 ++++++++++-------- drivers/media/platform/xilinx/xilinx-vip.h | 10 ++++++++-- 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/drivers/media/platform/xilinx/xilinx-dma.c b/drivers/media/platform/xilinx/xilinx-dma.c index 727dc6e..518d572 100644 --- a/drivers/media/platform/xilinx/xilinx-dma.c +++ b/drivers/media/platform/xilinx/xilinx-dma.c @@ -366,7 +366,7 @@ static void xvip_dma_buffer_queue(struct vb2_buffer *vb) } dma->xt.frame_size = 1; - dma->sgl[0].size = dma->format.width * dma->fmtinfo->bpp; + dma->sgl[0].size = dma->format.width * dma->fmtinfo->bpp[0]; dma->sgl[0].icg = dma->format.bytesperline - dma->sgl[0].size; dma->xt.numf = dma->format.height; @@ -569,12 +569,12 @@ __xvip_dma_try_format(struct xvip_dma *dma, struct v4l2_pix_format *pix, * the minimum and maximum values, clamp the requested width and convert * it back to pixels. */ - align = lcm(dma->align, info->bpp); + align = lcm(dma->align, info->bpp[0]); min_width = roundup(XVIP_DMA_MIN_WIDTH, align); max_width = rounddown(XVIP_DMA_MAX_WIDTH, align); - width = rounddown(pix->width * info->bpp, align); + width = rounddown(pix->width * info->bpp[0], align); - pix->width = clamp(width, min_width, max_width) / info->bpp; + pix->width = clamp(width, min_width, max_width) / info->bpp[0]; pix->height = clamp(pix->height, XVIP_DMA_MIN_HEIGHT, XVIP_DMA_MAX_HEIGHT); @@ -582,7 +582,7 @@ __xvip_dma_try_format(struct xvip_dma *dma, struct v4l2_pix_format *pix, * line value is zero, the module doesn't support user configurable line * sizes. Override the requested value with the minimum in that case. */ - min_bpl = pix->width * info->bpp; + min_bpl = pix->width * info->bpp[0]; max_bpl = rounddown(XVIP_DMA_MAX_WIDTH, dma->align); bpl = rounddown(pix->bytesperline, dma->align); @@ -676,7 +676,7 @@ int xvip_dma_init(struct xvip_composite_device *xdev, struct xvip_dma *dma, dma->format.field = V4L2_FIELD_NONE; dma->format.width = XVIP_DMA_DEF_WIDTH; dma->format.height = XVIP_DMA_DEF_HEIGHT; - dma->format.bytesperline = dma->format.width * dma->fmtinfo->bpp; + dma->format.bytesperline = dma->format.width * dma->fmtinfo->bpp[0]; dma->format.sizeimage = dma->format.bytesperline * dma->format.height; /* Initialize the media entity... */ diff --git a/drivers/media/platform/xilinx/xilinx-vip.c b/drivers/media/platform/xilinx/xilinx-vip.c index 3112591..fb1a08f 100644 --- a/drivers/media/platform/xilinx/xilinx-vip.c +++ b/drivers/media/platform/xilinx/xilinx-vip.c @@ -27,22 +27,24 @@ */ static const struct xvip_video_format xvip_video_formats[] = { + { XVIP_VF_YUV_420, 8, NULL, MEDIA_BUS_FMT_VYYUYY8_1X24, + {1, 2, 0}, V4L2_PIX_FMT_NV12, 2, 2, 2, "4:2:0, semi-planar, YUV" }, { XVIP_VF_YUV_422, 8, NULL, MEDIA_BUS_FMT_UYVY8_1X16, - 2, V4L2_PIX_FMT_YUYV, "4:2:2, packed, YUYV" }, + {2, 0, 0}, V4L2_PIX_FMT_YUYV, 1, 2, 1, "4:2:2, packed, YUYV" }, { XVIP_VF_YUV_444, 8, NULL, MEDIA_BUS_FMT_VUY8_1X24, - 3, V4L2_PIX_FMT_YUV444, "4:4:4, packed, YUYV" }, + {3, 0, 0}, V4L2_PIX_FMT_YUV444, 1, 1, 1, "4:4:4, packed, YUYV" }, { XVIP_VF_RBG, 8, NULL, MEDIA_BUS_FMT_RBG888_1X24, - 3, 0, NULL }, + {3, 0, 0}, V4L2_PIX_FMT_RGB24, 1, 1, 1, "24-bit RGB" }, { XVIP_VF_MONO_SENSOR, 8, "mono", MEDIA_BUS_FMT_Y8_1X8, - 1, V4L2_PIX_FMT_GREY, "Greyscale 8-bit" }, + {1, 0, 0}, V4L2_PIX_FMT_GREY, 1, 1, 1, "Greyscale 8-bit" }, { XVIP_VF_MONO_SENSOR, 8, "rggb", MEDIA_BUS_FMT_SRGGB8_1X8, - 1, V4L2_PIX_FMT_SGRBG8, "Bayer 8-bit RGGB" }, + {1, 0, 0}, V4L2_PIX_FMT_SGRBG8, 1, 1, 1, "Bayer 8-bit RGGB" }, { XVIP_VF_MONO_SENSOR, 8, "grbg", MEDIA_BUS_FMT_SGRBG8_1X8, - 1, V4L2_PIX_FMT_SGRBG8, "Bayer 8-bit GRBG" }, + {1, 0, 0}, V4L2_PIX_FMT_SGRBG8, 1, 1, 1, "Bayer 8-bit GRBG" }, { XVIP_VF_MONO_SENSOR, 8, "gbrg", MEDIA_BUS_FMT_SGBRG8_1X8, - 1, V4L2_PIX_FMT_SGBRG8, "Bayer 8-bit GBRG" }, + {1, 0, 0}, V4L2_PIX_FMT_SGBRG8, 1, 1, 1, "Bayer 8-bit GBRG" }, { XVIP_VF_MONO_SENSOR, 8, "bggr", MEDIA_BUS_FMT_SBGGR8_1X8, - 1, V4L2_PIX_FMT_SBGGR8, "Bayer 8-bit BGGR" }, + {1, 0, 0}, V4L2_PIX_FMT_SBGGR8, 1, 1, 1, "Bayer 8-bit BGGR" }, }; /** diff --git a/drivers/media/platform/xilinx/xilinx-vip.h b/drivers/media/platform/xilinx/xilinx-vip.h index 42fee20..256efa2 100644 --- a/drivers/media/platform/xilinx/xilinx-vip.h +++ b/drivers/media/platform/xilinx/xilinx-vip.h @@ -109,8 +109,11 @@ struct xvip_device { * @width: AXI4 format width in bits per component * @pattern: CFA pattern for Mono/Sensor formats * @code: media bus format code - * @bpp: bytes per pixel (when stored in memory) + * @bpp: bytes per pixel is per plane * @fourcc: V4L2 pixel format FCC identifier + * @num_planes: number of planes w.r.t. color format + * @hsub: Horizontal sampling factor of Chroma + * @vsub: Vertical sampling factor of Chroma * @description: format description, suitable for userspace */ struct xvip_video_format { @@ -118,8 +121,11 @@ struct xvip_video_format { unsigned int width; const char *pattern; unsigned int code; - unsigned int bpp; + unsigned int bpp[3]; u32 fourcc; + u8 num_planes; + u8 hsub; + u8 vsub; const char *description; };