16 Apr, 2020

1 commit

  • There are *lots* of I2C ancillary drivers. While we're using
    comments to group them, all options appear at the same menu.

    It should be a lot clearer to group them into sub-menus, with
    may help people to go directly to the driver(s) he's needing
    to enable.

    Suggested-by: Hans Verkuil
    Acked-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

14 Apr, 2020

1 commit

  • There are lots of drivers that only work when the media controller
    and/or the V4L2 subdev APIs are present.

    Right now, someone need to first enable those APIs before
    using those drivers.

    Well, ideally, drivers, should, instead *optionally*
    depend on it, in order for PC camera drivers to be able to use
    them, but nowadays most drivers are UVC cameras, with don't
    require a sensor driver.

    So, be it.

    Let's instead make them select the MEDIA_CONTROLLER and the
    SUBDEV API, in order to make easier for people to be able
    of enabling them.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

06 Mar, 2020

1 commit

  • In a recent change to the SPI subsystem [1], a new `delay` struct was added
    to replace the `delay_usecs`. This change replaces the current
    `delay_usecs` with `delay` for this driver.

    The `spi_transfer_delay_exec()` function [in the SPI framework] makes sure
    that both `delay_usecs` & `delay` are used (in this order to preserve
    backwards compatibility).

    [1] commit bebcfd272df6 ("spi: introduce `delay` field for
    `spi_transfer` + spi_transfer_delay_exec()")

    Signed-off-by: Sergiu Cuciurean
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Sergiu Cuciurean
     

19 Aug, 2019

1 commit

  • Some users have been having a hard time finding the hidden
    menus. A typically case are camera sensor drivers
    (e.g IMX219, OV5645, etc), which are common on embedded
    platforms and not really "ancillary" devices.

    The problem with MEDIA_SUBDRV_AUTOSELECT seems to be related
    to the fact that it uses the "visible" syntax to hide
    the menus.

    This is not obvious and it normally takes some time to
    figure out.

    To fix the problem, add a comment on each of hidden menus,
    which should clarify what option is causing menus to be hidden.

    Signed-off-by: Ezequiel Garcia
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Ezequiel Garcia
     

12 Jun, 2019

1 commit

  • There are some conflicts due to SPDX changes. We also have more
    patches being merged via media tree touching them.

    So, let's merge back from upstream and address those.

    Linux 5.2-rc4

    * tag 'v5.2-rc4': (767 commits)
    Linux 5.2-rc4
    MAINTAINERS: Karthikeyan Ramasubramanian is MIA
    i2c: xiic: Add max_read_len quirk
    lockref: Limit number of cmpxchg loop retries
    uaccess: add noop untagged_addr definition
    x86/insn-eval: Fix use-after-free access to LDT entry
    kbuild: use more portable 'command -v' for cc-cross-prefix
    s390/unwind: correct stack switching during unwind
    block, bfq: add weight symlink to the bfq.weight cgroup parameter
    cgroup: let a symlink too be created with a cftype file
    drm/nouveau/secboot/gp10[2467]: support newer FW to fix SEC2 failures on some boards
    drm/nouveau/secboot: enable loading of versioned LS PMU/SEC2 ACR msgqueue FW
    drm/nouveau/secboot: split out FW version-specific LS function pointers
    drm/nouveau/secboot: pass max supported FW version to LS load funcs
    drm/nouveau/core: support versioned firmware loading
    drm/nouveau/core: pass subdev into nvkm_firmware_get, rather than device
    block: free sched's request pool in blk_cleanup_queue
    pktgen: do not sleep with the thread lock held.
    net: mvpp2: Use strscpy to handle stat strings
    net: rds: fix memory leak in rds_ib_flush_mr_pool
    ...

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

31 May, 2019

1 commit

  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 3029 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190527070032.746973796@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

28 May, 2019

1 commit

  • Merge back from upstream into media tree, as there are some
    patches merged upstream that has pontential of causing
    conflicts (one actually rised a conflict already).

    Linux 5.2-rc2

    * tag 'v5.2-rc2': (377 commits)
    Linux 5.2-rc2
    random: fix soft lockup when trying to read from an uninitialized blocking pool
    tracing: Silence GCC 9 array bounds warning
    ext4: fix dcache lookup of !casefolded directories
    locking/lock_events: Use this_cpu_add() when necessary
    KVM: x86: fix return value for reserved EFER
    tools/kvm_stat: fix fields filter for child events
    KVM: selftests: Wrap vcpu_nested_state_get/set functions with x86 guard
    kvm: selftests: aarch64: compile with warnings on
    kvm: selftests: aarch64: fix default vm mode
    kvm: selftests: aarch64: dirty_log_test: fix unaligned memslot size
    KVM: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION
    KVM: x86/pmu: do not mask the value that is written to fixed PMUs
    KVM: x86/pmu: mask the result of rdpmc according to the width of the counters
    x86/kvm/pmu: Set AMD's virt PMU version to 1
    KVM: x86: do not spam dmesg with VMCS/VMCB dumps
    kvm: Check irqchip mode before assign irqfd
    kvm: svm/avic: fix off-by-one in checking host APIC ID
    KVM: selftests: do not blindly clobber registers in guest asm
    KVM: selftests: Remove duplicated TEST_ASSERT in hyperv_cpuid.c
    ...

    Mauro Carvalho Chehab
     

23 May, 2019

1 commit

  • Embedded systems often connect to sensors or other multimedia
    subdevices directly. Currently, to be able to select such a
    subdevice (e.g. CONFIG_VIDEO_OV5640) disabling of the auto-
    select config option is needed (CONFIG_MEDIA_SUBDRV_AUTOSELECT).

    This is inconvenient as the ancillary drivers for a particular
    device then need to be selected manually.

    Allow to select drivers manually while keeping the auto-select
    feature in case EXPERT (selected by EMBEDDED) is enabled.

    Signed-off-by: Stefan Agner
    Signed-off-by: Mauro Carvalho Chehab

    Stefan Agner
     

21 May, 2019

1 commit


18 May, 2019

2 commits

  • Currently, the Kbuild core manipulates header search paths in a crazy
    way [1].

    To fix this mess, I want all Makefiles to add explicit $(srctree)/ to
    the search paths in the srctree. Some Makefiles are already written in
    that way, but not all. The goal of this work is to make the notation
    consistent, and finally get rid of the gross hacks.

    Having whitespaces after -I does not matter since commit 48f6e3cf5bc6
    ("kbuild: do not drop -I without parameter").

    [1]: https://patchwork.kernel.org/patch/9632347/

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Sakari Ailus

    Masahiro Yamada
     
  • I was able to build without these extra header search paths.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

20 Mar, 2019

1 commit


17 Jan, 2019

1 commit

  • There are two return paths that do not kfree dvb_spi. Fix the memory
    leaks by returning via the exit label fail_adapter that will free
    dvi_spi.

    Detected by CoverityScan, CID#1475991 ("Resource Leak")

    Fixes: cb496cd472af ("media: cxd2880-spi: Add optional vcc regulator")

    Signed-off-by: Colin Ian King
    Acked-by: Yasunari Takiguchi ?
    Signed-off-by: Sean Young
    Signed-off-by: Mauro Carvalho Chehab

    Colin Ian King
     

04 Dec, 2018

2 commits

  • This patchset adds an optional VCC regulator to the driver probe function
    to make sure power is enabled to the module before starting attaching to
    the device.

    Signed-off-by: Neil Armstrong
    Acked-by: Yasunari Takiguchi
    Signed-off-by: Sean Young
    Signed-off-by: Mauro Carvalho Chehab

    Neil Armstrong
     
  • When dvb_attach fails, probe returns 0, and remove crashes afterwards.
    This patch sets the return value to -ENODEV when attach fails.

    Fixes: bd24fcddf6b8 ("media: cxd2880-spi: Add support for CXD2880 SPI interface")

    Signed-off-by: Neil Armstrong
    Acked-by: Yasunari Takiguchi
    Signed-off-by: Sean Young
    Signed-off-by: Mauro Carvalho Chehab

    Neil Armstrong
     

05 May, 2018

1 commit


04 May, 2018

1 commit

  • The -Warray-bounds warning in gcc-8 triggers for a newly added file:

    drivers/media/spi/cxd2880-spi.c: In function 'cxd2880_write_reg':
    drivers/media/spi/cxd2880-spi.c:111:3: error: 'memcpy' forming offset [133, 258] is out of the bounds [0, 132] of object 'send_data' with type 'u8[132]' {aka 'unsigned char[132]'} [-Werror=array-bounds]

    The problem appears to be that we have two range checks in this function,
    first comparing against BURST_WRITE_MAX (128) and then comparing against
    a literal '255'. The logic checking the buffer size looks at the second
    one and decides that this might be the actual maximum data length.

    This is understandable behavior from the compiler, but the code is actually
    safe. Since the first check is already shorter, we can remove the loop
    and only leave that. To be on the safe side in case BURST_WRITE_MAX might
    be increased, I'm leaving the check against U8_MAX.

    Fixes: bd24fcddf6b8 ("media: cxd2880-spi: Add support for CXD2880 SPI interface")

    Cc: Martin Sebor
    Signed-off-by: Arnd Bergmann
    Reviewed-by: Yasunari Takiguchi
    Signed-off-by: Mauro Carvalho Chehab

    Arnd Bergmann
     

07 Mar, 2018

3 commits


25 Oct, 2016

2 commits


20 Sep, 2016

3 commits

  • WARNING: line over 80 characters
    + GS_HEIGHT_MAX, GS_PIXELCLOCK_MIN, GS_PIXELCLOCK_MAX,

    WARNING: line over 80 characters
    + if (v4l2_match_dv_timings(timings, ®_fmt[i].format, 0, false))

    WARNING: Block comments use a trailing */ on a separate line
    + * which looks like a video signal activity.*/

    WARNING: else is not generally useful after a break or return
    + return gs_write_register(gs->pdev, REG_FORCE_FMT, reg_value);
    + } else {

    WARNING: Block comments use a trailing */ on a separate line
    + * which looks like a video signal activity.*/

    ERROR: spaces required around that '=' (ctx:VxW)
    + .enum_dv_timings= gs_enum_dv_timings,
    ^

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • The SPI driver looked a bit lonely in the config menu, and it didn't
    support the autoselect. Shift things around a bit so it looks more logical.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • You can read datasheet here:
    http://www.c-dis.net/media/871/GS1662_Datasheet.pdf

    It's a component which supports HD and SD CEA or SDI formats
    to SDI output. It's configured through SPI bus.

    GS1662 driver is implemented as v4l2 subdev.

    Signed-off-by: Charles-Antoine Couret
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Charles-Antoine Couret