Skip to content
Permalink
Petko-Manolov/…
Switch branches/tags

Commits on Jan 23, 2022

  1. media: ovm6211: Adds support for OVM6211

    OVM6211 is a black and white 160 kpixel (400x400) camera sensor from OmniVision.
    It supports 400x400, 200x200 and 100x100 image sizes.  With careful register
    programming it is possible to have non-square sizes as well.  The output formats
    are 8/10-bit RAW, this driver is only using the former.  OVM6211 supports a
    single lane MIPI transmitter interface with up to 600 Mbps data rate.
    
    Signed-off-by: Petko Manolov <petko.manolov@konsulko.com>
    petkomanolov authored and intel-lab-lkp committed Jan 23, 2022

Commits on Dec 16, 2021

  1. media: ipu3-cio2: Add support for instantiating i2c-clients for VCMs

    Some sensors come with a variable-focus lens where the lens focus is
    controller by a VCM (Voice Coil Motor). If there is a VCM for the
    lens-focus, and if so which one, is described on the vcm_type field
    of the ACPI SSDB table.
    
    These VCMs are a second I2C device listed as an extra I2cSerialBusV2
    resource in the same ACPI device as the sensor. The i2c-core-acpi.c
    code only instantiates an i2c-client for the first I2cSerialBusV2
    resource.
    
    Add support for instantiating an i2c-client for the VCM with
    the type of the i2c-client set based on the SSDB vcm_type field.
    
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
    jwrdegoede authored and mchehab committed Dec 16, 2021
  2. media: ipu3-cio2: Call cio2_bridge_init() before anything else

    Since cio2_bridge_init() may now return -EPROBE_DEFER it is best to
    call it before anything else.
    
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
    jwrdegoede authored and mchehab committed Dec 16, 2021
  3. media: ipu3-cio2: Defer probing until the PMIC is fully setup

    On devices where things are not fully describe in devicetree (1)
    and where the code thus falls back to calling cio2_bridge_init(),
    the i2c-clients for any VCMs also need to be instantiated manually.
    
    The VCM can be probed by its driver as soon as the code instantiates
    the i2c-client and this probing must not happen before the PMIC is
    fully setup.
    
    Make cio2_bridge_init() return -EPROBE_DEFER when the PMIC is not
    fully-setup, deferring the probe of the ipu3-cio2 driver.
    
    This is a preparation patch for adding VCM enumeration support to
    the ipu3-cio2-bridge code.
    
    1) Through embedding of devicetree info in the ACPI tables
    
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
    jwrdegoede authored and mchehab committed Dec 16, 2021
  4. media: hantro: Add support for Allwinner H6

    Allwinner H6 has a Hantro G2 core used for VP9 decoding. It's not clear
    at this time if HEVC is also supported or not.
    
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Acked-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  5. media: dt-bindings: allwinner: document H6 Hantro G2 binding

    Allwinner H6 contains older Hantro G2 core, primarly used for VP9 video
    decoding. It's unclear for now if HEVC is also supported.
    
    Describe its binding.
    
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Reviewed-by: Rob Herring <robh@kernel.org>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  6. media: hantro: Convert imx8m_vpu_g2_irq to helper

    It turns out that imx8m_vpu_g2_irq() doesn't depend on any platform
    specifics and can be used with other G2 platform drivers too.
    
    Move it to common code.
    
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  7. media: hantro: move postproc enablement for old cores

    Older G2 cores, like that in Allwinner H6, seem to have issue with
    latching postproc register values if this is first thing done in job.
    Moving that to the end solves the issue.
    
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  8. media: hantro: vp9: add support for legacy register set

    Some older G2 cores uses slightly different register set for HEVC and
    VP9. Since vast majority of registers and logic is the same, it doesn't
    make sense to introduce another drivers.
    
    Add legacy_regs quirk and implement only VP9 changes for now. HEVC
    changes will be introduced later, if needed.
    
    Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  9. media: hantro: vp9: use double buffering if needed

    Some G2 variants need double buffering to be enabled in order to work
    correctly, like that found in Allwinner H6 SoC.
    
    Add platform quirk for that.
    
    Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  10. media: hantro: add support for reset lines

    Some SoCs like Allwinner H6 use reset lines for resetting Hantro G2. Add
    support for them.
    
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  11. media: hantro: Fix probe func error path

    If clocks for some reason couldn't be enabled, probe function returns
    immediately, without disabling PM. This obviously leaves PM ref counters
    unbalanced.
    
    Fix that by jumping to appropriate error path, so effects of PM functions
    are reversed.
    
    Fixes: 775fec6 ("media: add Rockchip VPU JPEG encoder driver")
    Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
    Acked-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
    Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jernejsk authored and mchehab committed Dec 16, 2021
  12. media: i2c: hi846: use pm_runtime_force_suspend/resume for system sus…

    …pend
    
    In cases like this when controlling regulators and clocks the suspend()
    and resume() functions are meant to be called balanced toggling the behaviour.
    
    It's wrong to use the same suspend function for runtime and system suspend
    in this case and leads to errors like
    
    [   77.718890] Failed to disable vddd: -EIO
    
    Use pm_runtime_force_* helpers in order to support system suspend properly
    when runtime pm is already implemented and fix this.
    
    Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    merge authored and mchehab committed Dec 16, 2021
  13. media: i2c: hi846: check return value of regulator_bulk_disable()

    regulator_bulk_disable can fail and thus suspend() can. Handle that error
    gracefully.
    
    Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    merge authored and mchehab committed Dec 16, 2021
  14. media: hi556: Support device probe in non-zero ACPI D state

    Tell ACPI device PM code that the driver supports the device being in
    non-zero ACPI D state when the driver's probe function is entered.
    
    Also do identification on the first access of the device, whether in probe
    or when starting streaming.
    
    Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
    Signed-off-by: Kao, Arec <arec.kao@intel.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    bingbucao authored and mchehab committed Dec 16, 2021
  15. media: ov5675: Support device probe in non-zero ACPI D state

    Tell ACPI device PM code that the driver supports the device being in
    non-zero ACPI D state when the driver's probe function is entered.
    
    Also do identification on the first access of the device, whether in probe
    or when starting streaming.
    
    Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    bingbucao authored and mchehab committed Dec 16, 2021
  16. media: imx208: Support device probe in non-zero ACPI D state

    Tell ACPI device PM code that the driver supports the device being in
    non-zero ACPI D state when the driver's probe function is entered.
    
    Also do identification on the first access of the device, whether in probe
    or when starting streaming.
    
    Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    bingbucao authored and mchehab committed Dec 16, 2021
  17. media: ov2740: support device probe in non-zero ACPI D state

    Tell ACPI device PM code that the driver supports the device being in
    non-zero ACPI D state when the driver's probe function is entered.
    
    Also do identification on the first access of the device, whether in probe
    or when starting streaming.
    
    Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    bingbucao authored and mchehab committed Dec 16, 2021
  18. media: ov5670: Support device probe in non-zero ACPI D state

    Tell ACPI device PM code that the driver supports the device being in
    non-zero ACPI D state when the driver's probe function is entered.
    
    Also do identification on the first access of the device, whether in probe
    or when starting streaming.
    
    Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Sakari Ailus authored and mchehab committed Dec 16, 2021
  19. media: ov8856: support device probe in non-zero ACPI D state

    Tell ACPI device PM code that the driver supports the device being in
    non-zero ACPI D state when the driver's probe function is entered.
    
    Also do identification on the first access of the device, whether in probe
    or when starting streaming.
    
    Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    bingbucao authored and mchehab committed Dec 16, 2021
  20. media: ov8865: Disable only enabled regulators on error path

    If powering on the sensor failed, the entire power-off sequence was run
    independently of how far the power-on sequence proceeded before the error.
    This lead to disabling regulators and/or clock that was not enabled.
    
    Fix this by disabling only clocks and regulators that were enabled
    previously.
    
    Fixes: 11c0d8f ("media: i2c: Add support for the OV8865 image sensor")
    Cc: stable@vger.kernel.org
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Sakari Ailus authored and mchehab committed Dec 16, 2021
  21. media: staging: ipu3-imgu: add the AWB memory layout

    While parsing the RAW AWB metadata, the AWB layout was missing to fully
    understand which byte corresponds to which feature. Make the field names
    and usage explicit, as it is used by the userspace applications.
    
    [Sakari Ailus: Changed wording of sat_ratio field as per review comments,
    	       fixed a whitespace issue.]
    
    Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
    Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
    Reviewed-by: Bingbu Cao <bingbu.cao@intel.com>
    Reviewed-by: Tomasz Figa <tfiga@chromium.org>
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    jhautbois authored and mchehab committed Dec 16, 2021
  22. media: Update Intel-submitted camera sensor driver contacts

    Hyungwoo's e-mail no longer works so I presume he's left the company. Drop
    Hyungwoo as maintainer on ov5670 driver and remove his e-mail from other
    sensor drivers.
    
    Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Sakari Ailus authored and mchehab committed Dec 16, 2021
  23. Merge tag 'platform-drivers-x86-int3472-1' of git://git.kernel.org/pu…

    …b/scm/linux/kernel/git/pdx86/platform-drivers-x86 into media_tree
    
    Signed tag for the immutable platform-drivers-x86-int3472 branch
    
    This branch contains 5.16-rc1 + the pending ACPI/i2c, tps68570 platform_data
    and INT3472 driver patches.
    
    * tag 'platform-drivers-x86-int3472-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
      platform/x86: int3472: Deal with probe ordering issues
      platform/x86: int3472: Pass tps68470_regulator_platform_data to the tps68470-regulator MFD-cell
      platform/x86: int3472: Pass tps68470_clk_platform_data to the tps68470-regulator MFD-cell
      platform/x86: int3472: Add get_sensor_adev_and_name() helper
      platform/x86: int3472: Split into 2 drivers
      platform_data: Add linux/platform_data/tps68470.h file
      i2c: acpi: Add i2c_acpi_new_device_by_fwnode() function
      i2c: acpi: Use acpi_dev_ready_for_enumeration() helper
      ACPI: delay enumeration of devices with a _DEP pointing to an INT3472 device
    mchehab committed Dec 16, 2021

Commits on Dec 14, 2021

  1. media: si2157: add ATV support for si2158

    This device also supports ATV, as it has the same API for
    setting analog TV tuning parameters.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  2. media: si2157: add support for 1.7MHz and 6.1 MHz

    Some tuners allow setting the bandwidth filter to 1.7MHz and
    6.1 MHz. Add support for it upstream, as the narrower is the
    bandwidth filter, the better.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  3. media: si2157: add support for ISDB-T and DTMB

    Those two delivery systems are supported by some of the si2146
    tuners, but the current code is missing the setup for those.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  4. media: si2157: get rid of chiptype data

    The driver should be capable of autodetecting its type, so no
    need to pass it via device driver's data.
    
    While here, improve documentation of some of the part_id
    specific code.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  5. media: si2157: use a different namespace for firmware

    Each chip at the si21xx TER family seems to have a different firmware,
    with seems to actually be a patch against the ROM code.
    
    Rework the code in order to use different firmware files depending
    on the chip ID and rom ID.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  6. media: si2157: rework the firmware load logic

    Loading a firmware file should not be mandatory, as devices
    could work with an eeprom firmware, if available.
    
    Yet, using the eeprom firmware could lead into unpredictable
    results, so the best is to warn about that.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  7. media: si2157: Add optional firmware download

    The Si2157 (A30) is functional with the ROM firmware 3.0.5, but can also
    be patched at runtime, e.g. to firmware 3.1.3. However, although a
    firmware filename for its firmware patch exists, that has only been used
    for the Si2177 (A30) so far (which indeed takes the binary identical
    firmware patch).
    
    Add support for downloading firmware patches into the Si2157 (A30), but
    make it optional, so that initialization can succeed with and without a
    firmware patch being available. Keep the use of request_firmware() for
    this purpose rather than firmware_request_nowarn(), so that the warning
    in the log makes users aware that it is possible to provide a firmware
    for this tuner.
    
    The firmware patch is probably also optional for other (if not all)
    tuners supported by the driver, but since I do not have the others
    available to test, they are kept mandatory for now to avoid regressions.
    
    Signed-off-by: Robert Schlabbach <robert_s@gmx.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    robert-sc authored and mchehab committed Dec 14, 2021
  8. media: si2157: move firmware load to a separate function

    Split the firmware load code from si2157_init, in order to
    help to add further changes at the way firmware is handled on
    this device.
    
    No functional changes.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    mchehab committed Dec 14, 2021
  9. media: b2c2-flexcop-usb: fix some whitespace coding style

    On some places, there's a missing whitespace.
    
    Link: https://lore.kernel.org/linux-media/20210526075527.302903-1-13145886936@163.com
    
    Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, gushengxian <gushengxian@yulong.com>
    Signed-off-by: gushengxian <gushengxian@yulong.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    gushengxian authored and mchehab committed Dec 14, 2021
  10. media: ivtv: no need to initialise statics to 0

    Static variables do not need to be initialised to 0, because compiler
    will initialise all uninitialised statics to 0. Thus, remove the
    unneeded initializations.
    
    Link: https://lore.kernel.org/linux-media/20211212070918.289617-1-wangborong@cdjrlc.com
    Signed-off-by: Jason Wang <wangborong@cdjrlc.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Jason Wang authored and mchehab committed Dec 14, 2021
  11. media: dmxdev: drop unneeded <linux/kernel.h> inclusion from other he…

    …aders
    
    There is no evidence we need kernel.h inclusion in certain headers.
    Drop unneeded <linux/kernel.h> inclusion from other headers.
    
    Link: https://lore.kernel.org/linux-media/20211210120201.35635-1-andriy.shevchenko@linux.intel.com
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    andy-shev authored and mchehab committed Dec 14, 2021
Older