Hi Ramesh,
On Tue, May 09, 2017 at 02:37:34PM +0100, Ramesh Shanmugasundaram wrote:
> This patch adds driver support for the MAX2175 chip. This is Maxim
> Integrated's RF to Bits tuner front end chip designed for software-defined
> radio solutions. This driver exposes the tuner as a sub-device instance
> with standard and custom controls to configure the device.
>
> Signed-off-by: Ramesh Shanmugasundaram
>
> ---
> v5:
> - sck -> Sample clock is clarified in driver documentation (Hans)
> - "refout-load-pF" is renamed to "refout-load" as per updated bindings.
> ---
> Documentation/media/v4l-drivers/index.rst |1 +
> Documentation/media/v4l-drivers/max2175.rst | 60 ++
> drivers/media/i2c/Kconfig |4 +
> drivers/media/i2c/Makefile |2 +
> drivers/media/i2c/max2175/Kconfig |8 +
> drivers/media/i2c/max2175/Makefile |4 +
> drivers/media/i2c/max2175/max2175.c | 1437
> +++
> drivers/media/i2c/max2175/max2175.h | 108 ++
If the driver consists of two files, I think it'd be reasonable to have it
directly under drivers/media/i2c rather than in its own directory.
> 8 files changed, 1624 insertions(+)
> create mode 100644 Documentation/media/v4l-drivers/max2175.rst
> create mode 100644 drivers/media/i2c/max2175/Kconfig
> create mode 100644 drivers/media/i2c/max2175/Makefile
> create mode 100644 drivers/media/i2c/max2175/max2175.c
> create mode 100644 drivers/media/i2c/max2175/max2175.h
>
> diff --git a/Documentation/media/v4l-drivers/index.rst
> b/Documentation/media/v4l-drivers/index.rst
> index a606d1cdac13..d8cade53d496 100644
> --- a/Documentation/media/v4l-drivers/index.rst
> +++ b/Documentation/media/v4l-drivers/index.rst
> @@ -42,6 +42,7 @@ For more details see the file COPYING in the source
> distribution of Linux.
> davinci-vpbe
> fimc
> ivtv
> +max2175
Tabs, please!
> meye
> omap3isp
> omap4_camera
> diff --git a/Documentation/media/v4l-drivers/max2175.rst
> b/Documentation/media/v4l-drivers/max2175.rst
> new file mode 100644
> index ..94fb815f043b
> --- /dev/null
> +++ b/Documentation/media/v4l-drivers/max2175.rst
> @@ -0,0 +1,60 @@
> +Maxim Integrated MAX2175 RF to bits tuner driver
> +
> +
> +The MAX2175 driver implements the following driver-specific controls:
> +
> +``V4L2_CID_MAX2175_I2S_ENABLE``
You're documenting driver specific controls. Should you provide a header
under include/uapi/linux to make these usable for the user space?
> +---
> +Enable/Disable I2S output of the tuner.
> +
> +.. flat-table::
> +:header-rows: 0
> +:stub-columns: 0
> +:widths: 1 4
> +
> +* - ``(0)``
> + - I2S output is disabled.
> +* - ``(1)``
> + - I2S output is enabled.
> +
> +``V4L2_CID_MAX2175_HSLS``
> +-
> +The high-side/low-side (HSLS) control of the tuner for a given band.
> +
> +.. flat-table::
> +:header-rows: 0
> +:stub-columns: 0
> +:widths: 1 4
> +
> +* - ``(0)``
> + - The LO frequency position is below the desired frequency.
> +* - ``(1)``
> + - The LO frequency position is above the desired frequency.
> +
> +``V4L2_CID_MAX2175_RX_MODE (menu)``
> +---
> +The Rx mode controls a number of preset parameters of the tuner like
> +sample clock (sck), sampling rate etc. These multiple settings are
> +provided under one single label called Rx mode in the datasheet. The
> +list below shows the supported modes with a brief description.
> +
> +.. flat-table::
> +:header-rows: 0
> +:stub-columns: 0
> +:widths: 1 4
> +
> +* - ``"Europe modes"``
> +* - ``"FM 1.2" (0)``
> + - This configures FM band with a sample rate of 0.512 million
> +samples/sec with a 10.24 MHz sck.
> +* - ``"DAB 1.2" (1)``
> + - This configures VHF band with a sample rate of 2.048 million
> +samples/sec with a 32.768 MHz sck.
> +
> +* - ``"North America modes"``
> +* - ``"FM 1.0" (0)``
> + - This configures FM band with a sample rate of 0.7441875 million
> +samples/sec with a 14.88375 MHz sck.
> +* - ``"DAB 1.2" (1)``
> + - This configures FM band with a sample rate of 0.372 million
> +samples/sec with a 7.441875 MHz sck.
> diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig
> index b358d1a40688..d9fc1311794f 100644
> --- a/drivers/media/i2c/Kconfig
> +++ b/drivers/media/i2c/Kconfig
> @@ -785,6 +785,10 @@ config VIDEO_SAA6752HS
> To compile this driver as a module, choose M here: the
> module will be called saa6752hs.
>
> +comment "SDR tuner chips"
> +
> +source "drivers/media/i2c/max2175/Kconfig"
> +
> comment "Miscellaneous helper chips"
>
> config VIDEO_THS7303
> diff --git a/drivers/media/i2c/Makefi