28 May, 2016

3 commits

  • Pull MTD fixes from Brian Norris:
    "We've already noticed a few flaws in the MTD work for v4.7-rc1:

    - The Atmel folks got ahead of themselves on trying to support their
    latest hardware and were working off incorrect documentation. Fix
    up the NAND driver to get this correct.

    - Fix up device tree example documentation to use the latest
    recommendations for describing NAND ECC algorithms"

    * tag 'for-linus-20160527' of git://git.infradead.org/linux-mtd:
    Documentation: dt: mtd: drop "soft_bch" from example
    Revert "mtd: atmel_nand: Support variable RB_EDGE interrupts"

    Linus Torvalds
     
  • Pull drm fixes from Dave Airlie:

    - one IMX built-in regression fix

    - a set of amdgpu fixes, mostly powerplay and polaris GPU stuff

    - a set of i915 fixes all over, many cc'ed to stable.

    The i915 batch contain support for DP++ dongle detection, which is
    used to fix some regressions in the HDMI color depth area

    * tag 'drm-fixes-v4.7-rc1' of git://people.freedesktop.org/~airlied/linux: (44 commits)
    drm/amd: add Kconfig dependency for ACP on DRM_AMDGPU
    drm/amdgpu: Fix hdmi deep color support.
    drm/amdgpu: fix bug in fence driver fini
    drm/i915: Stop automatically retiring requests after a GPU hang
    drm/i915: Unify intel_ring_begin()
    drm/i915: Ignore stale wm register values on resume on ilk-bdw (v2)
    drm/i915/psr: Try to program link training times correctly
    drm/imx: Match imx-ipuv3-crtc components using device node in platform data
    drm/i915/bxt: Adjusting the error in horizontal timings retrieval
    drm/i915: Don't leave old junk in ilk active watermarks on readout
    drm/i915: s/DPPL/DPLL/ for SKL DPLLs
    drm/i915: Fix gen8 semaphores id for legacy mode
    drm/i915: Set crtc_state->lane_count for HDMI
    drm/i915/BXT: Retrieving the horizontal timing for DSI
    drm/i915: Protect gen7 irq_seqno_barrier with uncore lock
    drm/i915: Re-enable GGTT earlier during resume on pre-gen6 platforms
    drm/i915: Determine DP++ type 1 DVI adaptor presence based on VBT
    drm/i915: Enable/disable TMDS output buffers in DP++ adaptor as needed
    drm/i915: Respect DP++ adaptor TMDS clock limit
    drm: Add helper for DP++ adaptors
    ...

    Linus Torvalds
     
  • Commit 32698aafc9f0 (Documentation: devicetree: deprecate "soft_bch"
    nand-ecc-mode value, 2016-04-22) deprecated "soft_bch". Update the example to
    match.

    Signed-off-by: Baruch Siach
    Acked-by: Rafał Miłecki
    Acked-by: Rob Herring
    Acked-by: Boris Brezillon
    Signed-off-by: Brian Norris

    Baruch Siach
     

27 May, 2016

5 commits

  • I see the main drm pull got merged, here's the first batch of fixes for
    4.7 already. Fixes all around, a large portion cc: stable stuff.

    [airlied: the DP++ stuff is a regression fix].
    * tag 'drm-intel-next-fixes-2016-05-25' of git://anongit.freedesktop.org/drm-intel:
    drm/i915: Stop automatically retiring requests after a GPU hang
    drm/i915: Unify intel_ring_begin()
    drm/i915: Ignore stale wm register values on resume on ilk-bdw (v2)
    drm/i915/psr: Try to program link training times correctly
    drm/i915/bxt: Adjusting the error in horizontal timings retrieval
    drm/i915: Don't leave old junk in ilk active watermarks on readout
    drm/i915: s/DPPL/DPLL/ for SKL DPLLs
    drm/i915: Fix gen8 semaphores id for legacy mode
    drm/i915: Set crtc_state->lane_count for HDMI
    drm/i915/BXT: Retrieving the horizontal timing for DSI
    drm/i915: Protect gen7 irq_seqno_barrier with uncore lock
    drm/i915: Re-enable GGTT earlier during resume on pre-gen6 platforms
    drm/i915: Determine DP++ type 1 DVI adaptor presence based on VBT
    drm/i915: Enable/disable TMDS output buffers in DP++ adaptor as needed
    drm/i915: Respect DP++ adaptor TMDS clock limit
    drm: Add helper for DP++ adaptors

    Dave Airlie
     
  • Pull kconfig update from Michal Marek:

    - fix for behavior of tristate choice items and fix for documentation
    of existing kconfig behavior [Dirk Gouders]

    - more helpful "unexpected data" kconfig warning [Paul Bolle]

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kconfig/symbol.c: handle choice_values that depend on 'm' symbols
    kconfig-language: elaborate on the type of a choice
    kconfig-language: fix comment on dependency-generated menu structures.
    kconfig: add unexpected data itself to warning

    Linus Torvalds
     
  • Pull misc DAX updates from Vishal Verma:
    "DAX error handling for 4.7

    - Until now, dax has been disabled if media errors were found on any
    device. This enables the use of DAX in the presence of these
    errors by making all sector-aligned zeroing go through the driver.

    - The driver (already) has the ability to clear errors on writes that
    are sent through the block layer using 'DSMs' defined in ACPI 6.1.

    Other misc changes:

    - When mounting DAX filesystems, check to make sure the partition is
    page aligned. This is a requirement for DAX, and previously, we
    allowed such unaligned mounts to succeed, but subsequent
    reads/writes would fail.

    - Misc/cleanup fixes from Jan that remove unused code from DAX
    related to zeroing, writeback, and some size checks"

    * tag 'dax-misc-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
    dax: fix a comment in dax_zero_page_range and dax_truncate_page
    dax: for truncate/hole-punch, do zeroing through the driver if possible
    dax: export a low-level __dax_zero_page_range helper
    dax: use sb_issue_zerout instead of calling dax_clear_sectors
    dax: enable dax in the presence of known media errors (badblocks)
    dax: fallback from pmd to pte on error
    block: Update blkdev_dax_capable() for consistency
    xfs: Add alignment check for DAX mount
    ext2: Add alignment check for DAX mount
    ext4: Add alignment check for DAX mount
    block: Add bdev_dax_supported() for dax mount checks
    block: Add vfs_msg() interface
    dax: Remove redundant inode size checks
    dax: Remove pointless writeback from dax_do_io()
    dax: Remove zeroing from dax_io()
    dax: Remove dead zeroing code from fault handlers
    ext2: Avoid DAX zeroing to corrupt data
    ext2: Fix block zeroing in ext2_get_blocks() for DAX
    dax: Remove complete_unwritten argument
    DAX: move RADIX_DAX_ definitions to dax.c

    Linus Torvalds
     
  • Pull hwmon fixlets from Jean Delvare.

    * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    Documentation/hwmon: Update links in max34440
    hwmon: (emc2103) Fix typo in MODULE_PARM_DESC

    Linus Torvalds
     
  • Pull thermal management updates from Zhang Rui:

    - Introduce generic ADC thermal driver, based on OF thermal (Laxman
    Dewangan)

    - Introduce new thermal driver for Tango chips (Marc Gonzalez)

    - Rockchip driver support for RK3399, RK3366, and some fixes (Caesar
    Wang, Elaine Zhang and Shawn Lin)

    - Add CPU power cooling model to Mediatek thermal driver (Dawei Chien)

    - Wider usage of dev_thermal_zone_of_sensor_register (Eduardo Valentin)

    - TI thermal driver gained a new maintainer (Keerthy).

    - Enabled powerclamp driver by checking CPU feature and package cstate
    counter instead of CPU whitelist (Jacob Pan)

    - Various fixes on thermal governor, OF thermal, Tegra, and RCAR

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (50 commits)
    thermal: tango: initialize TEMPSI_CFG
    thermal: rockchip: use the usleep_range instead of udelay
    thermal: rockchip: add the notes for better reading
    thermal: rockchip: Support RK3366 SoCs in the thermal driver
    thermal: rockchip: handle the power sequence for tsadc controller
    thermal: rockchip: update the tsadc table for rk3399
    thermal: rockchip: fixes the code_to_temp for tsadc driver
    thermal: rockchip: disable thermal->clk in err case
    thermal: tegra: add Tegra132 specific SOC_THERM driver
    thermal: fix ptr_ret.cocci warnings
    thermal: mediatek: Add cpu dynamic power cooling model.
    thermal: generic-adc: Add ADC based thermal sensor driver
    thermal: generic-adc: Add DT binding for ADC based thermal sensor
    thermal: tegra: fix static checker warning
    thermal: tegra: mark PM functions __maybe_unused
    thermal: add temperature sensor support for tango SoC
    thermal: hisilicon: fix IRQ imbalance enabling
    thermal: hisilicon: support to use any sensor
    thermal: rcar: Remove binding docs for r8a7794
    thermal: tegra: add PM support
    ...

    Linus Torvalds
     

26 May, 2016

5 commits

  • It appears the website for maxim-ic.com changed to
    maximintegrated.com.

    Signed-off-by: Glenn Dayton
    Signed-off-by: Jean Delvare

    Glenn Dayton
     
  • This reverts commit 5ddc7bd43ccc ("mtd: atmel_nand: Support variable
    RB_EDGE interrupts")

    Because for current SoCs, the RB_EDGE3(i.e. bit 27) of HSMC_SR
    register does not exist, the RB_EDGE0 (i.e. bit 24) is the ready/busy
    line edge status bit. It is a datasheet bug.

    Cc:
    Fixes: commit 5ddc7bd43ccc ("mtd: atmel_nand: Support variable RB_EDGE interrupts")
    Signed-off-by: Wenyou Yang
    Signed-off-by: Brian Norris

    Wenyou Yang
     
  • Pull perf updates from Ingo Molnar:
    "Mostly tooling and PMU driver fixes, but also a number of late updates
    such as the reworking of the call-chain size limiting logic to make
    call-graph recording more robust, plus tooling side changes for the
    new 'backwards ring-buffer' extension to the perf ring-buffer"

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
    perf record: Read from backward ring buffer
    perf record: Rename variable to make code clear
    perf record: Prevent reading invalid data in record__mmap_read
    perf evlist: Add API to pause/resume
    perf trace: Use the ptr->name beautifier as default for "filename" args
    perf trace: Use the fd->name beautifier as default for "fd" args
    perf report: Add srcline_from/to branch sort keys
    perf evsel: Record fd into perf_mmap
    perf evsel: Add overwrite attribute and check write_backward
    perf tools: Set buildid dir under symfs when --symfs is provided
    perf trace: Only auto set call-graph to "dwarf" when syscalls are being traced
    perf annotate: Sort list of recognised instructions
    perf annotate: Fix identification of ARM blt and bls instructions
    perf tools: Fix usage of max_stack sysctl
    perf callchain: Stop validating callchains by the max_stack sysctl
    perf trace: Fix exit_group() formatting
    perf top: Use machine->kptr_restrict_warned
    perf trace: Warn when trying to resolve kernel addresses with kptr_restrict=1
    perf machine: Do not bail out if not managing to read ref reloc symbol
    perf/x86/intel/p4: Trival indentation fix, remove space
    ...

    Linus Torvalds
     
  • …erry.reding/linux-pwm

    Pull pwm updates from Thierry Reding:
    "This set of changes introduces an atomic API to the PWM subsystem.
    This is influenced by the DRM atomic API that was introduced a while
    back, though it is obviously a lot simpler. The fundamental idea
    remains the same, though: drivers provide a single callback to
    implement the atomic configuration of a PWM channel.

    As a side-effect the PWM subsystem gains the ability for initial state
    retrieval, so that the logical state mirrors that of the hardware.
    Many use-cases don't care about this, but for others it is essential.

    These new features require changes in all users, which these patches
    take care of. The core is transitioned to use the atomic callback if
    available and provides a fallback mechanism for other drivers.

    Changes to transition users and drivers to the atomic API are
    postponed to v4.8"

    * tag 'pwm/for-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (30 commits)
    pwm: Add information about polarity, duty cycle and period to debugfs
    pwm: Switch to the atomic API
    pwm: Update documentation
    pwm: Add core infrastructure to allow atomic updates
    pwm: Add hardware readout infrastructure
    pwm: Move the enabled/disabled info into pwm_state
    pwm: Introduce the pwm_state concept
    pwm: Keep PWM state in sync with hardware state
    ARM: Explicitly apply PWM config extracted from pwm_args
    drm: i915: Explicitly apply PWM config extracted from pwm_args
    input: misc: pwm-beeper: Explicitly apply PWM config extracted from pwm_args
    input: misc: max8997: Explicitly apply PWM config extracted from pwm_args
    backlight: lm3630a: explicitly apply PWM config extracted from pwm_args
    backlight: lp855x: Explicitly apply PWM config extracted from pwm_args
    backlight: lp8788: Explicitly apply PWM config extracted from pwm_args
    backlight: pwm_bl: Use pwm_get_args() where appropriate
    fbdev: ssd1307fb: Use pwm_get_args() where appropriate
    regulator: pwm: Use pwm_get_args() where appropriate
    leds: pwm: Use pwm_get_args() where appropriate
    input: misc: max77693: Use pwm_get_args() where appropriate
    ...

    Linus Torvalds
     
  • Pull watchdog updates from Wim Van Sebroeck:

    - add support for Fintek F81865 Super-IO chip

    - add support for watchdogs (RWDT and SWDT) found on RCar Gen3 based
    SoCs from Renesas

    - octeon: Handle the FROZEN hot plug notifier actions

    - f71808e_wdt fixes and cleanups

    - some small improvements in code and documentation

    * git://www.linux-watchdog.org/linux-watchdog:
    MAINTAINERS: Add file patterns for watchdog device tree bindings
    Documentation: Add ebc-c384_wdt watchdog-parameters.txt entry
    watchdog: shwdt: Use setup_timer()
    watchdog: cpwd: Use setup_timer()
    arm64: defconfig: enable Renesas Watchdog Timer
    watchdog: renesas-wdt: add driver
    watchdog: remove error message when unable to allocate watchdog device
    watchdog: f71808e_wdt: Fix WDTMOUT_STS register read
    watchdog: f71808e_wdt: Fix typo
    watchdog: f71808e_wdt: Add F81865 support
    watchdog: sp5100_tco: properly check for new register layouts
    watchdog: core: Fix circular locking dependency
    watchdog: core: fix trivial typo in a comment
    watchdog: hpwdt: Adjust documentation to match latest kernel module parameters.
    watchdog: imx2_wdt: add external reset support via dt prop
    watchdog: octeon: Handle the FROZEN hot plug notifier actions.
    watchdog: qcom: Report reboot reason

    Linus Torvalds
     

25 May, 2016

2 commits

  • Pull spi updates from Mark Brown:
    "Another quiet release for SPI, almost entirely driver specific changes
    with the diffstat dominated by two new drivers which are about two
    thirds of it in terms of lines of code:

    - new drivers for PIC32 standard and SQI controllers
    - the Cadence driver has had runtime PM support added and quite a few
    fixes and cleanups
    - flash-specific accelerated path support now has a feature query
    interface
    - the pxa2xx driver has been moved to use the core DMA mapping support"

    * tag 'spi-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (48 commits)
    spi: pic32-sqi: Fix linker error, undefined reference to `bad_dma_ops'
    spi: dw-pci: Spelling s/paltforms/platforms/g
    spi: pic32-sqi: Remove pic32_sqi_setup and pic32_sqi_cleanup
    spi: Fix simple typo s/impelment/implement
    spi: rockchip: potential NULL dereference on error
    spi: zynqmp: disable clocks in error paths
    spi: Drop unnecessary dependencies on relaxed I/O accessors
    spi: qup: Add spi_master_put in remove function
    spi: qup: Handle clocks in pm_runtime suspend and resume
    spi: st-ssc4: Fix missing spi_master_put in spi_st_probe error paths
    spi: st-ssc4: Allow compile test build
    spi: omap2-mcspi: Use dma_request_chan() for requesting DMA channel
    spi: davinci: Use dma_request_chan() for requesting DMA channel
    spi: pic32: Fix checking return value of devm_ioremap_resource
    spi: spi-fsl-dspi: Update DT binding documentation
    spi: Drop duplicate code to set master->dev.parent
    spi: pic32: Set proper bits_per_word_mask
    spi: return error if kmap'd buffers passed to spi_map_buf()
    spi: core: add hook flash_read_supported to spi_master
    spi: pic32-sqi: silence array overflow warning
    ...

    Linus Torvalds
     
  • Pull MTD updates from Brian Norris:
    "First cycle with Boris as NAND maintainer! Many (most) bullets stolen
    from him.

    Generic:
    - Migrated NAND LED trigger to be a generic MTD trigger

    NAND:
    - Introduction of the "ECC algorithm" concept, to avoid overloading
    the ECC mode field too much more
    - Replaced the nand_ecclayout infrastructure with something a little
    more flexible (finally!) and future proof
    - Rework of the OMAP GPMC and NAND drivers; the TI folks pulled some
    of this into their own tree as well
    - Prepare the sunxi NAND driver to receive DMA support
    - Handle bitflips in erased pages on GPMI revisions that do not
    support this in hardware.

    SPI NOR:
    - Start using the spi_flash_read() API for SPI drivers that support
    it (i.e., SPI drivers with special memory-mapped flash modes)

    And other small scattered improvments"

    * tag 'for-linus-20160523' of git://git.infradead.org/linux-mtd: (155 commits)
    mtd: spi-nor: support GigaDevice gd25lq64c
    mtd: nand_bch: fix spelling of "probably"
    mtd: brcmnand: respect ECC algorithm set by NAND subsystem
    gpmi-nand: Handle ECC Errors in erased pages
    Documentation: devicetree: deprecate "soft_bch" nand-ecc-mode value
    mtd: nand: add support for "nand-ecc-algo" DT property
    mtd: mtd: drop NAND_ECC_SOFT_BCH enum value
    mtd: drop support for NAND_ECC_SOFT_BCH as "soft_bch" mapping
    mtd: nand: read ECC algorithm from the new field
    mtd: nand: fsmc: validate ECC setup by checking algorithm directly
    mtd: nand: set ECC algorithm to Hamming on fallback
    staging: mt29f_spinand: set ECC algorithm explicitly
    CRIS v32: nand: set ECC algorithm explicitly
    mtd: nand: atmel: set ECC algorithm explicitly
    mtd: nand: davinci: set ECC algorithm explicitly
    mtd: nand: bf5xx: set ECC algorithm explicitly
    mtd: nand: omap2: Fix high memory dma prefetch transfer
    mtd: nand: omap2: Start dma request before enabling prefetch
    mtd: nandsim: add __init attribute
    mtd: nand: move of_get_nand_xxx() helpers into nand_base.c
    ...

    Linus Torvalds
     

24 May, 2016

5 commits

  • Merge yet more updates from Andrew Morton:

    - Oleg's "wait/ptrace: assume __WALL if the child is traced". It's a
    kernel-based workaround for existing userspace issues.

    - A few hotfixes

    - befs cleanups

    - nilfs2 updates

    - sys_wait() changes

    - kexec updates

    - kdump

    - scripts/gdb updates

    - the last of the MM queue

    - a few other misc things

    * emailed patches from Andrew Morton : (84 commits)
    kgdb: depends on VT
    drm/amdgpu: make amdgpu_mn_get wait for mmap_sem killable
    drm/radeon: make radeon_mn_get wait for mmap_sem killable
    drm/i915: make i915_gem_mmap_ioctl wait for mmap_sem killable
    uprobes: wait for mmap_sem for write killable
    prctl: make PR_SET_THP_DISABLE wait for mmap_sem killable
    exec: make exec path waiting for mmap_sem killable
    aio: make aio_setup_ring killable
    coredump: make coredump_wait wait for mmap_sem for write killable
    vdso: make arch_setup_additional_pages wait for mmap_sem for write killable
    ipc, shm: make shmem attach/detach wait for mmap_sem killable
    mm, fork: make dup_mmap wait for mmap_sem for write killable
    mm, proc: make clear_refs killable
    mm: make vm_brk killable
    mm, elf: handle vm_brk error
    mm, aout: handle vm_brk failures
    mm: make vm_munmap killable
    mm: make vm_mmap killable
    mm: make mmap_sem for write waits killable for mm syscalls
    MAINTAINERS: add co-maintainer for scripts/gdb
    ...

    Linus Torvalds
     
  • Provide a worked example for utilising the lx_radix_tree_lookup function

    Link: http://lkml.kernel.org/r/e786008ac5aec4b84198812805b326d718bdeb4b.1462865983.git.jan.kiszka@siemens.com
    Signed-off-by: Kieran Bingham
    Signed-off-by: Jan Kiszka
    Cc: Jonathan Corbet
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kieran Bingham
     
  • Lots of little changes needed to be made to clean these up, remove the
    four byte pointer assumption and traverse the pid queue properly. Also
    consolidate the traceback code into a single function instead of having
    three copies of it.

    Link: http://lkml.kernel.org/r/1462926655-9390-1-git-send-email-minyard@acm.org
    Signed-off-by: Corey Minyard
    Acked-by: Baoquan He
    Cc: Vivek Goyal
    Cc: Haren Myneni
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Corey Minyard
     
  • To respond to a certain developer's request, this explicitly state that
    developers can reimplement the nilfs2 design for other operating systems
    to share data stored in that format.

    Link: http://lkml.kernel.org/r/1461935747-10380-7-git-send-email-konishi.ryusuke@lab.ntt.co.jp
    Signed-off-by: Ryusuke Konishi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ryusuke Konishi
     
  • Pull drm updates from Dave Airlie:
    "Here's the main drm pull request for 4.7, it's been a busy one, and
    I've been a bit more distracted in real life this merge window. Lots
    more ARM drivers, not sure if it'll ever end. I think I've at least
    one more coming the next merge window.

    But changes are all over the place, support for AMD Polaris GPUs is in
    here, some missing GM108 support for nouveau (found in some Lenovos),
    a bunch of MST and skylake fixes.

    I've also noticed a few fixes from Arnd in my inbox, that I'll try and
    get in asap, but I didn't think they should hold this up.

    New drivers:
    - Hisilicon kirin display driver
    - Mediatek MT8173 display driver
    - ARC PGU - bitstreamer on Synopsys ARC SDP boards
    - Allwinner A13 initial RGB output driver
    - Analogix driver for DisplayPort IP found in exynos and rockchip

    DRM Core:
    - UAPI headers fixes and C++ safety
    - DRM connector reference counting
    - DisplayID mode parsing for Dell 5K monitors
    - Removal of struct_mutex from drivers
    - Connector registration cleanups
    - MST robustness fixes
    - MAINTAINERS updates
    - Lockless GEM object freeing
    - Generic fbdev deferred IO support

    panel:
    - Support for a bunch of new panels

    i915:
    - VBT refactoring
    - PLL computation cleanups
    - DSI support for BXT
    - Color manager support
    - More atomic patches
    - GEM improvements
    - GuC fw loading fixes
    - DP detection fixes
    - SKL GPU hang fixes
    - Lots of BXT fixes

    radeon/amdgpu:
    - Initial Polaris support
    - GPUVM/Scheduler/Clock/Power improvements
    - ASYNC pageflip support
    - New mesa feature support

    nouveau:
    - GM108 support
    - Power sensor support improvements
    - GR init + ucode fixes.
    - Use GPU provided topology information

    vmwgfx:
    - Add host messaging support

    gma500:
    - Some cleanups and fixes

    atmel:
    - Bridge support
    - Async atomic commit support

    fsl-dcu:
    - Timing controller for LCD support
    - Pixel clock polarity support

    rcar-du:
    - Misc fixes

    exynos:
    - Pipeline clock support
    - Exynoss4533 SoC support
    - HW trigger mode support
    - export HDMI_PHY clock
    - DECON5433 fixes
    - Use generic prime functions
    - use DMA mapping APIs

    rockchip:
    - Lots of little fixes

    vc4:
    - Render node support
    - Gamma ramp support
    - DPI output support

    msm:
    - Mostly cleanups and fixes
    - Conversion to generic struct fence

    etnaviv:
    - Fix for prime buffer handling
    - Allow hangcheck to be coalesced with other wakeups

    tegra:
    - Gamme table size fix"

    * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (1050 commits)
    drm/edid: add displayid detailed 1 timings to the modelist. (v1.1)
    drm/edid: move displayid validation to it's own function.
    drm/displayid: Iterate over all DisplayID blocks
    drm/edid: move displayid tiled block parsing into separate function.
    drm: Nuke ->vblank_disable_allowed
    drm/vmwgfx: Report vmwgfx version to vmware.log
    drm/vmwgfx: Add VMWare host messaging capability
    drm/vmwgfx: Kill some lockdep warnings
    drm/nouveau/gr/gf100-: fix race condition in fecs/gpccs ucode
    drm/nouveau/core: recognise GM108 chipsets
    drm/nouveau/gr/gm107-: fix touching non-existent ppcs in attrib cb setup
    drm/nouveau/gr/gk104-: share implementation of ppc exception init
    drm/nouveau/gr/gk104-: move rop_active_fbps init to nonctx
    drm/nouveau/bios/pll: check BIT table version before trying to parse it
    drm/nouveau/bios/pll: prevent oops when limits table can't be parsed
    drm/nouveau/volt/gk104: round up in gk104_volt_set
    drm/nouveau/fb/gm200: setup mmu debug buffer registers at init()
    drm/nouveau/fb/gk20a,gm20b: setup mmu debug buffer registers at init()
    drm/nouveau/fb/gf100-: allocate mmu debug buffers
    drm/nouveau/fb: allow chipset-specific actions for oneinit()
    ...

    Linus Torvalds
     

23 May, 2016

3 commits

  • …/topic/orion', 'spi/topic/pic32' and 'spi/topic/pic32-qspi' into spi-next

    Mark Brown
     
  • …c/fsl-dspi', 'spi/topic/fsl-espi' and 'spi/topic/kconfig' into spi-next

    Mark Brown
     
  • Add a helper which aids in the identification of DP dual mode
    (aka. DP++) adaptors. There are several types of adaptors
    specified: type 1 DVI, type 1 HDMI, type 2 DVI, type 2 HDMI

    Type 1 adaptors have a max TMDS clock limit of 165MHz, type 2 adaptors
    may go as high as 300MHz and they provide a register informing the
    source device what the actual limit is. Supposedly also type 1 adaptors
    may optionally implement this register. This TMDS clock limit is the
    main reason why we need to identify these adaptors.

    Type 1 adaptors provide access to their internal registers and the sink
    DDC bus through I2C. Type 2 adaptors provide this access both via I2C
    and I2C-over-AUX. A type 2 source device may choose to implement either
    of these methods. If a source device implements the I2C-over-AUX
    method, then the driver will obviously need specific support for such
    adaptors since the port is driven like an HDMI port, but DDC
    communication happes over the AUX channel.

    This helper should be enough to identify the adaptor type (some
    type 1 DVI adaptors may be a slight exception) and the maximum TMDS
    clock limit. Another feature that may be available is control over
    the TMDS output buffers on the adaptor, possibly allowing for some
    power saving when the TMDS link is down.

    Other user controllable features that may be available in the adaptors
    are downstream i2c bus speed control when using i2c-over-aux, and
    some control over the CEC pin. I chose not to provide any helper
    functions for those since I have no use for them in i915 at this time.
    The rest of the registers in the adaptor are mostly just information,
    eg. IEEE OUI, hardware and firmware revision, etc.

    v2: Pass adaptor type to helper functions to ease driver implementation
    Fix a bunch of typoes (Paulo)
    Add DRM_DP_DUAL_MODE_UNKNOWN for the case where we don't (yet) know
    the type (Paulo)
    Reject 0x00 and 0xff DP_DUAL_MODE_MAX_TMDS_CLOCK values (Paulo)
    Adjust drm_dp_dual_mode_detect() type2 vs. type1 detection to
    ease future LSPCON enabling
    Remove the unused DP_DUAL_MODE_LAST_RESERVED define
    v3: Fix kernel doc function argument descriptions (Jani)
    s/NONE/UNKNOWN/ in drm_dp_dual_mode_detect() docs
    Add kernel doc for enum drm_dp_dual_mode_type
    Actually build the docs
    Fix more typoes
    v4: Adjust code indentation of type2 adaptor detection (Shashank)
    Add debug messages for failurs cases (Shashank)
    v5: EXPORT_SYMBOL(drm_dp_dual_mode_read) (Paulo)

    Cc: stable@vger.kernel.org
    Cc: Tore Anderson
    Cc: Paulo Zanoni
    Cc: Shashank Sharma
    Cc: Daniel Vetter
    Cc: Shashank Sharma
    Signed-off-by: Ville Syrjälä
    Reviewed-by: Shashank Sharma (v4)
    Link: http://patchwork.freedesktop.org/patch/msgid/1462542412-25533-1-git-send-email-ville.syrjala@linux.intel.com
    (cherry picked from commit ede53344dbfd1dd43bfd73eb6af743d37c56a7c3)
    Signed-off-by: Jani Nikula

    Ville Syrjälä
     

22 May, 2016

1 commit

  • Pull RTC updates from Alexandre Belloni:
    "Subsystem wide cleanups:
    - Use IS_ENABLED() instead of checking for built-in or module
    - remove useless DRV_VERSION
    - remove CLK_IS_ROOT
    - remove UIE signaling

    Drivers:
    - ds1302: rewritten to be a proper SPI device driver
    - m41t80: huge cleanup, alarm, wakelarm ans oscialltor failure
    detection support
    - rv3029: switch to regmap to handle rv3049, alarm support, fixes
    - zynqmp: enable switching to battery power, fixes
    - small fixes for at91sam9, da9053, ds1307, ds1685, ds3232, r2025,
    sa1100, snvs, stmp3xxx, tps6586x"

    * tag 'rtc-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (40 commits)
    rtc: tps6586x: rename so module can be autoloaded
    rtc: rv3029: hide unused i2c device table
    rtc: rs5c372: r2025: fix check for 'oscillator halted' condition
    rtc: rv3029: add alarm IRQ
    rtc: rv3029: fix set_time function
    rtc: rv3029: fix alarm support
    rtc: rv3029: Remove some checks and warnings
    rtc: rv3029: Add support of RV3049
    rtc: rv3029: convert to use regmap
    rtc: rv3029: remove 'i2c' in functions names
    rtc: stmp3xxx: print message on error
    rtc: Use IS_ENABLED() instead of checking for built-in or module
    rtc: ds3232: fix call trace when rtc->ops_lock is used as NULL
    rtc: snvs: return error in case enable_irq_wake fails
    rtc: zynqmp: Update seconds time programming logic
    rtc: sa1100: DT spelling s/interrupt-name/interrupt-names/
    rtc: mc13xxx: remove UIE signaling
    rtc: mxc: remove UIE signaling
    rtc: ds1307: Remove CLK_IS_ROOT
    rtc: hym8563: Remove CLK_IS_ROOT
    ...

    Linus Torvalds
     

21 May, 2016

16 commits

  • Merge more updates from Andrew Morton:

    - the rest of MM

    - KASAN updates

    - procfs updates

    - exit, fork updates

    - printk updates

    - lib/ updates

    - radix-tree testsuite updates

    - checkpatch updates

    - kprobes updates

    - a few other misc bits

    * emailed patches from Andrew Morton : (162 commits)
    samples/kprobes: print out the symbol name for the hooks
    samples/kprobes: add a new module parameter
    kprobes: add the "tls" argument for j_do_fork
    init/main.c: simplify initcall_blacklisted()
    fs/efs/super.c: fix return value
    checkpatch: improve --git shortcut
    checkpatch: reduce number of `git log` calls with --git
    checkpatch: add support to check already applied git commits
    checkpatch: add --list-types to show message types to show or ignore
    checkpatch: advertise the --fix and --fix-inplace options more
    checkpatch: whine about ACCESS_ONCE
    checkpatch: add test for keywords not starting on tabstops
    checkpatch: improve CONSTANT_COMPARISON test for structure members
    checkpatch: add PREFER_IS_ENABLED test
    lib/GCD.c: use binary GCD algorithm instead of Euclidean
    radix-tree: free up the bottom bit of exceptional entries for reuse
    dax: move RADIX_DAX_ definitions to dax.c
    radix-tree: make radix_tree_descend() more useful
    radix-tree: introduce radix_tree_replace_clear_tags()
    radix-tree: tidy up __radix_tree_create()
    ...

    Linus Torvalds
     
  • Pull staging and IIO driver updates from Greg KH:
    "Here's the big staging and iio driver update for 4.7-rc1.

    I think we almost broke even with this release, only adding a few more
    lines than we removed, which isn't bad overall given that there's a
    bunch of new iio drivers added.

    The Lustre developers seem to have woken up from their sleep and have
    been doing a great job in cleaning up the code and pruning unused or
    old cruft, the filesystem is almost readable :)

    Other than that, just a lot of basic coding style cleanups in the
    churn. All have been in linux-next for a while with no reported
    issues"

    * tag 'staging-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (938 commits)
    Staging: emxx_udc: emxx_udc: fixed coding style issue
    staging/gdm724x: fix "alignment should match open parenthesis" issues
    staging/gdm724x: Fix avoid CamelCase
    staging: unisys: rename misleading var ii with frag
    staging: unisys: visorhba: switch success handling to error handling
    staging: unisys: visorhba: main path needs to flow down the left margin
    staging: unisys: visorinput: handle_locking_key() simplifications
    staging: unisys: visorhba: fail gracefully for thread creation failures
    staging: unisys: visornic: comment restructuring and removing bad diction
    staging: unisys: fix format string %Lx to %llx for u64
    staging: unisys: remove unused struct members
    staging: unisys: visorchannel: correct variable misspelling
    staging: unisys: visorhba: replace functionlike macro with function
    staging: dgnc: Need to check for NULL of ch
    staging: dgnc: remove redundant condition check
    staging: dgnc: fix 'line over 80 characters'
    staging: dgnc: clean up the dgnc_get_modem_info()
    staging: lustre: lnet: enable configuration per NI interface
    staging: lustre: o2iblnd: properly set ibr_why
    staging: lustre: o2iblnd: remove last of kiblnd_tunables_fini
    ...

    Linus Torvalds
     
  • Pull driver core updates from Greg KH:
    "Here's the "big" driver core update for 4.7-rc1.

    Mostly just debugfs changes, the long-known and messy races with
    removing debugfs files should be fixed thanks to the great work of
    Nicolai Stange. We also have some isa updates in here (the x86
    maintainers told me to take it through this tree), a new warning when
    we run out of dynamic char major numbers, and a few other assorted
    changes, details in the shortlog.

    All have been in linux-next for some time with no reported issues"

    * tag 'driver-core-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (32 commits)
    Revert "base: dd: don't remove driver_data in -EPROBE_DEFER case"
    gpio: ws16c48: Utilize the ISA bus driver
    gpio: 104-idio-16: Utilize the ISA bus driver
    gpio: 104-idi-48: Utilize the ISA bus driver
    gpio: 104-dio-48e: Utilize the ISA bus driver
    watchdog: ebc-c384_wdt: Utilize the ISA bus driver
    iio: stx104: Utilize the module_isa_driver and max_num_isa_dev macros
    iio: stx104: Add X86 dependency to STX104 Kconfig option
    Documentation: Add ISA bus driver documentation
    isa: Implement the max_num_isa_dev macro
    isa: Implement the module_isa_driver macro
    pnp: pnpbios: Add explicit X86_32 dependency to PNPBIOS
    isa: Decouple X86_32 dependency from the ISA Kconfig option
    driver-core: use 'dev' argument in dev_dbg_ratelimited stub
    base: dd: don't remove driver_data in -EPROBE_DEFER case
    kernfs: Move faulting copy_user operations outside of the mutex
    devcoredump: add scatterlist support
    debugfs: unproxify files created through debugfs_create_u32_array()
    debugfs: unproxify files created through debugfs_create_blob()
    debugfs: unproxify files created through debugfs_create_bool()
    ...

    Linus Torvalds
     
  • Pull char / misc driver updates from Greg KH:
    "Here's the big char and misc driver update for 4.7-rc1.

    Lots of different tiny driver subsystems have updates here with new
    drivers and functionality. Details in the shortlog.

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

    * tag 'char-misc-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (125 commits)
    mcb: Delete num_cells variable which is not required
    mcb: Fixed bar number assignment for the gdd
    mcb: Replace ioremap and request_region with the devm version
    mcb: Implement bus->dev.release callback
    mcb: export bus information via sysfs
    mcb: Correctly initialize the bus's device
    mei: bus: call mei_cl_read_start under device lock
    coresight: etb10: adjust read pointer only when needed
    coresight: configuring ETF in FIFO mode when acting as link
    coresight: tmc: implementing TMC-ETF AUX space API
    coresight: moving struct cs_buffers to header file
    coresight: tmc: keep track of memory width
    coresight: tmc: make sysFS and Perf mode mutually exclusive
    coresight: tmc: dump system memory content only when needed
    coresight: tmc: adding mode of operation for link/sinks
    coresight: tmc: getting rid of multiple read access
    coresight: tmc: allocating memory when needed
    coresight: tmc: making prepare/unprepare functions generic
    coresight: tmc: splitting driver in ETB/ETF and ETR components
    coresight: tmc: cleaning up header file
    ...

    Linus Torvalds
     
  • Pull USB updates from Greg KH:
    "Here's the big pull request for USB and PHY drivers for 4.7-rc1

    Full details in the shortlog, but it's the normal major gadget driver
    updates, phy updates, new usbip code, as well as a bit of lots of
    other stuff.

    All have been in linux-next with no reported issues"

    * tag 'usb-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (164 commits)
    USB: serial: ti_usb_3410_5052: add MOXA UPORT 11x0 support
    USB: serial: fix minor-number allocation
    USB: serial: quatech2: fix use-after-free in probe error path
    USB: serial: mxuport: fix use-after-free in probe error path
    USB: serial: keyspan: fix debug and error messages
    USB: serial: keyspan: fix URB unlink
    USB: serial: keyspan: fix use-after-free in probe error path
    USB: serial: io_edgeport: fix memory leaks in probe error path
    USB: serial: io_edgeport: fix memory leaks in attach error path
    usb: Remove unnecessary space before operator ','.
    usb: Remove unnecessary space before open square bracket.
    USB: FHCI: avoid redundant condition
    usb: host: xhci-rcar: Avoid long wait in xhci_reset()
    usb/host/fotg210: remove dead code in create_sysfs_files
    usb: wusbcore: Do not initialise statics to 0.
    usb: wusbcore: Remove space before ',' and '(' .
    USB: serial: cp210x: clean up CRTSCTS flag code
    USB: serial: cp210x: get rid of magic numbers in CRTSCTS flag code
    USB: serial: cp210x: fix hardware flow-control disable
    USB: serial: option: add even more ZTE device ids
    ...

    Linus Torvalds
     
  • Pull tty and serial driver updates from Greg KH:
    "Here's the large TTY and Serial driver update for 4.7-rc1.

    A few new serial drivers are added here, and Peter has fixed a bunch
    of long-standing bugs in the tty layer and serial drivers as normal.
    Full details in the shortlog.

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

    * tag 'tty-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (88 commits)
    MAINTAINERS: 8250: remove website reference
    serial: core: Fix port mutex assert if lockdep disabled
    serial: 8250_dw: fix wrong logic in dw8250_check_lcr()
    tty: vt, finish looping on duplicate
    tty: vt, return error when con_startup fails
    QE-UART: add "fsl,t1040-ucc-uart" to of_device_id
    serial: mctrl_gpio: Drop support for out1-gpios and out2-gpios
    serial: 8250dw: Add device HID for future AMD UART controller
    Fix OpenSSH pty regression on close
    serial: mctrl_gpio: add IRQ locking
    serial: 8250: Integrate Fintek into 8250_base
    serial: mps2-uart: add support for early console
    serial: mps2-uart: add MPS2 UART driver
    dt-bindings: document the MPS2 UART bindings
    serial: sirf: Use generic uart-has-rtscts DT property
    serial: sirf: Introduce helper variable struct device_node *np
    serial: mxs-auart: Use generic uart-has-rtscts DT property
    serial: imx: Use generic uart-has-rtscts DT property
    doc: DT: Add Generic Serial Device Tree Bindings
    serial: 8250: of: Make tegra_serial_handle_break() static
    ...

    Linus Torvalds
     
  • Pull clk updates from Stephen Boyd:
    "It's the usual big pile of driver updates and additions, but we do
    have a couple core changes in here as well.

    Core:

    - CLK_IS_CRITICAL support has been added. This should allow drivers
    to properly express that a certain clk should stay on even if their
    prepare/enable count drops to 0 (and in turn the parents of these
    clks should stay enabled).

    - A clk registration API has been added, clk_hw_register(), and an OF
    clk provider API has been added, of_clk_add_hw_provider(). These
    APIs have been put in place to further split clk providers from clk
    consumers, with the goal being to have clk providers never deal
    with struct clk pointers at all. Conversion of provider drivers is
    on going. clkdev has also gained support for registering clk_hw
    pointers directly so we can convert drivers that don't use
    devicetree.

    New Drivers:

    - Marvell ap806 and cp110 system controllers (with clks inside!)
    - Hisilicon Hi3519 clock and reset controller
    - Axis ARTPEC-6 clock controllers
    - Oxford Semiconductor OXNAS clock controllers
    - AXS10X I2S PLL
    - Rockchip RK3399 clock and reset controller

    Updates:

    - MMC2 and UART2 clks on Samsung Exynos 3250, ACLK on Samsung Exynos
    542x SoCs, and some more clk ID exporting for bus frequency scaling
    - Proper BCM2835 PCM clk support and various other clks
    - i.MX clk updates for i.MX6SX, i.MX7, and VF610
    - Renesas updates for R-Car H3
    - Tegra210 got updates for DisplayPort and HDMI 2.0
    - Rockchip driver refactorings and fixes due to adding RK3399 support"

    * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (139 commits)
    clk: fix critical clock locking
    clk: qcom: mmcc-8996: Remove clocks that should be controlled by RPM
    clk: ingenic: Allow divider value to be divided
    clk: sunxi: Add display and TCON0 clocks driver
    clk: rockchip: drop old_rate calculation on pll rate changes
    clk: rockchip: simplify GRF handling in pll clocks
    clk: rockchip: lookup General Register Files in rockchip_clk_init
    clk: rockchip: fix the rk3399 sdmmc sample / drv name
    clk: mvebu: new driver for Armada CP110 system controller
    dt-bindings: arm: add DT binding for Marvell CP110 system controller
    clk: mvebu: new driver for Armada AP806 system controller
    clk: hisilicon: add CRG driver for hi3519 soc
    clk: hisilicon: export some hisilicon APIs to modules
    reset: hisilicon: add reset controller driver for hisilicon SOCs
    clk: bcm/kona: Do not use sizeof on pointer type
    clk: qcom: msm8916: Fix crypto clock flags
    clk: nxp: lpc18xx: Initialize clk_init_data::flags to 0
    clk/axs10x: Add I2S PLL clock driver
    clk: imx7d: fix ahb clock mux 1
    clk: fix comment of devm_clk_hw_register()
    ...

    Linus Torvalds
     
  • Pull networking fixes and more updates from David Miller:

    1) Tunneling fixes from Tom Herbert and Alexander Duyck.

    2) AF_UNIX updates some struct sock bit fields with the socket lock,
    whereas setsockopt() sets overlapping ones with locking. Seperate
    out the synchronized vs. the AF_UNIX unsynchronized ones to avoid
    corruption. From Andrey Ryabinin.

    3) Mount BPF filesystem with mount_nodev rather than mount_ns, from
    Eric Biederman.

    4) A couple kmemdup conversions, from Muhammad Falak R Wani.

    5) BPF verifier fixes from Alexei Starovoitov.

    6) Don't let tunneled UDP packets get stuck in socket queues, if
    something goes wrong during the encapsulation just drop the packet
    rather than signalling an error up the call stack. From Hannes
    Frederic Sowa.

    7) SKB ref after free in batman-adv, from Florian Westphal.

    8) TCP iSCSI, ocfs2, rds, and tipc have to disable BH in it's TCP
    callbacks since the TCP stack runs pre-emptibly now. From Eric
    Dumazet.

    9) Fix crash in fixed_phy_add, from Rabin Vincent.

    10) Fix length checks in xen-netback, from Paul Durrant.

    11) Fix mixup in KEY vs KEYID macsec attributes, from Sabrina Dubroca.

    12) RDS connection spamming bug fixes from Sowmini Varadhan

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (152 commits)
    net: suppress warnings on dev_alloc_skb
    uapi glibc compat: fix compilation when !__USE_MISC in glibc
    udp: prevent skbs lingering in tunnel socket queues
    bpf: teach verifier to recognize imm += ptr pattern
    bpf: support decreasing order in direct packet access
    net: usb: ch9200: use kmemdup
    ps3_gelic: use kmemdup
    net:liquidio: use kmemdup
    bpf: Use mount_nodev not mount_ns to mount the bpf filesystem
    net: cdc_ncm: update datagram size after changing mtu
    tuntap: correctly wake up process during uninit
    intel: Add support for IPv6 IP-in-IP offload
    ip6_gre: Do not allow segmentation offloads GRE_CSUM is enabled with FOU/GUE
    RDS: TCP: Avoid rds connection churn from rogue SYNs
    RDS: TCP: rds_tcp_accept_worker() must exit gracefully when terminating rds-tcp
    net: sock: move ->sk_shutdown out of bitfields.
    ipv6: Don't reset inner headers in ip6_tnl_xmit
    ip4ip6: Support for GSO/GRO
    ip6ip6: Support for GSO/GRO
    ipv6: Set features for IPv6 tunnels
    ...

    Linus Torvalds
     
  • It's not possible to read the process umask without also modifying it,
    which is what umask(2) does. A library cannot read umask safely,
    especially if the main program might be multithreaded.

    Add a new status line ("Umask") in /proc//status. It contains the
    file mode creation mask (umask) in octal. It is only shown for tasks
    which have task->fs.

    This patch is adapted from one originally written by Pierre Carrier.

    The use case is that we have endless trouble with people setting weird
    umask() values (usually on the grounds of "security"), and then
    everything breaking. I'm on the hook to fix these. We'd like to add
    debugging to our program so we can dump out the umask in debug reports.

    Previous versions of the patch used a syscall so you could only read
    your own umask. That's all I need. However there was quite a lot of
    push-back from those, so this new version exports it in /proc.

    See:
    https://lkml.org/lkml/2016/4/13/704 [umask2]
    https://lkml.org/lkml/2016/4/13/487 [getumask]

    Signed-off-by: Richard W.M. Jones
    Acked-by: Konstantin Khlebnikov
    Acked-by: Jerome Marchand
    Acked-by: Kees Cook
    Cc: "Theodore Ts'o"
    Cc: Michal Hocko
    Cc: Pierre Carrier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard W.M. Jones
     
  • debug_stat sysfs is read-only and represents various debugging data that
    zram developers may need. This file is not meant to be used by anyone
    else: its content is not documented and will change any time w/o any
    notice. Therefore, the output of debug_stat file contains a version
    string. To avoid any confusion, we will increase the version number
    every time we modify the output.

    At the moment this file exports only one value -- the number of
    re-compressions, IOW, the number of times compression fast path has
    failed. This stat is temporary any will be useful in case if any
    per-cpu compression streams regressions will be reported.

    Link: http://lkml.kernel.org/r/20160513230834.GB26763@bbox
    Link: http://lkml.kernel.org/r/20160511134553.12655-1-sergey.senozhatsky@gmail.com
    Signed-off-by: Sergey Senozhatsky
    Signed-off-by: Minchan Kim
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sergey Senozhatsky
     
  • Remove the internal part of max_comp_streams interface, since we
    switched to per-cpu streams. We will keep RW max_comp_streams attr
    around, because:

    a) we may (silently) switch back to idle compression streams list and
    don't want to disturb user space

    b) max_comp_streams attr must wait for the next 'lay off cycle'; we
    give user space 2 years to adjust before we remove/downgrade the attr,
    and there are already several attrs scheduled for removal in 4.11, so
    it's too late for max_comp_streams.

    This slightly change a user visible behaviour:

    - First, reading from max_comp_stream file now will always return the
    number of online CPUs.

    - Second, writing to max_comp_stream will not take any effect.

    Link: http://lkml.kernel.org/r/20160503165546.25201-1-sergey.senozhatsky@gmail.com
    Signed-off-by: Sergey Senozhatsky
    Cc: Minchan Kim
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sergey Senozhatsky
     
  • This patch introduces z3fold, a special purpose allocator for storing
    compressed pages. It is designed to store up to three compressed pages
    per physical page. It is a ZBUD derivative which allows for higher
    compression ratio keeping the simplicity and determinism of its
    predecessor.

    This patch comes as a follow-up to the discussions at the Embedded Linux
    Conference in San-Diego related to the talk [1]. The outcome of these
    discussions was that it would be good to have a compressed page
    allocator as stable and deterministic as zbud with with higher
    compression ratio.

    To keep the determinism and simplicity, z3fold, just like zbud, always
    stores an integral number of compressed pages per page, but it can store
    up to 3 pages unlike zbud which can store at most 2. Therefore the
    compression ratio goes to around 2.6x while zbud's one is around 1.7x.

    The patch is based on the latest linux.git tree.

    This version has been updated after testing on various simulators (e.g.
    ARM Versatile Express, MIPS Malta, x86_64/Haswell) and basing on
    comments from Dan Streetman [3].

    [1] https://openiotelc2016.sched.org/event/6DAC/swapping-and-embedded-compression-relieves-the-pressure-vitaly-wool-softprise-consulting-ou
    [2] https://lkml.org/lkml/2016/4/21/799
    [3] https://lkml.org/lkml/2016/5/4/852

    Link: http://lkml.kernel.org/r/20160509151753.ec3f9fda3c9898d31ff52a32@gmail.com
    Signed-off-by: Vitaly Wool
    Cc: Seth Jennings
    Cc: Dan Streetman
    Cc: Vlastimil Babka
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vitaly Wool
     
  • Signed-off-by: Eric Engestrom
    Cc: Jonathan Corbet
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eric Engestrom
     
  • Commit da47b4572056 ("phy: add support for a reset-gpio specification")
    causes the following xtensa qemu crash according to Guenter Roeck:

    [ 9.366256] libphy: ethoc-mdio: probed
    [ 9.367389] (null): could not attach to PHY
    [ 9.368555] (null): failed to probe MDIO bus
    [ 9.371540] Unable to handle kernel paging request at virtual address 0000001c
    [ 9.371540] pc = d0320926, ra = 903209d1
    [ 9.375358] Oops: sig: 11 [#1]

    This reverts commit da47b4572056487fd7941c26f73b3e8815ff712a.

    Reported-by: Guenter Roeck
    Signed-off-by: Fabio Estevam
    Acked-by: Florian Fainelli
    Tested-by: Guenter Roeck
    Signed-off-by: David S. Miller

    Fabio Estevam
     
  • Pull devicetree updates from Rob Herring:

    - Rewrite of the unflattening code to avoid recursion and lessen the
    stack usage.

    - Rewrite of the phandle args parsing code to get rid of the fixed args
    size. This is needed for IOMMU code.

    - Sync to latest dtc which adds more dts style checking. These
    warnings are enabled with "W=1" compiles.

    - Tegra documentation updates related to the above warnings.

    - A bunch of spelling and other doc fixes.

    - Various vendor prefix additions.

    * tag 'devicetree-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (52 commits)
    devicetree: Add Creative Technology vendor id
    gpio: dt-bindings: add ibm,ppc4xx-gpio binding
    of/unittest: Remove unnecessary module.h header inclusion
    drivers/of: Fix build warning in populate_node()
    drivers/of: Fix depth when unflattening devicetree
    of: dynamic: changeset prop-update revert fix
    drivers/of: Export of_detach_node()
    drivers/of: Return allocated memory from of_fdt_unflatten_tree()
    drivers/of: Specify parent node in of_fdt_unflatten_tree()
    drivers/of: Rename unflatten_dt_node()
    drivers/of: Avoid recursively calling unflatten_dt_node()
    drivers/of: Split unflatten_dt_node()
    of: include errno.h in of_graph.h
    of: document refcount incrementation of of_get_cpu_node()
    Documentation: dt: soc: fix spelling mistakes
    Documentation: dt: power: fix spelling mistake
    Documentation: dt: pinctrl: fix spelling mistake
    Documentation: dt: opp: fix spelling mistake
    Documentation: dt: net: fix spelling mistakes
    Documentation: dt: mtd: fix spelling mistake
    ...

    Linus Torvalds
     
  • Pull power supply and reset updates from Sebastian Reichel:

    - alternative reset driver for new at91 SoCs

    - misc fixes

    * tag 'for-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply:
    sbs-battery: fix power status when battery charging near dry
    power: ipaq-micro-battery: freeing the wrong variable
    power/max8925: freeing wrong variable
    power: reset: at91-shdwc: add new shutdown controller driver
    ARM: dts: at91: shdwc binding: add new shutdown controller documentation

    Linus Torvalds