All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sylwester Nawrocki <s.nawrocki@samsung.com>
To: Arun Kumar K <arun.kk@samsung.com>
Cc: linux-media@vger.kernel.org, linux-samsung-soc@vger.kernel.org,
	devicetree@vger.kernel.org, hverkuil@xs4all.nl,
	swarren@wwwdotorg.org, mark.rutland@arm.com, a.hajda@samsung.com,
	sachin.kamat@linaro.org, shaik.ameer@samsung.com,
	kilyeon.im@samsung.com, arunkk.samsung@gmail.com,
	Pawel Moll <Pawel.Moll@arm.com>,
	Kumar Gala <galak@codeaurora.org>
Subject: Re: [PATCH v6 01/13] [media] exynos5-is: Adding media device driver for exynos5
Date: Tue, 20 Aug 2013 13:59:37 +0200	[thread overview]
Message-ID: <52135A29.80203@samsung.com> (raw)
In-Reply-To: <1376644845-10422-2-git-send-email-arun.kk@samsung.com>

Cc: Pawel, Kumar

On 08/16/2013 11:20 AM, Arun Kumar K wrote:
> From: Shaik Ameer Basha <shaik.ameer@samsung.com>
> 
> This patch adds support for media device for EXYNOS5 SoCs.
> The current media device supports the following ips to connect
> through the media controller framework.
> 
> * MIPI-CSIS
>   Support interconnection(subdev interface) between devices
> 
> * FIMC-LITE
>   Support capture interface from device(Sensor, MIPI-CSIS) to memory
>   Support interconnection(subdev interface) between devices
> 
> * FIMC-IS
>   Camera post-processing IP having multiple sub-nodes.
> 
> G-Scaler will be added later to the current media device.
> 
> The media device creates two kinds of pipelines for connecting
> the above mentioned IPs.
> The pipeline0 is uses Sensor, MIPI-CSIS and FIMC-LITE which captures
> image data and dumps to memory.
> Pipeline1 uses FIMC-IS components for doing post-processing
> operations on the captured image and give scaled YUV output.
> 
> Pipeline0
>   +--------+     +-----------+     +-----------+     +--------+
>   | Sensor | --> | MIPI-CSIS | --> | FIMC-LITE | --> | Memory |
>   +--------+     +-----------+     +-----------+     +--------+
> 
> Pipeline1
>  +--------+      +--------+     +-----------+     +-----------+
>  | Memory | -->  |  ISP   | --> |    SCC    | --> |    SCP    |
>  +--------+      +--------+     +-----------+     +-----------+
> 
> Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
> Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
> ---
>  .../devicetree/bindings/media/exynos5-mdev.txt     |  126 ++
>  drivers/media/platform/exynos5-is/exynos5-mdev.c   | 1210 ++++++++++++++++++++
>  drivers/media/platform/exynos5-is/exynos5-mdev.h   |  126 ++
>  3 files changed, 1462 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/media/exynos5-mdev.txt
>  create mode 100644 drivers/media/platform/exynos5-is/exynos5-mdev.c
>  create mode 100644 drivers/media/platform/exynos5-is/exynos5-mdev.h
> 
> diff --git a/Documentation/devicetree/bindings/media/exynos5-mdev.txt b/Documentation/devicetree/bindings/media/exynos5-mdev.txt
> new file mode 100644
> index 0000000..b1299e2
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/exynos5-mdev.txt

Sorry, I missed this previously. How about renaming this file to something
more specific to the subsystem it describes, e.g. exynos5250-camera.txt ?

> @@ -0,0 +1,126 @@
> +Samsung EXYNOS5 SoC Camera Subsystem
> +------------------------------------
> +
> +The Exynos5 SoC Camera subsystem comprises of multiple sub-devices
> +represented by separate device tree nodes. Currently this includes: FIMC-LITE,
> +MIPI CSIS and FIMC-IS.
> +
> +The sub-device nodes are referenced using phandles in the common 'camera' node
> +which also includes common properties of the whole subsystem not really
> +specific to any single sub-device, like common camera port pins or the common
> +camera bus clocks.
> +
> +Common 'camera' node
> +--------------------
> +
> +Required properties:
> +
> +- compatible		: must be "samsung,exynos5250-fimc"
> +- clocks		: list of clock specifiers, corresponding to entries in
> +                          the clock-names property;
> +- clock-names		: must contain "sclk_bayer" entry
> +- samsung,csis		: list of phandles to the mipi-csis device nodes
> +- samsung,fimc-lite	: list of phandles to the fimc-lite device nodes
> +- samsung,fimc-is	: phandle to the fimc-is device node
> +
> +The pinctrl bindings defined in ../pinctrl/pinctrl-bindings.txt must be used
> +to define a required pinctrl state named "default".
> +
> +'parallel-ports' node
> +---------------------
> +
> +This node should contain child 'port' nodes specifying active parallel video
> +input ports. It includes camera A, camera B and RGB bay inputs.
> +'reg' property in the port nodes specifies the input type:
> + 1 - parallel camport A
> + 2 - parallel camport B
> + 5 - RGB camera bay
> +
> +3, 4 are for MIPI CSI-2 bus and are already described in samsung-mipi-csis.txt
> +
> +Image sensor nodes
> +------------------
> +
> +The sensor device nodes should be added to their control bus controller (e.g.
> +I2C0) nodes and linked to a port node in the csis or the parallel-ports node,
> +using the common video interfaces bindings, defined in video-interfaces.txt.
> +
> +Example:
> +
> +	aliases {
> +		fimc-lite0 = &fimc_lite_0
> +	};
> +
> +	/* Parallel bus IF sensor */
> +	i2c_0: i2c@13860000 {
> +		s5k6aa: sensor@3c {
> +			compatible = "samsung,s5k6aafx";
> +			reg = <0x3c>;
> +			vddio-supply = <...>;
> +
> +			clock-frequency = <24000000>;
> +			clocks = <...>;
> +			clock-names = "mclk";
> +
> +			port {
> +				s5k6aa_ep: endpoint {
> +					remote-endpoint = <&fimc0_ep>;
> +					bus-width = <8>;
> +					hsync-active = <0>;
> +					vsync-active = <1>;
> +					pclk-sample = <1>;
> +				};
> +			};
> +		};
> +	};
> +
> +	/* MIPI CSI-2 bus IF sensor */
> +	s5c73m3: sensor@1a {
> +		compatible = "samsung,s5c73m3";
> +		reg = <0x1a>;
> +		vddio-supply = <...>;
> +
> +		clock-frequency = <24000000>;
> +		clocks = <...>;
> +		clock-names = "mclk";
> +
> +		port {
> +			s5c73m3_1: endpoint {
> +				data-lanes = <1 2 3 4>;
> +				remote-endpoint = <&csis0_ep>;
> +			};
> +		};
> +	};
> +
> +	camera {
> +		compatible = "samsung,exynos5250-fimc";
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		status = "okay";
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&cam_port_a_clk_active>;
> +
> +		samsung,csis = <&csis_0>, <&csis_1>;
> +		samsung,fimc-lite = <&fimc_lite_0>, <&fimc_lite_1>, <&fimc_lite_2>;
> +		samsung,fimc-is = <&fimc_is>;
> +
> +		/* parallel camera ports */
> +		parallel-ports {
> +			/* camera A input */
> +			port@0 {

This should be port@1

> +				reg = <0>;

and reg = <1>;

> +				camport_a_ep: endpoint {
> +					remote-endpoint = <&s5k6aa_ep>;
> +					bus-width = <8>;
> +					hsync-active = <0>;
> +					vsync-active = <1>;
> +					pclk-sample = <1>;
> +				};
> +			};
> +		};
> +	};
> +
> +MIPI-CSIS device binding is defined in samsung-mipi-csis.txt, FIMC-LITE
> +device binding is defined in exynos-fimc-lite.txt and FIMC-IS binding
> +is defined in exynos5-fimc-is.txt.

Otherwise looks good to me. I think we now need an Ack from the DT
maintainers. If they are OK with the binding I could queue this whole
series for v3.12 this week, once you resend patches #1, #2.

Thanks,
Sylwester

  reply	other threads:[~2013-08-20 11:59 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-16  9:20 [PATCH v6 00/13] Exynos5 IS driver Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 01/13] [media] exynos5-is: Adding media device driver for exynos5 Arun Kumar K
2013-08-20 11:59   ` Sylwester Nawrocki [this message]
2013-08-20 12:53     ` Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 02/13] [media] exynos5-fimc-is: Add Exynos5 FIMC-IS device tree bindings documentation Arun Kumar K
2013-08-20 11:59   ` Sylwester Nawrocki
2013-08-16  9:20 ` [PATCH v6 03/13] [media] exynos5-fimc-is: Add driver core files Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 04/13] [media] exynos5-fimc-is: Add common driver header files Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 05/13] [media] exynos5-fimc-is: Add register definition and context header Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 06/13] [media] exynos5-fimc-is: Add isp subdev Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 07/13] [media] exynos5-fimc-is: Add scaler subdev Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 08/13] [media] exynos5-fimc-is: Add sensor interface Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 09/13] [media] exynos5-fimc-is: Add the hardware pipeline control Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 10/13] [media] exynos5-fimc-is: Add the hardware interface module Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 11/13] [media] exynos5-is: Add Kconfig and Makefile Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 12/13] V4L: s5k6a3: Change sensor min/max resolutions Arun Kumar K
2013-08-16  9:20 ` [PATCH v6 13/13] V4L: Add driver for s5k4e5 image sensor Arun Kumar K

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52135A29.80203@samsung.com \
    --to=s.nawrocki@samsung.com \
    --cc=Pawel.Moll@arm.com \
    --cc=a.hajda@samsung.com \
    --cc=arun.kk@samsung.com \
    --cc=arunkk.samsung@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=hverkuil@xs4all.nl \
    --cc=kilyeon.im@samsung.com \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=sachin.kamat@linaro.org \
    --cc=shaik.ameer@samsung.com \
    --cc=swarren@wwwdotorg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.