Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp1679207pxb; Mon, 12 Apr 2021 04:12:59 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwo9Wey6BpzxUmerxdswoSGpUS/hm5fH30A33fncGVkBWxOmwN4NNXw6Pm8wHL/qD4n0xe+ X-Received: by 2002:a17:90a:fa0c:: with SMTP id cm12mr20887259pjb.54.1618225979059; Mon, 12 Apr 2021 04:12:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618225979; cv=none; d=google.com; s=arc-20160816; b=Z/WEs36wnq1T34QY3C+zZerC9Ob7RmVmI3W/PvSR7pqGYr91cJ31qBHJx6YSzkw+1v NzRzNd9N8QhEPJjWKJBihFAKHESD4WBN2Q+c2JSqQJxg+fnj0pvzaabFReQ1B3ZX1NWZ ht0WgZOFNE2f6AndngY7WlXWIdX9/uTRlp+nEr2RjR6WLLP5XgAn2rgrgb/Q4wYguJlR GbPC0S6KgE46rQQXYaXyAuab+ldW11nJVaPP3NHmys6zHlWPXVi3rx53InMsZAjhBrl9 +7xoR5ZT2Q/Cm614CerjhEL3xpVBU4E7GeCkg+y7vdp85CAFobfnc8yuPxR8eu0eJP+s R0/Q== 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 :message-id:date:subject:cc:to:from; bh=94/f7OaCtrXkWvxoas2TmSy+SJbkBjSaL/fiP+8FEsk=; b=XhZo+OhwXNe9Piq3i81m1NJgCrUZnBQmBPkbHM6ZTdaKGKjYi4Npede1AqSKK6v0Ri O7BcnMv8/wA42a2oraTm/Dl6iDUddJHDl4J3jl862v3LC7Uug45Sf1Ntj5r/EYO335V9 bb5wh1uWeVVVjIIBV+mSTcT9lI/z6zVKAFB7zPFawcRd2VcD8GFPB/W7QXTq7fTEs1xO gXJXz2woLwXnfKx7FNrpAUnVY2YiSqnTkCTtUZqjjr9Oxz5Hmer+xPg8wL0qZCL2yqXW TgyM8lP897Fnd1RJIcLpKE2/r4B9p0QDPslcai2fsU8vgO5tu5b0acHfG+uUrgSuZ3x9 +PSg== 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b2si13164452plx.72.2021.04.12.04.12.46; Mon, 12 Apr 2021 04:12:59 -0700 (PDT) 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240123AbhDLLLq (ORCPT + 99 others); Mon, 12 Apr 2021 07:11:46 -0400 Received: from retiisi.eu ([95.216.213.190]:48102 "EHLO hillosipuli.retiisi.eu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240110AbhDLLLq (ORCPT ); Mon, 12 Apr 2021 07:11:46 -0400 Received: from lanttu.localdomain (unknown [192.168.2.193]) by hillosipuli.retiisi.eu (Postfix) with ESMTP id 05F57634C87; Mon, 12 Apr 2021 14:10:35 +0300 (EEST) From: Sakari Ailus To: linux-media@vger.kernel.org Cc: Greg KH , Mitali Borkar , bingbu.cao@intel.com, tian.shu.qiu@intel.com, mchehab@kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, outreachy-kernel@googlegroups.com, mitali_s@me.iitr.ac.in, laurent.pinchart@ideasonboard.com Subject: [PATCH 1/1] staging: ipu3-imgu: Move the UAPI header from include under include/uapi Date: Mon, 12 Apr 2021 14:11:20 +0300 Message-Id: <20210412111120.31625-1-sakari.ailus@linux.intel.com> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The header defines the user space interface but may be mistaken as kernel-only header due to its location. Add "uapi" directory under driver's include directory and move the header there. Suggested-by: Greg KH Signed-off-by: Sakari Ailus --- Documentation/admin-guide/media/ipu3.rst | 35 ++++++++++--------- .../media/v4l/pixfmt-meta-intel-ipu3.rst | 2 +- .../ipu3/include/{ => uapi}/intel-ipu3.h | 0 drivers/staging/media/ipu3/ipu3-abi.h | 2 +- 4 files changed, 20 insertions(+), 19 deletions(-) rename drivers/staging/media/ipu3/include/{ => uapi}/intel-ipu3.h (100%) diff --git a/Documentation/admin-guide/media/ipu3.rst b/Documentation/admin-guide/media/ipu3.rst index f59697c7b374..d6454f637ff4 100644 --- a/Documentation/admin-guide/media/ipu3.rst +++ b/Documentation/admin-guide/media/ipu3.rst @@ -234,22 +234,23 @@ The IPU3 ImgU pipelines can be configured using the Media Controller, defined at Running mode and firmware binary selection ------------------------------------------ -ImgU works based on firmware, currently the ImgU firmware support run 2 pipes in -time-sharing with single input frame data. Each pipe can run at certain mode - -"VIDEO" or "STILL", "VIDEO" mode is commonly used for video frames capture, and -"STILL" is used for still frame capture. However, you can also select "VIDEO" to -capture still frames if you want to capture images with less system load and -power. For "STILL" mode, ImgU will try to use smaller BDS factor and output -larger bayer frame for further YUV processing than "VIDEO" mode to get high -quality images. Besides, "STILL" mode need XNR3 to do noise reduction, hence -"STILL" mode will need more power and memory bandwidth than "VIDEO" mode. TNR -will be enabled in "VIDEO" mode and bypassed by "STILL" mode. ImgU is running at -“VIDEO” mode by default, the user can use v4l2 control V4L2_CID_INTEL_IPU3_MODE -(currently defined in drivers/staging/media/ipu3/include/intel-ipu3.h) to query -and set the running mode. For user, there is no difference for buffer queueing -between the "VIDEO" and "STILL" mode, mandatory input and main output node -should be enabled and buffers need be queued, the statistics and the view-finder -queues are optional. +ImgU works based on firmware, currently the ImgU firmware support run 2 pipes +in time-sharing with single input frame data. Each pipe can run at certain mode +- "VIDEO" or "STILL", "VIDEO" mode is commonly used for video frames capture, +and "STILL" is used for still frame capture. However, you can also select +"VIDEO" to capture still frames if you want to capture images with less system +load and power. For "STILL" mode, ImgU will try to use smaller BDS factor and +output larger bayer frame for further YUV processing than "VIDEO" mode to get +high quality images. Besides, "STILL" mode need XNR3 to do noise reduction, +hence "STILL" mode will need more power and memory bandwidth than "VIDEO" mode. +TNR will be enabled in "VIDEO" mode and bypassed by "STILL" mode. ImgU is +running at “VIDEO” mode by default, the user can use v4l2 control +V4L2_CID_INTEL_IPU3_MODE (currently defined in +drivers/staging/media/ipu3/include/uapi/intel-ipu3.h) to query and set the +running mode. For user, there is no difference for buffer queueing between the +"VIDEO" and "STILL" mode, mandatory input and main output node should be +enabled and buffers need be queued, the statistics and the view-finder queues +are optional. The firmware binary will be selected according to current running mode, such log "using binary if_to_osys_striped " or "using binary if_to_osys_primary_striped" @@ -586,7 +587,7 @@ preserved. References ========== -.. [#f5] drivers/staging/media/ipu3/include/intel-ipu3.h +.. [#f5] drivers/staging/media/ipu3/include/uapi/intel-ipu3.h .. [#f1] https://github.com/intel/nvt diff --git a/Documentation/userspace-api/media/v4l/pixfmt-meta-intel-ipu3.rst b/Documentation/userspace-api/media/v4l/pixfmt-meta-intel-ipu3.rst index 5f33d35532ef..84d81dd7a7b5 100644 --- a/Documentation/userspace-api/media/v4l/pixfmt-meta-intel-ipu3.rst +++ b/Documentation/userspace-api/media/v4l/pixfmt-meta-intel-ipu3.rst @@ -78,4 +78,4 @@ hardware and algorithm details. Intel IPU3 ImgU uAPI data types =============================== -.. kernel-doc:: drivers/staging/media/ipu3/include/intel-ipu3.h +.. kernel-doc:: drivers/staging/media/ipu3/include/uapi/intel-ipu3.h diff --git a/drivers/staging/media/ipu3/include/intel-ipu3.h b/drivers/staging/media/ipu3/include/uapi/intel-ipu3.h similarity index 100% rename from drivers/staging/media/ipu3/include/intel-ipu3.h rename to drivers/staging/media/ipu3/include/uapi/intel-ipu3.h diff --git a/drivers/staging/media/ipu3/ipu3-abi.h b/drivers/staging/media/ipu3/ipu3-abi.h index e1185602c7fd..c76935b436d7 100644 --- a/drivers/staging/media/ipu3/ipu3-abi.h +++ b/drivers/staging/media/ipu3/ipu3-abi.h @@ -4,7 +4,7 @@ #ifndef __IPU3_ABI_H #define __IPU3_ABI_H -#include "include/intel-ipu3.h" +#include "include/uapi/intel-ipu3.h" /******************* IMGU Hardware information *******************/ -- 2.29.2