08 Mar, 2020

1 commit

  • Merge Linux stable release v5.4.24 into imx_5.4.y

    * tag 'v5.4.24': (3306 commits)
    Linux 5.4.24
    blktrace: Protect q->blk_trace with RCU
    kvm: nVMX: VMWRITE checks unsupported field before read-only field
    ...

    Signed-off-by: Jason Liu

    Conflicts:
    arch/arm/boot/dts/imx6sll-evk.dts
    arch/arm/boot/dts/imx7ulp.dtsi
    arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
    drivers/clk/imx/clk-composite-8m.c
    drivers/gpio/gpio-mxc.c
    drivers/irqchip/Kconfig
    drivers/mmc/host/sdhci-of-esdhc.c
    drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
    drivers/net/can/flexcan.c
    drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
    drivers/net/ethernet/mscc/ocelot.c
    drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
    drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
    drivers/net/phy/realtek.c
    drivers/pci/controller/mobiveil/pcie-mobiveil-host.c
    drivers/perf/fsl_imx8_ddr_perf.c
    drivers/tee/optee/shm_pool.c
    drivers/usb/cdns3/gadget.c
    kernel/sched/cpufreq.c
    net/core/xdp.c
    sound/soc/fsl/fsl_esai.c
    sound/soc/fsl/fsl_sai.c
    sound/soc/sof/core.c
    sound/soc/sof/imx/Kconfig
    sound/soc/sof/loader.c

    Jason Liu
     

24 Feb, 2020

1 commit

  • [ Upstream commit afb34781620274236bd9fc9246e22f6963ef5262 ]

    When building with Clang + -Wtautological-constant-compare, several of
    the ivtv and cx18 drivers warn along the lines of:

    drivers/media/pci/cx18/cx18-driver.c:1005:21: warning: converting the
    result of '<<< 6)
    ^
    1 warning generated.

    This warning happens because the shift operation is implicitly converted
    to a boolean in v4l2_device_mask_call_all before being negated. This can
    be solved by just comparing the mask result to 0 explicitly so that
    there is no boolean conversion. The ultimate goal is to enable
    -Wtautological-compare globally because there are several subwarnings
    that would be helpful to have.

    For visual consistency and avoidance of these warnings in the future,
    all of the implicitly boolean conversions in the v4l2_device macros
    are converted to explicit ones as well.

    Link: https://github.com/ClangBuiltLinux/linux/issues/752

    Reviewed-by: Ezequiel Garcia
    Reviewed-by: Nick Desaulniers
    Signed-off-by: Nathan Chancellor
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Sasha Levin

    Nathan Chancellor
     

11 Feb, 2020

1 commit

  • commit f51e50db4c20d46930b33be3f208851265694f3e upstream.

    boundary->width and boundary->height are sizes relative to
    boundary->left and boundary->top coordinates, but they were not being
    taken into consideration to adjust r->left and r->top, leading to the
    following error:

    Consider the follow as initial values for boundary and r:

    struct v4l2_rect boundary = {
    .left = 100,
    .top = 100,
    .width = 800,
    .height = 600,
    }

    struct v4l2_rect r = {
    .left = 0,
    .top = 0,
    .width = 1920,
    .height = 960,
    }

    calling v4l2_rect_map_inside(&r, &boundary) was modifying r to:

    r = {
    .left = 0,
    .top = 0,
    .width = 800,
    .height = 600,
    }

    Which is wrongly outside the boundary rectangle, because:

    v4l2_rect_set_max_size(r, boundary); // r->width = 800, r->height = 600
    ...
    if (r->left + r->width > boundary->width) // true
    r->left = boundary->width - r->width; // r->left = 800 - 800
    if (r->top + r->height > boundary->height) // true
    r->top = boundary->height - r->height; // r->height = 600 - 600

    Fix this by considering top/left coordinates from boundary.

    Fixes: ac49de8c49d7 ("[media] v4l2-rect.h: new header with struct v4l2_rect helper functions")
    Signed-off-by: Helen Koike
    Cc: # for v4.7 and up
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Greg Kroah-Hartman

    Helen Koike
     

01 Feb, 2020

1 commit

  • [ Upstream commit 14494583336880640654300c76d0f5df3360d85f ]

    Adds USB ID for the eyeTV Geniatech T2 lite to the dvbsky driver.
    This is a Geniatech T230C based stick without IR and a different USB ID.

    Signed-off-by: Thomas Voegtle
    Tested-by: Jan Pieter van Woerkom
    Signed-off-by: Sean Young
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Sasha Levin

    Thomas Voegtle
     

25 Nov, 2019

2 commits


26 Aug, 2019

4 commits


22 Aug, 2019

7 commits


20 Aug, 2019

4 commits

  • Those lists can be extracted from the dpb, let's simplify userspace
    life and build that list kernel-side (generic helpers will be provided
    for drivers that need this list).

    Signed-off-by: Boris Brezillon
    Reviewed-by: Nicolas Dufresne
    Reviewed-by: Ezequiel Garcia
    Reviewed-by: Paul Kocialkowski
    Tested-by: Philipp Zabel
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Boris Brezillon
     
  • Stateless decoders have different expectations about the
    start code that is prepended on H264 slices. Add a
    menu control to express the supported start code types
    (including no start code).

    Drivers are allowed to support only one start code type,
    but they can support both too.

    Note that this is independent of the H264 decoding mode,
    which specifies the granularity of the decoding operations.
    Either in frame-based or slice-based mode, this new control
    will allow to define the start code expected on H264 slices.

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

    Ezequiel Garcia
     
  • Some stateless decoders don't support per-slice decoding granularity
    (or at least not in a way that would make them efficient or easy to use).

    Expose a menu to control the supported decoding modes. Drivers are
    allowed to support only one decoding but they can support both too.

    To fully specify the decoding operation, we need to introduce
    a start_byte_offset, to indicate where slices start.

    Signed-off-by: Boris Brezillon
    Reviewed-by: Paul Kocialkowski
    Tested-by: Philipp Zabel
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Boris Brezillon
     
  • The V4L2_PIX_FMT_H264_SLICE_RAW name was originally suggested
    because the pixel format would represent H264 slices without any
    start code.

    However, as we will now introduce a start code menu control,
    give the pixel format a more meaningful name, while it's
    still early enough to do so.

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

    Ezequiel Garcia
     

14 Aug, 2019

2 commits


25 Jul, 2019

4 commits


23 Jul, 2019

7 commits

  • Today's linux-next build (x86_64 allmodconfig) failed like this:

    include/media/vp8-ctrls.h:25:2: error: unknown type name '__s8'
    __s8 quant_update[4];
    ^~~~
    ...
    include/media/vp8-ctrls.h:107:2: error: unknown type name '__u64'
    __u64 flags;
    ^~~~~

    Caused by commit a57d6acaf352 ("media: uapi: Add VP8 stateless decoder API")

    Fixes: a57d6acaf352 ("media: uapi: Add VP8 stateless decoder API")
    Signed-off-by: Stephen Rothwell
    Signed-off-by: Mauro Carvalho Chehab

    Stephen Rothwell
     
  • Adds support for the "Mygica T230C v2" to the dvbsky driver.

    Signed-off-by: Jan Pieter van Woerkom
    Tested-by: Frank Rysanek
    Signed-off-by: Sean Young
    Signed-off-by: Mauro Carvalho Chehab

    Jan Pieter van Woerkom
     
  • This lists all the protocols that the kernel knows about, however there
    are no users.

    Signed-off-by: Sean Young
    Signed-off-by: Mauro Carvalho Chehab

    Sean Young
     
  • Add the parsed VP8 frame pixel format and controls, to be used
    with the new stateless decoder API for VP8 to provide parameters
    for accelerator (aka stateless) codecs.

    Reviewed-by: Tomasz Figa
    Reviewed-by: Boris Brezillon
    Reviewed-by: Nicolas Dufresne
    Signed-off-by: Pawel Osciak
    Signed-off-by: Ezequiel Garcia
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Pawel Osciak
     
  • The V4L2 core sets the format description and flags for the driver in order
    to ensure consistent naming.

    So drop the strscpy of the description in drivers. Also remove any
    description strings in driver-internal structures since those are
    no longer needed.

    And in am437x-vpfe.c drop an unnecessary f->type assignment in
    vpfe_enum_fmt().

    Signed-off-by: Hans Verkuil
    Acked-by: Benoit Parrot
    Reviewed-by: Laurent Pinchart
    [hverkuil-cisco@xs4all.nl: addressed some small suggestions from Laurent]
    Acked-by: Lad, Prabhakar
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • The V4L2 core sets the format description and flags for the driver in order
    to ensure consistent naming.

    So drop the strscpy of the description in drivers. Also remove any
    description strings in driver-internal structures since those are
    no longer needed.

    Note that bcm2835-camera.c: the formats array still stores the flags
    field for compressed formats since that information is used elsewhere
    in the driver. But enum_fmt doesn't use it anymore, since the core
    will set the COMPRESSED flag correctly.

    Signed-off-by: Hans Verkuil
    Reviewed-by: Laurent Pinchart
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • The V4L2 core sets the description for the driver in order to ensure
    consistent naming.

    So drop the strscpy of the description in drivers. Also remove any
    description strings in driver-internal structures since those are
    no longer needed.

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

    Hans Verkuil
     

10 Jul, 2019

1 commit

  • Pull media updates from Mauro Carvalho Chehab:

    - new Atmel microship ISC driver

    - coda has gained support for mpeg2 and mpeg4

    - cxusb gained support for analog TV

    - rockchip staging driver was split into two separate staging drivers

    - added a new staging driver for Allegro DVT video IP core

    - added a new staging driver for Amlogic Meson video decoder

    - lots of improvements and cleanups

    * tag 'media/v5.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (398 commits)
    media: allegro: use new v4l2_m2m_ioctl_try_encoder_cmd funcs
    media: doc-rst: Fix typos
    media: radio-raremono: change devm_k*alloc to k*alloc
    media: stv0297: fix frequency range limit
    media: rc: Prefer KEY_NUMERIC_* for number buttons on remotes
    media: dvb_frontend: split dvb_frontend_handle_ioctl function
    media: mceusb: disable "nonsensical irdata" messages
    media: rc: remove redundant dev_err message
    media: cec-notifier: add new notifier functions
    media: cec: add struct cec_connector_info support
    media: cec-notifier: rename variables, check kstrdup and n->conn_name
    media: MAINTAINERS: Add maintainers for Media Controller
    media: staging: media: tegra-vde: Defer dmabuf's unmapping
    media: staging: media: tegra-vde: Add IOMMU support
    media: hdpvr: fix locking and a missing msleep
    media: v4l2: Test type instead of cfg->type in v4l2_ctrl_new_custom()
    media: atmel: atmel-isc: fix i386 build error
    media: v4l2-ctrl: Move compound control initialization
    media: hantro: Use vb2_get_buffer
    media: pci: cx88: Change the type of 'missed' to u64
    ...

    Linus Torvalds
     

27 Jun, 2019

2 commits

  • In order to support multiple CEC devices for an HDMI connector,
    and to support cec_connector_info, drivers should use either a
    cec_notifier_conn_(un)register pair of functions (HDMI drivers)
    or a cec_notifier_cec_adap_(un)register pair (CEC adapter drivers).

    This replaces cec_notifier_get_conn/cec_notifier_put.

    For CEC adapters it is also no longer needed to call cec_notifier_register,
    cec_register_cec_notifier and cec_notifier_unregister. This is now
    all handled internally by the new functions.

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

    Hans Verkuil
     
  • Define struct cec_connector_info in media/cec.h and define
    CEC_CAP_CONNECTOR_INFO. In a later patch this will be moved to
    uapi/linux/cec.h.

    The CEC_CAP_CONNECTOR_INFO capability can be set by drivers, but
    cec_allocate_adapter() will remove it again until the public API
    for this can be enabled once all drm drivers wire this up correctly.

    Also add the cec_fill_conn_info_from_drm and cec_s_conn_info functions,
    which are needed by drm drivers to fill in the cec_connector info
    based on a drm_connector.

    The cec_notifier_(un)register and cec_register_cec_notifier
    prototypes were moved from cec-notifier.h to cec.h since cec.h no longer
    includes cec-notifier.h. These headers included each other before,
    which caused various problems.

    Due to these changes the seco-cec driver was changed as well: it
    should include cec-notifier.h, not cec.h.

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

    Dariusz Marcinkiewicz
     

25 Jun, 2019

1 commit

  • Correctness of format type (try or active) and pad number parameters
    passed to subdevice operation callbacks is now verified only for IOCTL
    calls. However, those callbacks are also used by drivers, e.g., V4L2
    host interfaces.

    Since both subdev_do_ioctl() and drivers are using v4l2_subdev_call()
    macro while calling subdevice operations, move those parameter checks
    from subdev_do_ioctl() to v4l2_subdev_call() so we can avoid taking care
    of those checks inside drivers.

    Define a wrapper function for each operation callback in scope, then
    gather those wrappers in a static v4l2_subdev_ops structure so the
    v4l2_subdev_call() macro can find them easy if provided.

    Signed-off-by: Janusz Krzysztofik
    Reviewed-by: Sakari Ailus
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Janusz Krzysztofik
     

22 Jun, 2019

1 commit

  • Some drivers need to access a vb2 buffer from its
    queue index. Introduce an accessor to abstract this,
    and avoid drivers from accessing private members.

    Reviewed-by: Boris Brezillon
    Signed-off-by: Ezequiel Garcia
    Acked-by: Marek Szyprowski
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Ezequiel Garcia
     

19 Jun, 2019

1 commit

  • Based on 2 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 version 2 as
    published by the free software foundation

    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 #

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

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

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

    Thomas Gleixner