Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp469745pxb; Thu, 14 Jan 2021 10:11:00 -0800 (PST) X-Google-Smtp-Source: ABdhPJwjjx2NMTML8xtHH823702BK1Mtf+ab5FsRZ+FTRwwsP885BjJ54xnLB9P4sRhGWQ4QqZZL X-Received: by 2002:a05:6402:1b1e:: with SMTP id by30mr6634590edb.75.1610647860250; Thu, 14 Jan 2021 10:11:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610647860; cv=none; d=google.com; s=arc-20160816; b=pE/OVkxlb3k/B4Nr8Du17OFfOaOMAZyuQ6NCBs3qddW3SMdXoANWfZUiXf7tRYeA2h kuZsCNMyFN1TBxsHzYLItqyi60oTRpboYLuVxWDrrU+DHPslPT+rT/PyhncPyo8pLvfO dn723EnHgzkpfbjZS5PP4PlY1MjBkVOBE/K/TTqFkUPTXt8+gZ66h8UDNMOdr+oib48M WlIOwvfVuuN97n4Cqdjd1J0ORWSXq4nBqq9i2R5A9bikW2necdIP9I/RDZpPkCPyt8kk z4/P/rECJg+gBUPQe19ga9qN9Cf1PQ3nGNI0t/XKaF8rf6LzBkt6Q/yqY2s5E/YikqmH 10kQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=fD7cv78CRc3OBfDgxYJp6aMZSGljyTnP0M7Pc2dtkyc=; b=AEcPlluYOl0OrQ11RG9atKANev6NvSiJMKzLT2K5rUzhWrwfU1q+XSqF5DBRlaXL7E jD38Ls0p6MhUA/9jU3ASX++MBRmDuiMEYe8mCM/FmVKSxHYHwX6kp9ad91KoOuZ4qEo8 edXbbZ6vGhErZo2X6q0IFAGWpa/IXwJu1bCwYSRXbfOczTGUzJmWoWGsyNMHeQ7GQT+k GIwzmhJ9ra8S4IBBB8ScV1Duh7m8aL5WHAOZqBR/lA59HV3j9MFjhfMDfoADvzxO+ROZ Er6dKO8JFxrXUxdxBEehoXcj7SdBHxj5yjOqfOc12pr5wiTPa5KbGJewV+4fAAzHbirR ztRw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lz19si2385922ejb.218.2021.01.14.10.10.36; Thu, 14 Jan 2021 10:11:00 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729648AbhANSJJ (ORCPT + 99 others); Thu, 14 Jan 2021 13:09:09 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56042 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727861AbhANSJI (ORCPT ); Thu, 14 Jan 2021 13:09:08 -0500 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D3895C0613D3; Thu, 14 Jan 2021 10:08:23 -0800 (PST) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: koike) with ESMTPSA id ED3531F45D0B From: Helen Koike To: linux-media@vger.kernel.org Cc: hverkuil@xs4all.nl, mchehab@kernel.org, hans.verkuil@cisco.com, laurent.pinchart@ideasonboard.com, sakari.ailus@iki.fi, boris.brezillon@collabora.com, hiroh@chromium.org, nicolas@ndufresne.ca, Brian.Starkey@arm.com, kernel@collabora.com, narmstrong@baylibre.com, linux-kernel@vger.kernel.org, frkoenig@chromium.org, stanimir.varbanov@linaro.org, tfiga@chromium.org Subject: [RFC PATCH v6 08/11] media: mediabus: Add helpers to convert a ext_pix format to/from a mbus_fmt Date: Thu, 14 Jan 2021 15:07:35 -0300 Message-Id: <20210114180738.1758707-9-helen.koike@collabora.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210114180738.1758707-1-helen.koike@collabora.com> References: <20210114180738.1758707-1-helen.koike@collabora.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Just a new version of v4l2_fill_mbus_format() and v4l2_fill_ext_pix_format() to deal with the new v4l2_ext_pix_format struct. This is needed to convert the VIMC driver to the EXT_FMT/EXT_BUF iocts. Signed-off-by: Boris Brezillon Signed-off-by: Helen Koike --- Changes in v6: - Rename v4l2_fill_ext_pix_format() to v4l2_fill_ext_pix_format_from_mbus() (Tomasz) Changes in v4: - Add helper v4l2_fill_ext_pix_format() - Rebased on top of media/master (post 5.8-rc1) Changes in v3: - Rebased on top of media/master (post 5.4-rc1) Changes in v2: - New patch --- include/media/v4l2-mediabus.h | 42 +++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/include/media/v4l2-mediabus.h b/include/media/v4l2-mediabus.h index 841e190aedd9..055e2abbc1dd 100644 --- a/include/media/v4l2-mediabus.h +++ b/include/media/v4l2-mediabus.h @@ -209,4 +209,46 @@ v4l2_fill_mbus_format_mplane(struct v4l2_mbus_framefmt *mbus_fmt, mbus_fmt->xfer_func = pix_mp_fmt->xfer_func; } +/** + * v4l2_fill_ext_pix_format_from_mbus - Ancillary routine that fills a &struct + * v4l2_ext_pix_format fields from a &struct v4l2_mbus_framefmt. + * + * @pix_fmt: pointer to &struct v4l2_ext_pix_format to be filled + * @mbus_fmt: pointer to &struct v4l2_mbus_framefmt to be used as model + */ +static inline void +v4l2_fill_ext_pix_format_from_mbus(struct v4l2_ext_pix_format *pix_fmt, + const struct v4l2_mbus_framefmt *mbus_fmt) +{ + pix_fmt->width = mbus_fmt->width; + pix_fmt->height = mbus_fmt->height; + pix_fmt->field = mbus_fmt->field; + pix_fmt->colorspace = mbus_fmt->colorspace; + pix_fmt->ycbcr_enc = mbus_fmt->ycbcr_enc; + pix_fmt->quantization = mbus_fmt->quantization; + pix_fmt->xfer_func = mbus_fmt->xfer_func; +} + +/** + * v4l2_fill_mbus_format_ext - Ancillary routine that fills a &struct + * v4l2_mbus_framefmt from a &struct v4l2_ext_pix_format. + * + * @mbus_fmt: pointer to &struct v4l2_mbus_framefmt to be filled + * @pix_fmt: pointer to &struct v4l2_ext_pix_format to be used as model + * @code: data format code (from &enum v4l2_mbus_pixelcode) + */ +static inline void +v4l2_fill_mbus_format_ext(struct v4l2_mbus_framefmt *mbus_fmt, + const struct v4l2_ext_pix_format *pix_fmt, u32 code) +{ + mbus_fmt->width = pix_fmt->width; + mbus_fmt->height = pix_fmt->height; + mbus_fmt->field = pix_fmt->field; + mbus_fmt->colorspace = pix_fmt->colorspace; + mbus_fmt->ycbcr_enc = pix_fmt->ycbcr_enc; + mbus_fmt->quantization = pix_fmt->quantization; + mbus_fmt->xfer_func = pix_fmt->xfer_func; + mbus_fmt->code = code; +} + #endif -- 2.29.2