11 May, 2017

1 commit

  • Pull hw lockdown support from David Howells:
    "Annotation of module parameters that configure hardware resources
    including ioports, iomem addresses, irq lines and dma channels.

    This allows a future patch to prohibit the use of such module
    parameters to prevent that hardware from being abused to gain access
    to the running kernel image as part of locking the kernel down under
    UEFI secure boot conditions.

    Annotations are made by changing:

    module_param(n, t, p)
    module_param_named(n, v, t, p)
    module_param_array(n, t, m, p)

    to:

    module_param_hw(n, t, hwtype, p)
    module_param_hw_named(n, v, t, hwtype, p)
    module_param_hw_array(n, t, hwtype, m, p)

    where the module parameter refers to a hardware setting

    hwtype specifies the type of the resource being configured. This can
    be one of:

    ioport Module parameter configures an I/O port
    iomem Module parameter configures an I/O mem address
    ioport_or_iomem Module parameter could be either (runtime set)
    irq Module parameter configures an I/O port
    dma Module parameter configures a DMA channel
    dma_addr Module parameter configures a DMA buffer address
    other Module parameter configures some other value

    Note that the hwtype is compile checked, but not currently stored (the
    lockdown code probably won't require it). It is, however, there for
    future use.

    A bonus is that the hwtype can also be used for grepping.

    The intention is for the kernel to ignore or reject attempts to set
    annotated module parameters if lockdown is enabled. This applies to
    options passed on the boot command line, passed to insmod/modprobe or
    direct twiddling in /sys/module/ parameter files.

    The module initialisation then needs to handle the parameter not being
    set, by (1) giving an error, (2) probing for a value or (3) using a
    reasonable default.

    What I can't do is just reject a module out of hand because it may
    take a hardware setting in the module parameters. Some important
    modules, some ipmi stuff for instance, both probe for hardware and
    allow hardware to be manually specified; if the driver is aborts with
    any error, you don't get any ipmi hardware.

    Further, trying to do this entirely in the module initialisation code
    doesn't protect against sysfs twiddling.

    [!] Note that in and of itself, this series of patches should have no
    effect on the the size of the kernel or code execution - that is
    left to a patch in the next series to effect. It does mark
    annotated kernel parameters with a KERNEL_PARAM_FL_HWPARAM flag in
    an already existing field"

    * tag 'hwparam-20170420' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs: (38 commits)
    Annotate hardware config module parameters in sound/pci/
    Annotate hardware config module parameters in sound/oss/
    Annotate hardware config module parameters in sound/isa/
    Annotate hardware config module parameters in sound/drivers/
    Annotate hardware config module parameters in fs/pstore/
    Annotate hardware config module parameters in drivers/watchdog/
    Annotate hardware config module parameters in drivers/video/
    Annotate hardware config module parameters in drivers/tty/
    Annotate hardware config module parameters in drivers/staging/vme/
    Annotate hardware config module parameters in drivers/staging/speakup/
    Annotate hardware config module parameters in drivers/staging/media/
    Annotate hardware config module parameters in drivers/scsi/
    Annotate hardware config module parameters in drivers/pcmcia/
    Annotate hardware config module parameters in drivers/pci/hotplug/
    Annotate hardware config module parameters in drivers/parport/
    Annotate hardware config module parameters in drivers/net/wireless/
    Annotate hardware config module parameters in drivers/net/wan/
    Annotate hardware config module parameters in drivers/net/irda/
    Annotate hardware config module parameters in drivers/net/hamradio/
    Annotate hardware config module parameters in drivers/net/ethernet/
    ...

    Linus Torvalds
     

10 May, 2017

1 commit

  • Pull IOMMU updates from Joerg Roedel:

    - code optimizations for the Intel VT-d driver

    - ability to switch off a previously enabled Intel IOMMU

    - support for 'struct iommu_device' for OMAP, Rockchip and Mediatek
    IOMMUs

    - header optimizations for IOMMU core code headers and a few fixes that
    became necessary in other parts of the kernel because of that

    - ACPI/IORT updates and fixes

    - Exynos IOMMU optimizations

    - updates for the IOMMU dma-api code to bring it closer to use per-cpu
    iova caches

    - new command-line option to set default domain type allocated by the
    iommu core code

    - another command line option to allow the Intel IOMMU switched off in
    a tboot environment

    - ARM/SMMU: TLB sync optimisations for SMMUv2, Support for using an
    IDENTITY domain in conjunction with DMA ops, Support for SMR masking,
    Support for 16-bit ASIDs (was previously broken)

    - various other small fixes and improvements

    * tag 'iommu-updates-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (63 commits)
    soc/qbman: Move dma-mapping.h include to qman_priv.h
    soc/qbman: Fix implicit header dependency now causing build fails
    iommu: Remove trace-events include from iommu.h
    iommu: Remove pci.h include from trace/events/iommu.h
    arm: dma-mapping: Don't override dma_ops in arch_setup_dma_ops()
    ACPI/IORT: Fix CONFIG_IOMMU_API dependency
    iommu/vt-d: Don't print the failure message when booting non-kdump kernel
    iommu: Move report_iommu_fault() to iommu.c
    iommu: Include device.h in iommu.h
    x86, iommu/vt-d: Add an option to disable Intel IOMMU force on
    iommu/arm-smmu: Return IOVA in iova_to_phys when SMMU is bypassed
    iommu/arm-smmu: Correct sid to mask
    iommu/amd: Fix incorrect error handling in amd_iommu_bind_pasid()
    iommu: Make iommu_bus_notifier return NOTIFY_DONE rather than error code
    omap3isp: Remove iommu_group related code
    iommu/omap: Add iommu-group support
    iommu/omap: Make use of 'struct iommu_device'
    iommu/omap: Store iommu_dev pointer in arch_data
    iommu/omap: Move data structures to omap-iommu.h
    iommu/omap: Drop legacy-style device support
    ...

    Linus Torvalds
     

09 May, 2017

1 commit


06 May, 2017

2 commits

  • Pull staging/IIO updates from Greg KH:
    "Here is the big staging tree update for 4.12-rc1.

    It's a big one, adding about 350k new lines of crap^Wcode, mostly all
    in a big dump of media drivers from Intel. But there's other new
    drivers in here as well, yet-another-wifi driver, new IIO drivers, and
    a new crypto accelerator.

    We also deleted a bunch of stuff, mostly in patch cleanups, but also
    the Android ION code has shrunk a lot, and the Android low memory
    killer driver was finally deleted, much to the celebration of the -mm
    developers.

    All of these have been in linux-next with a few build issues that will
    show up when you merge to your tree"

    Merge conflicts in the new rtl8723bs driver (due to the wifi changes
    this merge window) handled as per linux-next, courtesy of Stephen
    Rothwell.

    * tag 'staging-4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1182 commits)
    staging: fsl-mc/dpio: add cpu LE conversion for dpaa2_fd
    staging: ks7010: remove line continuations in quoted strings
    staging: vt6656: use tabs instead of spaces
    staging: android: ion: Fix unnecessary initialization of static variable
    staging: media: atomisp: fix range checking on clk_num
    staging: media: atomisp: fix misspelled word in comment
    staging: media: atomisp: kmap() can't fail
    staging: atomisp: remove #ifdef for runtime PM functions
    staging: atomisp: satm include directory is gone
    atomisp: remove some more unused files
    atomisp: remove hmm_load/store/clear indirections
    atomisp: kill off mmgr_free
    atomisp: clean up the hmm init/cleanup indirections
    atomisp: handle allocation calls before init in the hmm layer
    staging: fsl-dpaa2/eth: Add maintainer for Ethernet driver
    staging: fsl-dpaa2/eth: Add TODO file
    staging: fsl-dpaa2/eth: Add trace points
    staging: fsl-dpaa2/eth: Add driver specific stats
    staging: fsl-dpaa2/eth: Add ethtool support
    staging: fsl-dpaa2/eth: Add Freescale DPAA2 Ethernet driver
    ...

    Linus Torvalds
     
  • Pull media updates from Mauro Carvalho Chehab:
    "Media updates for v4.12-rc1:

    - new driver to support mediatek jpeg in hardware codec

    - rc-lirc, s5p-cec and st-cec staging drivers got promoted

    - hardware histogram support for vsp1 driver

    - added Virtual Media Controller driver, to make easier to test the
    media controller

    - added a new CEC driver (rainshadow-cec)

    - removed two staging LIRC drivers for obscure hardware that are too
    obsolete

    - added support for Intel SR300 Depth camera

    - some improvements at CEC and RC core

    - lots of driver cleanups, improvements all over the tree

    With this series, we're finally getting rid of the LIRC staging
    driver. There's just one left (lirc_zilog), with require more care,
    as part of its functionality (IR RX) is already provided by another
    driver. Work in progress to convert it on the proper way"

    * tag 'media/v4.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (304 commits)
    [media] ov2640: print error if devm_*_optional*() fails
    [media] atmel-isc: Fix the static checker warning
    [media] ov2640: add support for MEDIA_BUS_FMT_YVYU8_2X8 and MEDIA_BUS_FMT_VYUY8_2X8
    [media] ov2640: fix vflip control
    [media] ov2640: fix duplicate width+height returning from ov2640_select_win()
    [media] ov2640: add missing write to size change preamble
    [media] ov2640: add information about DSP register 0xc7
    [media] ov2640: improve banding filter register definitions/documentation
    [media] ov2640: fix init sequence alignment
    [media] ov2640: make GPIOLIB an optional dependency
    [media] xc5000: fix spelling mistake: "calibration"
    [media] vidioc-queryctrl.rst: fix menu/int menu references
    [media] media-entity: only call dev_dbg_obj if mdev is not NULL
    [media] pixfmt-meta-vsp1-hgo.rst: remove spurious '-'
    [media] mtk-vcodec: avoid warnings because of empty macros
    [media] coda: bump maximum number of internal framebuffers to 17
    [media] media: mtk-vcodec: remove informative log
    [media] subdev-formats.rst: remove spurious '-'
    [media] dw2102: limit messages to buffer size
    [media] ttusb2: limit messages to buffer size
    ...

    Linus Torvalds
     

05 May, 2017

2 commits

  • Pull char/misc driver updates from Greg KH:
    "Here is the big set of new char/misc driver drivers and features for
    4.12-rc1.

    There's lots of new drivers added this time around, new firmware
    drivers from Google, more auxdisplay drivers, extcon drivers, fpga
    drivers, and a bunch of other driver updates. Nothing major, except if
    you happen to have the hardware for these drivers, and then you will
    be happy :)

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'char-misc-4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (136 commits)
    firmware: google memconsole: Fix return value check in platform_memconsole_init()
    firmware: Google VPD: Fix return value check in vpd_platform_init()
    goldfish_pipe: fix build warning about using too much stack.
    goldfish_pipe: An implementation of more parallel pipe
    fpga fr br: update supported version numbers
    fpga: region: release FPGA region reference in error path
    fpga altera-hps2fpga: disable/unprepare clock on error in alt_fpga_bridge_probe()
    mei: drop the TODO from samples
    firmware: Google VPD sysfs driver
    firmware: Google VPD: import lib_vpd source files
    misc: lkdtm: Add volatile to intentional NULL pointer reference
    eeprom: idt_89hpesx: Add OF device ID table
    misc: ds1682: Add OF device ID table
    misc: tsl2550: Add OF device ID table
    w1: Remove unneeded use of assert() and remove w1_log.h
    w1: Use kernel common min() implementation
    uio_mf624: Align memory regions to page size and set correct offsets
    uio_mf624: Refactor memory info initialization
    uio: Allow handling of non page-aligned memory regions
    hangcheck-timer: Fix typo in comment
    ...

    Linus Torvalds
     
  • …mu', 'arm/core', 'x86/vt-d', 'x86/amd' and 'core' into next

    Joerg Roedel
     

04 May, 2017

2 commits

  • Pull i2c updates from Wilfram Sang:
    "I2C has the following updates for you:

    - an immutable cross-subsystem branch fixing PMIC access on Intel
    Baytrail

    - bigger driver updates to the designware, meson, exynos5 drivers

    - new i2c_acpi_new_device() function to create devices from ACPI

    - struct i2c_driver has now a flag 'disable_i2c_core_irq_mapping' to
    allow custom IRQ mapping in case the default does not fit

    - mux subsystem centralized error messages in its core

    - new driver for ltc4306 i2c mux

    - usual set of small updates"

    * 'i2c/for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (44 commits)
    i2c: thunderx: Enable HWMON class probing
    i2c: rcar: clarify PM handling with more comments
    i2c: rcar: fix resume by always initializing registers before transfer
    i2c: tegra: fix spelling mistake: "contoller" -> "controller"
    i2c: exynos5: use core helper to get driver data
    i2c: exynos5: de-duplicate error logs on clock setup
    i2c: exynos5: simplify clock frequency handling
    i2c: exynos5: simplify timings calculation
    i2c: designware-baytrail: fix potential null pointer dereference on dev
    i2c: designware: Get selected speed mode sda-hold-time via ACPI
    [media] cx231xx: stop double error reporting
    i2c: core: Allow drivers to disable i2c-core irq mapping
    i2c: core: Add new i2c_acpi_new_device helper function
    i2c: core: Allow getting ACPI info by index
    i2c: img-scb: use setup_timer
    i2c: i2c-scmi: add a MS HID
    i2c: mux: ltc4306: LTC4306 and LTC4305 I2C multiplexer/switch
    dt-bindings: i2c: mux: ltc4306: Add dt-bindings for I2C multiplexer/switch
    i2c: mux: reg: stop double error reporting
    i2c: mux: pinctrl: stop double error reporting
    ...

    Linus Torvalds
     
  • Pull drm u pdates from Dave Airlie:
    "This is the main drm pull request for v4.12. Apart from two fixes
    pulls, everything should have been in drm-next for at least 2 weeks.

    The biggest thing in here is AMD released the public headers for their
    upcoming VEGA GPUs. These as always are quite a sizeable chunk of
    header files. They've also added initial non-display support for those
    GPUs, though they aren't available in production yet.

    Otherwise it's pretty much normal.

    New bridge drivers:
    - megachips-stdpxxxx-ge-b850v3-fw LVDS->DP++
    - generic LVDS bridge support.

    Core:
    - Displayport link train failure reporting to userspace
    - debugfs interface cleaned up
    - subsystem TODO in kerneldoc now
    - Extended fbdev support (flipping and vblank wait)
    - drm_platform removed
    - EDP CRC support in helper
    - HF-VSDB SCDC support in EDID parser
    - Lots of code cleanups and header extraction
    - Thunderbolt external GPU awareness
    - Atomic helper improvements
    - Documentation improvements

    panel:
    - Sitronix and Samsung new panel support

    amdgpu:
    - Preliminary vega10 support
    - Multi-level page table support
    - GPU sensor support for userspace
    - PRT support for sparse buffers
    - SR-IOV improvements
    - Non-contig VRAM CPU mapping

    i915:
    - Atomic modesetting enabled by default on Gen5+
    - LSPCON improvements
    - Atomic state handling for cdclk
    - GPU reset improvements
    - In-kernel unit tests
    - Geminilake improvements and color manager support
    - Designware i2c fixes
    - vblank evasion improvements
    - Hotplug safe connector iterators
    - GVT scheduler QoS support
    - GVT Kabylake support

    nouveau:
    - Acceleration support for Pascal (GP10x).
    - Rearchitecture of code handling proprietary signed firmware
    - Fix GTX 970 with odd MMU configuration
    - GP10B support
    - GP107 acceleration support

    vmwgfx:
    - Atomic modesetting support for vmwgfx

    omapdrm:
    - Support for render nodes
    - Refactor omapdss code
    - Fix some probe ordering issues
    - Fix too dark RGB565 rendering

    sunxi:
    - prelim rework for multiple pipes.

    mali-dp:
    - Color management support
    - Plane scaling
    - Power management improvements

    imx-drm:
    - Prefetch Resolve Engine/Gasket on i.MX6QP
    - Deferred plane disabling
    - Separate alpha support

    mediatek:
    - Mediatek SoC MT2701 support

    rcar-du:
    - Gen3 HDMI support

    msm:
    - 4k support for newer chips
    - OPP bindings for gpu
    - prep work for per-process pagetables

    vc4:
    - HDMI audio support
    - fixes

    qxl:
    - minor fixes.

    dw-hdmi:
    - PHY improvements
    - CSC fixes
    - Amlogic GX SoC support"

    * tag 'drm-for-v4.12' of git://people.freedesktop.org/~airlied/linux: (1778 commits)
    drm/nouveau/fb/gf100-: Fix 32 bit wraparound in new ram detection
    drm/nouveau/secboot/gm20b: fix the error return code in gm20b_secboot_tegra_read_wpr()
    drm/nouveau/kms: Increase max retries in scanout position queries.
    drm/nouveau/bios/bitP: check that table is long enough for optional pointers
    drm/nouveau/fifo/nv40: no ctxsw for pre-nv44 mpeg engine
    drm: mali-dp: use div_u64 for expensive 64-bit divisions
    drm/i915: Confirm the request is still active before adding it to the await
    drm/i915: Avoid busy-spinning on VLV_GLTC_PW_STATUS mmio
    drm/i915/selftests: Allocate inode/file dynamically
    drm/i915: Fix system hang with EI UP masked on Haswell
    drm/i915: checking for NULL instead of IS_ERR() in mock selftests
    drm/i915: Perform link quality check unconditionally during long pulse
    drm/i915: Fix use after free in lpe_audio_platdev_destroy()
    drm/i915: Use the right mapping_gfp_mask for final shmem allocation
    drm/i915: Make legacy cursor updates more unsynced
    drm/i915: Apply a cond_resched() to the saturated signaler
    drm/i915: Park the signaler before sleeping
    drm: mali-dp: Check the mclk rate and allow up/down scaling
    drm: mali-dp: Enable image enhancement when scaling
    drm: mali-dp: Add plane upscaling support
    ...

    Linus Torvalds
     

03 May, 2017

2 commits

  • Pull trivial tree updates from Jiri Kosina.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
    tty: fix comment for __tty_alloc_driver()
    init/main: properly align the multi-line comment
    init/main: Fix double "the" in comment
    Fix dead URLs to ftp.kernel.org
    drivers: Clean up duplicated email address
    treewide: Fix typo in xml/driver-api/basics.xml
    tools/testing/selftests/powerpc: remove redundant CFLAGS in Makefile: "-Wall -O2 -Wall" -> "-O2 -Wall"
    selftests/timers: Spelling s/privledges/privileges/
    HID: picoLCD: Spelling s/REPORT_WRTIE_MEMORY/REPORT_WRITE_MEMORY/
    net: phy: dp83848: Fix Typo
    UBI: Fix typos
    Documentation: ftrace.txt: Correct nice value of 120 priority
    net: fec: Fix typo in error msg and comment
    treewide: Fix typos in printk

    Linus Torvalds
     
  • Pull documentation update from Jonathan Corbet:
    "A reasonably busy cycle for documentation this time around. There is a
    new guide for user-space API documents, rather sparsely populated at
    the moment, but it's a start. Markus improved the infrastructure for
    converting diagrams. Mauro has converted much of the USB documentation
    over to RST. Plus the usual set of fixes, improvements, and tweaks.

    There's a bit more than the usual amount of reaching out of
    Documentation/ to fix comments elsewhere in the tree; I have acks for
    those where I could get them"

    * tag 'docs-4.12' of git://git.lwn.net/linux: (74 commits)
    docs: Fix a couple typos
    docs: Fix a spelling error in vfio-mediated-device.txt
    docs: Fix a spelling error in ioctl-number.txt
    MAINTAINERS: update file entry for HSI subsystem
    Documentation: allow installing man pages to a user defined directory
    Doc/PM: Sync with intel_powerclamp code behavior
    zr364xx.rst: usb/devices is now at /sys/kernel/debug/
    usb.rst: move documentation from proc_usb_info.txt to USB ReST book
    convert philips.txt to ReST and add to media docs
    docs-rst: usb: update old usbfs-related documentation
    arm: Documentation: update a path name
    docs: process/4.Coding.rst: Fix a couple of document refs
    docs-rst: fix usb cross-references
    usb: gadget.h: be consistent at kernel doc macros
    usb: composite.h: fix two warnings when building docs
    usb: get rid of some ReST doc build errors
    usb.rst: get rid of some Sphinx errors
    usb/URB.txt: convert to ReST and update it
    usb/persist.txt: convert to ReST and add to driver-api book
    usb/hotplug.txt: convert to ReST and add to driver-api book
    ...

    Linus Torvalds
     

29 Apr, 2017

1 commit


25 Apr, 2017

1 commit


21 Apr, 2017

1 commit


20 Apr, 2017

3 commits

  • The OMAP IOMMU driver has added the support for IOMMU groups internally,
    and the ISP device is automatically linked to the appropriate IOMMU group.
    So, remove the explicit function calls that creates/deletes an iommu_group
    and adds the ISP device to this group.

    Cc: Laurent Pinchart
    Signed-off-by: Suman Anna
    Signed-off-by: Joerg Roedel

    Suman Anna
     
  • When the kernel is running in secure boot mode, we lock down the kernel to
    prevent userspace from modifying the running kernel image. Whilst this
    includes prohibiting access to things like /dev/mem, it must also prevent
    access by means of configuring driver modules in such a way as to cause a
    device to access or modify the kernel image.

    To this end, annotate module_param* statements that refer to hardware
    configuration and indicate for future reference what type of parameter they
    specify. The parameter parser in the core sees this information and can
    skip such parameters with an error message if the kernel is locked down.
    The module initialisation then runs as normal, but just sees whatever the
    default values for those parameters is.

    Note that we do still need to do the module initialisation because some
    drivers have viable defaults set in case parameters aren't specified and
    some drivers support automatic configuration (e.g. PNP or PCI) in addition
    to manually coded parameters.

    This patch annotates drivers in drivers/media/.

    Suggested-by: Alan Cox
    Signed-off-by: David Howells
    Acked-by: Mauro Carvalho Chehab
    cc: mjpeg-users@lists.sourceforge.net
    cc: linux-media@vger.kernel.org

    David Howells
     
  • Seeing the kunmap_atomic dma_buf_ops share the same name with a macro
    in highmem.h, the former can be aliased if any dma-buf user includes
    that header.

    I'm personally trying to include highmem.h inside scatterlist.h and this
    breaks the dma-buf code proper.

    Christoph Hellwig suggested [1] renaming it and pushing this patch ASAP.

    To maintain consistency I've renamed all four of kmap* and kunmap* to be
    map* and unmap*. (Even though only kmap_atomic presently conflicts.)

    [1] https://www.spinics.net/lists/target-devel/msg15070.html

    Signed-off-by: Logan Gunthorpe
    Reviewed-by: Sinclair Yeh
    Acked-by: Daniel Vetter
    Acked-by: Sumit Semwal
    Signed-off-by: Sumit Semwal
    Link: http://patchwork.freedesktop.org/patch/msgid/1492630570-879-1-git-send-email-logang@deltatee.com

    Logan Gunthorpe
     

19 Apr, 2017

20 commits

  • Initialize the pointer 'fmt' before the start of
    the loop.

    Reported-by: Dan Carpenter
    Signed-off-by: Songjun Wu
    Signed-off-by: Mauro Carvalho Chehab

    Songjun Wu
     
  • Signed-off-by: Frank Schäfer
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • Enabling vflip currently causes wrong colors.
    It seems that (at least with the current sensor setup) REG04_VFLIP_IMG only
    changes the vertical readout direction.
    Because pixels are arranged RGRG... in odd lines and GBGB... in even lines,
    either a one line shift or even/odd line swap is required, too, but
    apparently this doesn't happen.

    I finally figured out that this can be done manually by setting
    REG04_VREF_EN.
    Looking at hflip, it turns out that bit REG04_HREF_EN is set there
    permanetly, but according to my tests has no effect on the pixel readout
    order.
    So my conclusion is that the current documentation of sensor register 0x04
    is wrong (has changed after preliminary datasheet version 2.2).

    I'm pretty sure that automatic vertical line shift/switch can be enabled,
    too, but until anyone finds ot how this works, we have to stick with manual
    switching.

    Signed-off-by: Frank Schäfer
    Cc: stable
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • ov2640_select_win() returns height and width values as part of struct
    ov2640_win_size, so there is no point in modifying the passed height and
    width parameters, too.

    Signed-off-by: Frank Schäfer
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • HSIZE and VSIZE bits 0 to 2 and HSIZE bit 11 are encoded in DSP register
    SIZEL.

    Signed-off-by: Frank Schäfer
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • According to ov2640 software application notes, there are two Automatic
    White Balance (AWB) modes, which are selected by DSP register 0xc7:

    1) Simple AWB: assumes the average color is gray
    + independent from lens
    - doesn't work well if captured area contains unbalanced colors
    (e.g. large blue background)

    2) Advanced AWB: uses color temperature information
    + more accurate, works with all image contents
    - lens specific, requires calibration

    Signed-off-by: Frank Schäfer
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • - add missing initialisation of sensor register COM25 (2 MSBs of banding
    filter AEC values)
    - add macros for setting the banding filter AEC values
    - add definitions for sensor register 0x5a, which is documented in
    Omnivisions software application notes

    Signed-off-by: Frank Schäfer
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • While we are at it, remove a misleading comment (copy/paste mistake)

    Signed-off-by: Frank Schäfer
    Signed-off-by: Mauro Carvalho Chehab

    Frank Schaefer
     
  • As warned by kbuild test robot:
    warning: (VIDEO_EM28XX_V4L2) selects VIDEO_OV2640 which has unmet direct dependencies (MEDIA_SUPPORT && VIDEO_V4L2 && I2C && GPIOLIB && MEDIA_CAMERA_SUPPORT)

    The em28xx driver can use ov2640, but it doesn't depend
    (or use) the GPIOLIB in order to power off/on the sensor.

    So, as we want to allow both usages with and without
    GPIOLIB, make its dependency optional.

    Reported-by: kbuild test robot
    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • Trivial fix to spelling mistake on calibration, make Self lowercase
    and re-join multiple lined printk since checkpatch allows this
    coding style.

    Signed-off-by: Colin Ian King
    Signed-off-by: Mauro Carvalho Chehab

    Colin Ian King
     
  • Fix kernel Oops NULL pointer deference
    Call dev_dbg_obj only after checking if gobj->mdev is not NULL

    Signed-off-by: Helen Koike
    Signed-off-by: Mauro Carvalho Chehab

    Helen Fornazier
     
  • i2c_mux_add_adapter already logs a message on failure.

    Reviewed-by: Wolfram Sang
    Reviewed-by: Mauro Carvalho Chehab
    Signed-off-by: Peter Rosin

    Peter Rosin
     
  • Remove those gcc warnings:

    drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_pm.c: In function 'mtk_vcodec_dec_pw_on':
    drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_pm.c:114:51: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
    mtk_v4l2_err("pm_runtime_get_sync fail %d", ret);
    ^

    By adding braces.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • The h.264 standard allows up to 16 reference frame for the high profile
    and we need one additional internal framebuffer when the VDOA is in use.

    Lift the current maximum of 8 internal framebuffers to allow playback
    of those video streams.

    Signed-off-by: Lucas Stach
    Acked-by: Philipp Zabel
    Signed-off-by: Mauro Carvalho Chehab

    Lucas Stach
     
  • Driver is stable. Remove DEBUG definition from driver.

    There are debug message in /var/log/messages if DEBUG is defined,
    such as:
    [MTK_V4L2] level=0 fops_vcodec_open(),170: decoder capability 0
    [MTK_V4L2] level=0 fops_vcodec_open(),177: 16000000.vcodec decoder [0]
    [MTK_V4L2] level=0 fops_vcodec_release(),200: [0] decoder

    Signed-off-by: Minghsiu Tsai
    Acked-by: Tiffany Lin
    Signed-off-by: Mauro Carvalho Chehab

    Minghsiu Tsai
     
  • Otherwise the i2c transfer functions can read or write beyond the end of
    stack or heap buffers.

    Signed-off-by: Alyssa Milburn
    Cc: stable@vger.kernel.org
    Signed-off-by: Mauro Carvalho Chehab

    Alyssa Milburn
     
  • Otherwise ttusb2_i2c_xfer can read or write beyond the end of static and
    heap buffers.

    Signed-off-by: Alyssa Milburn
    Cc: stable@vger.kernel.org
    Signed-off-by: Mauro Carvalho Chehab

    Alyssa Milburn
     
  • Add an explicit config option to select whether the CEC remote control
    messages are to be passed on to the RC subsystem or not.

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

    Hans Verkuil
     
  • Drop the separate cec-edid.h header and merge it into cec.h.

    There was really no need to have a separate header for this.

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

    Hans Verkuil
     
  • The Kconfig options for the CEC subsystem were a bit messy. In
    addition there were two cec sources (cec-edid.c and cec-notifier.c)
    that were outside of the media/cec directory, which was weird.

    Move those sources to media/cec as well.

    The cec-edid and cec-notifier functionality is now part of the cec
    module and these are no longer separate modules.

    Also remove the MEDIA_CEC_EDID config option and include it with the
    main CEC config option (which defined CEC_EDID anyway).

    Added static inlines to cec-edid.h for dummy functions when CEC_CORE
    isn't defined.

    CEC drivers should now depend on CEC_CORE.

    CEC drivers that need the cec-notifier functionality must explicitly
    select CEC_NOTIFIER.

    The s5p-cec and stih-cec drivers depended on VIDEO_DEV instead of
    CEC_CORE, fix that as well.

    Signed-off-by: Hans Verkuil
    Acked-by: Benjamin Gaignard
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     

18 Apr, 2017

3 commits