From: Hans Verkuil <hverkuil@xs4all.nl>
To: Arun Kumar K <arun.kk@samsung.com>
Cc: linux-media@vger.kernel.org, linux-samsung-soc@vger.kernel.org,
devicetree@vger.kernel.org, s.nawrocki@samsung.com,
swarren@wwwdotorg.org, mark.rutland@arm.com, Pawel.Moll@arm.com,
galak@codeaurora.org, a.hajda@samsung.com,
sachin.kamat@linaro.org, shaik.ameer@samsung.com,
kilyeon.im@samsung.com, arunkk.samsung@gmail.com
Subject: Re: [PATCH v7 13/13] V4L: Add driver for s5k4e5 image sensor
Date: Wed, 21 Aug 2013 08:53:55 +0200 [thread overview]
Message-ID: <52146403.9050702@xs4all.nl> (raw)
In-Reply-To: <1377066881-5423-14-git-send-email-arun.kk@samsung.com>
On 08/21/2013 08:34 AM, Arun Kumar K wrote:
> This patch adds subdev driver for Samsung S5K4E5 raw image sensor.
> Like s5k6a3, it is also another fimc-is firmware controlled
> sensor. This minimal sensor driver doesn't do any I2C communications
> as its done by ISP firmware. It can be updated if needed to a
> regular sensor driver by adding the I2C communication.
>
> Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
> Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
> ---
> .../devicetree/bindings/media/i2c/s5k4e5.txt | 43 +++
> drivers/media/i2c/Kconfig | 8 +
> drivers/media/i2c/Makefile | 1 +
> drivers/media/i2c/s5k4e5.c | 361 ++++++++++++++++++++
> 4 files changed, 413 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/media/i2c/s5k4e5.txt
> create mode 100644 drivers/media/i2c/s5k4e5.c
>
...
> diff --git a/drivers/media/i2c/s5k4e5.c b/drivers/media/i2c/s5k4e5.c
> new file mode 100644
> index 0000000..0a6ece6
> --- /dev/null
> +++ b/drivers/media/i2c/s5k4e5.c
> @@ -0,0 +1,361 @@
> +/*
> + * Samsung S5K4E5 image sensor driver
> + *
> + * Copyright (C) 2013 Samsung Electronics Co., Ltd.
> + * Author: Arun Kumar K <arun.kk@samsung.com>
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +
> +#include <linux/clk.h>
> +#include <linux/delay.h>
> +#include <linux/device.h>
> +#include <linux/errno.h>
> +#include <linux/gpio.h>
> +#include <linux/i2c.h>
> +#include <linux/kernel.h>
> +#include <linux/module.h>
> +#include <linux/of_gpio.h>
> +#include <linux/pm_runtime.h>
> +#include <linux/regulator/consumer.h>
> +#include <linux/slab.h>
> +#include <linux/videodev2.h>
> +#include <media/v4l2-async.h>
> +#include <media/v4l2-subdev.h>
> +
> +#define S5K4E5_SENSOR_MAX_WIDTH 2576
> +#define S5K4E5_SENSOR_MAX_HEIGHT 1930
> +
> +#define S5K4E5_SENSOR_ACTIVE_WIDTH 2560
> +#define S5K4E5_SENSOR_ACTIVE_HEIGHT 1920
> +
> +#define S5K4E5_SENSOR_MIN_WIDTH (32 + 16)
> +#define S5K4E5_SENSOR_MIN_HEIGHT (32 + 10)
> +
> +#define S5K4E5_DEF_WIDTH 1296
> +#define S5K4E5_DEF_HEIGHT 732
> +
> +#define S5K4E5_DRV_NAME "S5K4E5"
> +#define S5K4E5_CLK_NAME "mclk"
> +
> +#define S5K4E5_NUM_SUPPLIES 2
> +
> +#define S5K4E5_DEF_CLK_FREQ 24000000
> +
> +/**
> + * struct s5k4e5 - s5k4e5 sensor data structure
> + * @dev: pointer to this I2C client device structure
> + * @subdev: the image sensor's v4l2 subdev
> + * @pad: subdev media source pad
> + * @supplies: image sensor's voltage regulator supplies
> + * @gpio_reset: GPIO connected to the sensor's reset pin
> + * @lock: mutex protecting the structure's members below
> + * @format: media bus format at the sensor's source pad
> + */
> +struct s5k4e5 {
> + struct device *dev;
> + struct v4l2_subdev subdev;
> + struct media_pad pad;
> + struct regulator_bulk_data supplies[S5K4E5_NUM_SUPPLIES];
> + int gpio_reset;
> + struct mutex lock;
> + struct v4l2_mbus_framefmt format;
> + struct clk *clock;
> + u32 clock_frequency;
> +};
> +
> +static const char * const s5k4e5_supply_names[] = {
> + "svdda",
> + "svddio"
> +};
I'm no regulator expert, but shouldn't this list come from the DT or platform_data?
Or are these names specific to this sensor?
Regards,
Hans
next prev parent reply other threads:[~2013-08-21 6:54 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-21 6:34 [PATCH v7 00/13] Exynos5 IS driver Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 01/13] [media] exynos5-is: Adding media device driver for exynos5 Arun Kumar K
2013-09-05 19:44 ` Sylwester Nawrocki
[not found] ` <1377066881-5423-2-git-send-email-arun.kk-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2013-09-16 21:53 ` Sylwester Nawrocki
2013-09-17 11:29 ` Arun Kumar K
2013-09-17 20:50 ` Sylwester Nawrocki
[not found] ` <5238C090.6090201-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-09-18 11:48 ` Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 02/13] [media] exynos5-fimc-is: Add Exynos5 FIMC-IS device tree bindings documentation Arun Kumar K
2013-09-05 19:40 ` Sylwester Nawrocki
2013-08-21 6:34 ` [PATCH v7 03/13] [media] exynos5-fimc-is: Add driver core files Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 04/13] [media] exynos5-fimc-is: Add common driver header files Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 05/13] [media] exynos5-fimc-is: Add register definition and context header Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 06/13] [media] exynos5-fimc-is: Add isp subdev Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 07/13] [media] exynos5-fimc-is: Add scaler subdev Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 08/13] [media] exynos5-fimc-is: Add sensor interface Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 09/13] [media] exynos5-fimc-is: Add the hardware pipeline control Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 10/13] [media] exynos5-fimc-is: Add the hardware interface module Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 11/13] [media] exynos5-is: Add Kconfig and Makefile Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 12/13] V4L: s5k6a3: Change sensor min/max resolutions Arun Kumar K
2013-08-21 6:34 ` [PATCH v7 13/13] V4L: Add driver for s5k4e5 image sensor Arun Kumar K
2013-08-21 6:53 ` Hans Verkuil [this message]
2013-08-21 7:58 ` Tomasz Figa
2013-08-21 8:24 ` Hans Verkuil
2013-08-21 9:04 ` Arun Kumar K
2013-08-21 9:13 ` Sylwester Nawrocki
2013-08-21 9:28 ` Sylwester Nawrocki
2013-09-05 20:02 ` Sylwester Nawrocki
2013-09-06 4:33 ` Arun Kumar K
2013-09-11 5:10 ` Arun Kumar K
2013-09-11 10:16 ` Sylwester Nawrocki
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=52146403.9050702@xs4all.nl \
--to=hverkuil@xs4all.nl \
--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=kilyeon.im@samsung.com \
--cc=linux-media@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=s.nawrocki@samsung.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox