• Immutable Page
  • Info
  • Attachments

Linux 4.10

Linux 4.10 was released on 19 Feb 2017.

Summary: This release adds support for virtualized GPUs, a new 'perf c2c' tool for cacheline contention analysis in NUMA systems, a new 'perf sched timehist' command for a detailed history of task scheduling, improved writeback management that should make the system more responsive under heavy writing load, a new hybrid block polling method that uses less CPU than pure polling, support for ARM devices such as the Nexus 5 & 6 or Allwinner A64, a feature that allows to attach eBPF programs to cgroups, an experimental MD RAID5 writeback cache, support for Intel Cache Allocation Technology, and many other improvements and new drivers.

  1. Prominent features
    1. Virtual GPU support
    2. New 'perf c2c' tool, for cacheline contention analysis
    3. Detailed history of scheduling events with perf sched timehist
    4. Improved writeback management
    5. Hybrid block polling
    6. Better support for ARM devices such as Nexus 5 & 6 or Allwinner A64
    7. Allow attaching eBPF programs to cgroups
    8. Experimental MD raid5 writeback cache and FAILFAST support
    9. Support for Intel Cache Allocation Technology
  2. Core (various)
  3. File systems
  4. Memory management
  5. Block layer
  6. Tracing and perf tool
  7. Virtualization
  8. Security
  9. Graphics
  10. Networking
  11. Architectures
  12. Drivers
    1. Graphics
    2. Storage
    3. Drivers in the Staging area
    4. Networking
    5. Audio
    6. Tablets, touch screens, keyboards, mouses
    7. TV tuners, webcams, video capturers
    8. Universal Serial Bus
    9. Serial Peripheral Interface (SPI)
    10. Watchdog
    11. Serial
    12. ACPI, EFI, cpufreq, thermal, Power Management
    13. Real Time Clock (RTC)
    14. Voltage, current regulators, power capping, power supply
    15. Pin Controllers (pinctrl)
    16. Multi Media Card (MMC)
    17. Industrial I/O (iio)
    18. Multi Function Devices (MFD)
    19. Pulse-Width Modulation (PWM)
    20. Inter-Integrated Circuit (I2C)
    21. Hardware monitoring (hwmon)
    22. General Purpose I/O (gpio)
    23. Leds
    24. DMA engines
    25. Clocks
    26. PCI
    27. Various
  13. List of merges
  14. Other news sites

1. Prominent features

1.1. Virtual GPU support

This release adds support for Intel GVT-g for KVM (a.k.a. KVMGT), a full GPU virtualization solution with mediated pass-through, starting from 4th generation Intel Core (Haswell) processors with Intel Graphics. This feature is based on a new VFIO Mediated Device framework. Unlike direct pass-through alternatives, the mediated device framework allows KVMGT to offer a complete virtualized GPU with full GPU features to each one of the virtualized guests, with part of performance critical resources directly assigned, while still having performance close to native. The capability of running native graphics driver inside a VM, without hypervisor intervention in performance critical paths, achieves a good balance among performance, feature, and sharing capability.

For more details, see these papers:

A Full GPU Virtualization Solution with Mediated Pass-Through

KVMGT: a Full GPU Virtualization Solution

vGPU on KVM (video)

Intel GVT main site

Code: VFIO Mediated device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit; KVMGT (merge); Intel GVT-g (merge)

1.2. New 'perf c2c' tool, for cacheline contention analysis

In modern systems with multiple processors, different memory modules are physically connected to different CPUs. In these NUMA systems, memory accesses to the local memory are faster than accesses to the memory connected to other processors. When a task is multi-threaded, different threads can run in different CPUs at the same time; if these threads try to access and modify the same memory, they can have performance issues due to the costs of synchronizing the CPU caches.

perf c2c (for "cache to cache") is a new tool designed to analyse and track down performance problems caused by false sharing on NUMA systems. The tool is based on x86's load latency and precise store facility events provided by Intel CPUs. At a high level, perf c2c will show you:

  • The cachelines where false sharing was detected.

  • The readers and writers to those cachelines, and the offsets where those accesses occurred.

  • The pid, tid, instruction addr, function name, binary object name for those readers and writers.

  • The source file and line number for each reader and writer.

  • The average load latency for the loads to those cachelines.

  • Which numa nodes the samples a cacheline came from and which CPUs were involved.

and more. For more details on perf c2c and how to use it, see https://joemario.github.io/blog/2016/09/01/c2c-blog/

Code: (merge)

1.3. Detailed history of scheduling events with perf sched timehist

'perf sched timehist' provides an analysis of scheduling events. Example usage: $ perf sched record -- sleep 1;  perf sched timehist. By default it shows the individual schedule events, including the wait time (time between sched-out and next sched-in events for the task), the task scheduling delay (time between wakeup and actually running) and run time for the task:

           time    cpu  task name         wait time  sch delay  run time 
                         [tid/pid]            (msec)     (msec)    (msec)
        -------- ------  ----------------  ---------  ---------  --------
        1.874569 [0011]  gcc[31949]            0.014      0.000     1.148
        1.874591 [0010]  gcc[31951]            0.000      0.000     0.024
        1.874603 [0010]  migration/10[59]      3.350      0.004     0.011
        1.874604 [0011]  <idle>                1.148      0.000     0.035
        1.874723 [0005]  <idle>                0.016      0.000     1.383
        1.874746 [0005]  gcc[31949]            0.153      0.078     0.022

For more details, see this article from Brendan Gregg: perf sched for Linux CPU scheduler analysis

Code: (merge)

1.4. Improved writeback management

Since the dawn of time, the way Linux synchronizes to disk the data written to memory by processes (aka. background writeback) has sucked. When Linux writes all that data in the background, it should have little impact on foreground activity. That's the definition of background activity...But for a long as it can be remembered, heavy buffered writers have not behaved like that. For instance, if you do something like $ dd if=/dev/zero of=foo bs=1M count=10k, or try to copy files to USB storage, and then try and start a browser or any other large app, it basically won't start before the buffered writeback is done, and your desktop, or command shell, feels unreponsive. These problems happen because heavy writes -the kind of write activity caused by the background writeback- fill up the block layer, and other IO requests have to wait a lot to be attended (for more details, see the LWN article).

This release adds a mechanism that throttles back buffered writeback, which makes more difficult for heavy writers to monopolize the IO requests queue, and thus provides a smoother experience in Linux desktops and shells than what people was used to. The algorithm for when to throttle can monitor the latencies of requests, and shrinks or grows the request queue depth accordingly, which means that it's auto-tunable, and generally, a user would not have to touch the settings. This feature needs to be enabled explicitly in the configuration (and, as it should be expected, there can be regressions)

Recommended LWN article: Toward less-annoying background writeback

Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

1.5. Hybrid block polling

Linux 4.4 added support for polling requests in the block layer, a similar approach to what NAPI does for networking, which can improve performance for high-throughput devices (e.g. NVM). Continuously polling a device, however, can cause excessive CPU consumption and some times even worse throughput. This release includes a new hybrid, adaptative type of polling. Instead of polling after IO submission, the kernel induces an artificial delay, and then polls after that. For example, if the IO is presumed to complete in 8 μsecs from now, the kernel sleep for 4 μsecs, wake up, and then does the polling. This still puts a sleep/wakeup cycle in the IO path, but instead of the wakeup happening after the IO has completed, it'll happen before. With this hybrid scheme, Linux can achieve big latency reductions while still using the same (or less) amount of CPU. Thanks to improved statistics gathering included in this release, the kernel can measure the completion time of requests and calculate how much it should sleep.

The hybrid block polling is disabled by default. A new sysfs file, /sys/block/<dev>/queue/io_poll_delay has been added, which makes the polling behave as follows: -1: never enter hybrid sleep, always poll (default); 0: Use half of the completion mean for this request type for the sleep delay (aka: hybrid poll); >0: disregard the mean value calculated by the kernel, and always use this specific value as the sleep delay.

Code: commit, commit, commit

1.6. Better support for ARM devices such as Nexus 5 & 6 or Allwinner A64

As an evidence of the work being done to bring Android and mainline kernels together, this release includes support for ARM socs such as:

  • Huawei Nexus 6P (Angler)

  • LG Nexus 5X (Bullhead)

  • Nexbox A1 and A95X Android TV boxes

  • Pine64 development board based on Allwinner A64

  • Globalscale Marvell ESPRESSOBin community board based on Armada 3700

  • Renesas "R-Car Starter Kit Pro" (M3ULCB) low-cost automotive board

Code: (merge)

1.7. Allow attaching eBPF programs to cgroups

This release adds eBPF hooks for cgroups, to allow eBPF programs for network filtering and accounting to be attached to cgroups, so that they apply to all sockets of all tasks placed in that cgroup. A new BPF program type is added, BPF_PROG_TYPE_CGROUP_SKB. The bpf(2) syscall is extended with by two new commands, BPF_PROG_ATTACH and BPF_PROG_DETACH, which allow attaching and detaching eBPF programs to a target. This feature is configurable (CONFIG_CGROUP_BPF).

Recommended LWN article: Network filtering for control groups

Code: commit, commit, commit, commit, commit, commit

This release also adds a new cgroup-based program type, BPF_PROG_TYPE_CGROUP_SOCK. Similar to BPF_PROG_TYPE_CGROUP_SKB programs can be attached to a cgroup and run any time a process in the cgroup opens an AF_INET or AF_INET6 socket. Currently only sk_bound_dev_if is exported to userspace for modification by a bpf program.

Code: commit, commit, commit, commit, commit, commit, commit

1.8. Experimental MD raid5 writeback cache and FAILFAST support

This release implements a raid5 writeback cache in the MD subsystem (Multiple Devices). Its goal is to aggregate writes to make full stripe write and reduce read-modify-write. It's helpful for workload which does sequential write and follows fsync for example.

This feature is experimental and off by default.

Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

This release also adds "failfast" support. RAID disk with failed IOs are marked as broken quickly, and avoided in the future, which can improve latency.

Code: commit, commit, commit, commit, commit, commit

1.9. Support for Intel Cache Allocation Technology

A Intel feature that allows to set policies on the L2/L3 CPU caches; e.g. real-time tasks could be assigned dedicated cache space. For more details, read the recommended LWN article: Controlling access to the memory cache.

Code: commit, commit, commit, commit, commit, commit, commit, commit, commit

2. Core (various)

  • Kernel configuration system: Introduce the "imply" keyword. The "imply" keyword is a weak version of "select" where the target config symbol can still be turned off, avoiding those pitfalls that come with the "select" keyword. This is useful e.g. with multiple drivers that want to indicate their ability to hook into a secondary subsystem while allowing the user to configure that subsystem out without also having to unset these drivers commit

  • To cover the needs of some systems where suspend-to-idle is the preferred suspend method, rework the system sleep state selection interface (but preserve backwards compatibiliby). A new sysfs file, /sys/power/mem_sleep is added, that will control the system suspend mode triggered when writing mem to /sys/power/state (in analogy with what /sys/power/disk does for hibernation). It selects suspend-to-RAM (deep sleep) by default (if supported) and fall back to suspend-to-idle (s2idle) otherwise and add a new command line argument, mem_sleep_default, allowing that default to be overridden if need be commit

  • Task scheduler: Add support for tasks that inject idle, used by some idle injection drivers such as Intel powerclamp and ACPI PAD drivers commit

  • initramfs: allow again choice of the embedded initram compression algorithm commit

  • posix-timers: Make them configurable, removing about 25 KB from the kernel binary size when configured out. Corresponding syscalls are routed to a stub logging the attempt to use them commit

  • printk: add Kconfig option to set default console loglevel commit

  • Documentation: create an user's manual book commit

  • driver core: Functional dependencies tracking support documentation, commit

  • driver-core: add test module for asynchronous probing commit

  • iomap: implement direct I/O path commit

  • Extend rodata=off boot cmdline parameter to module mappings commit

  • swiotlb: Add  swiotlb=noforce debug option to aid debugging and catch devices not supporting DMA to memory outside the 32-bit address space commit

3. File systems

  • OverlayFS

    • When copying up within the same fs, try to use clone copies commit

    • Allow renaming a directory with backwards incompatible feature "redirect_dir" commit, commit, commit, commit

  • ext4

    • Forbid data journaling when data is encrypted commit

    • DAX iomap support commit

  • F2FS

    • Support multiple devices commit

  • NFS

    • Add support for a new NFSv4.2 mode_umask attribute that makes ACL inheritance a little more useful in environments that default to restrictive umasks commit, commit


    • Add support for file encryption using the fscrypt framework (merge)

  • XFS

    • Faster buffer cache lookups commit

    • Use iomap for Direct I/O (much simpler, faster, and has lower IO latency than the existing direct IO infrastructure) commit

    • Deprecate barrier/nobarrier mount option commit

  • CIFS

    • New mount option snapshot=<time> to allow mounting an earlier version of the remote volume commit

    • Fix default behaviour for empty domains and add domainauto option in case the user wants a mechanism for guessing commit

  • BEFS

    • Add NFS export support commit

  • LogFS

    • Remove from tree, as it seems to be broken and unmaintained commit

4. Memory management

  • Memory compaction: Allow compaction for GFP_NOFS requests commit

  • slab: faster active and free stats. Reading /proc/slabinfo or monitoring slabtop(1) can become very expensive if there are many slab caches and if there are very lengthy per-node partial and/or free lists, this release makes it faster commit

  • Enable CONFIG_MOVABLE_NODE (movable memory nodes) on non-x86 arches commit, commit, commit, commit, commit

  • Make transparent hugepage size public in /sys/kernel/mm/transparent_hugepage/hpage_pmd_size commit

5. Block layer

  • Hybrid block polling (FEATURED) commit, commit, commit

  • Zoned block device support (SMR storage). It enables support for ZAC/ZBC host-managed and host-aware zoned block devices commit, commit, commit, commit, commit, commit, commit

  • Improved support for O_DIRECT on block devices commit, commit

  • Device Manager / MD

    • RAID5 write back cache (FEATURED) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

    • failfast support (FEATURED). This fails IOs to broken raid disks quickly, so can improve latency. It's mainly for DASD storage, but some patches help normal raid array too commit, commit, commit, commit, commit, commit

    • dm-crypt: add ability to use keys from the kernel key retention service. Instead of key userspace may pass a key description with preceding ':' commit

    • dm-flakey: introduce "error_writes" feature commit

    • dm block manager: make block locking optional, as it's usually only useful for developers commit

    • md: add bad block support for external metadata commit

  • nvmet: add support for the Write Zeroes command commit

  • bcache: partition support: add 16 minors per bcacheN device commit

  • nbd: add multi-connection support commit

  • brd: remove support for BLKFLSBUF ioctl commit

6. Tracing and perf tool

  • New perf c2c tool (FEATURED) (merge)

  • Cross-architecture annotation support: AArch64 support commit, initial PowerPC support commit

  • perf sched timehist (FEATURED) (merge)

  • Allow considering just events in a given time interval, via the --time start.s.ms,end.s.ms command line, added to perf kmem, perf report, perf sched timehist and perf script commit, commit, commit, commit

  • perf script: Add option (--stop-bt to stop printing callchain at one of a given group of symbol names commit

  • perf kmem stat: track freed memory as well as allocations and show the net in the summary commit

  • Allow querying and setting .perfconfig variables through command perf config commit, commit

  • perf report: Show branch information in callchains (predicted, TSX aborts, loop iterations, etc) commit, commit

  • Dynamicly change verbosity level by pressing 'V' in the perf top/report hists TUI browser, so that info that is present in perf top -v can be obtained without having to restart the tool commit

  • Implement perf trace --delay in the same fashion as in perf record --delay, to skip sampling workload initialization events commit

  • Add unwinding support for jitdump commit, commit

  • perf list: Support matching by topic commit

  • Add initial support for tooling hooks, they allow hooking user code at perf events and can be used for manipulation of BPF maps, taking snapshot and reporting results. In this release two perf hook points are introduced: record_start and record_end commit

  • Add JSON files with vendor event naming for Intel and POWER8 processors, allowing users of tools like oprofile to keep using the event names they are used to, as well as people reading vendor documentation, where such naming is used. Code: Add Bonnell event file commit, add Broadwell commit, add BroadwellDE commit, add BroadwellX commit, add Goldmont commit, add Haswell commit, add HaswellX commit, add IvyBridge commit, add IvyTown commit, add Jaketown commit, add KnightsLanding commit, add NehalemEP commit, add NehalemEX commit, add SandyBridge commit, add Silvermont commit, add Skylake commit, add WestmereEP-DP commit, add WestmereEP-SP commit, add WestmereEX commit, add POWER8 PMU commit, add more POWER8 PVRs commit

  • ftrace

    • Support flexible glob wildcards (*,?) and character classes ([). E.g. # echo '[Ss]y[Ss]_*' > set_ftrace_filter commit

    • Add new file /sys/kernel/debug/tracing/trace_marker_raw. It allows for appications to create data structures and write the binary data directly into it, and then read the trace data out from trace_pipe_raw into the same type of data structure. This saves on converting numbers into ASCII that would be required by trace_marker commit

    • STM can hook into the function tracer with the help of a new ftrace-export-over-stm driver commit

7. Virtualization

8. Security

  • audit: add support for session ID user filter commit

  • crypto layer: Add asynchronous compression API. The Asynchronous Compression API is used with the algorithms of type CRYPTO_ALG_TYPE_ACOMPRESS (listed as type "acomp" in /proc/crypto) commit, commit, commit, commit, commit, commit, commit, commit, commit

9. Graphics

  • Explicit fencing support. Explicit fencing allows userspace to control the buffer synchronization between devices. A fence or a group of fences are transferred to/from userspace using Sync File fds and there are two DRM properties for that. IN_FENCE_FD on each DRM plane to send fences to the kernel and OUT_FENCE_PTR on each DRM CRTC to receive fences from the kernel documentation, commit, commit, commit

  • Add API for capturing frame CRCs commit

  • Add support for optional per-plane rotation property commit

  • atomic: add debugfs file to dump out atomic state commit

10. Networking

  • Add eBPF hooks for cgroups (FEATURED) commit, commit, commit, commit, commit, commit

  • Enables the running of programs that do not support SO_BINDTODEVICE in a specific VRF context / L3 domain with the help of ebpf cgroup support (FEATURED) commit, commit, commit, commit, commit, commit

  • BPF for lightweight tunnel encapsulation commit, https://git.kernel.org/torvalds/c/f74599f7c5309b21151233b98139e9b723fd1110

  • Add support for per-UID routing. It allows the administrator to configure rules such as: # ip rule add uidrange 100-200 lookup 123. This functionality has been in use by all Android devices since 5.0. It is primarily used to impose per-app routing policies (on Android, every app has its own UID) without having to resort to rerouting packets in iptables, which breaks getsockname() and MTU/MSS calculation, and generally disrupts end-to-end connectivity commit, commit, commit

  • IPv4/v6: Add IP_RECVFRAGSIZE and IPV6_RECVFRAGSIZE cmsg to expose the maximum fragment size if recorded so that applications can estimate the receive path MTU commit, commit

  • IPv4: Enable support for Virtual Routing and Forwarding with ipv4 multicast commit

  • IPv6: Implemented enhanced Duplicate Address Detection (RFC 7527) commit

  • IPv6: Add support for IPv6 Segment Routing. Segment Routing is a source routing paradigm, architecturally defined in draft-ietf-spring-segment-routing-09. The IPv6 flavor of SR is defined in draft-ietf-6man-segment-routing-header-02. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

  • TCP: sender chronographs instrumentation. This feature exports the sender chronograph stats via the socket SO_TIMESTAMPING channel. Currently it can instrument how long a particular application unit of data was queued in TCP by tracking SOF_TIMESTAMPING_TX_SOFTWARE and SOF_TIMESTAMPING_TX_SCHED. Having these sender chronograph stats exported simultaneously along with these timestamps allow further breaking down the various sender limitation. For example, a video server can tell if a particular chunk of video on a connection takes a long time to deliver because TCP was experiencing small receive window commit, commit, commit, commit, commit, commit

  • TCP: randomize TCP timestamp offsets for each connection. It changes the meaning of the tcp_timestamps sysctl commit, commit

  • UDP: use it's own memory accounting schema (improves performance) commit

  • Add an ioctl to get a socket network namespace. It introduces a new socket ioctl, which is called SIOCGSKNS and used to get a file descriptor for a socket network namespace commit

  • Add diag interface for raw sockets, to be able to collect sockets present in the system, just as it can be done for unix, tcp, udp[lite], packet, netlink commit

  • openvswitch: support for layer 3 encapsulated packets commit, commit, commit, commit, commit, commit, commit, commit

  • Netfilter

    • Add support for stateful objects, providing a nf_tables native alternative to nfacct, the extended accounting infrastructure. Two initial stateful objects are supported: counters and quotas. Stateful objects are uniquely identified by a user-defined name and you have to attach them to tables, you can fetch and reset them anytime. You can also use a maps to allow fast lookups using any arbitrary key combination More info. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

    • Introduce an nftables rt expression for routing related data with support for nexthop (i.e. the directly connected IP address that an outgoing packet is sent to), which can be used either for matching or accounting, e.g. # nft add rule filter postrouting ip daddr rt nexthop != drop, this will drop any traffic to that is not routed via commit

    • Allow disabling conntrack-on-by-default. When net namespaces are added, netfilter hooks that where already registered are inherited. This means that once nf_conntrack_ipv4/6.ko is loaded, all existing and future net namespaces do connection tracking. This series adds a new sysctl, nf_conntrack_default_on, that can be set to 0 to disable this behaviour. Connection tracking is enabled via packet filter ruleset, regardless of the sysctl setting, once a rule that needs conntrack functionality is added (e.g. iptables -m conntrack) commit, commit, commit, commit, commit, commit, commit

    • Add the FIB expression to query fib for oif and route/address type commit

    • Add support to flush sets in nf_tables commit, commit, commit

    • Add notrack expression commit

    • xt_bpf: Add support for attaching an eBPF object by file descriptor. The iptables binary can be called with a path to an elf object or a pinned bpf object commit

  • sched/act_mirred: Implement the corresponding ingress actions TCA_INGRESS_REDIR and TCA_INGRESS_MIRROR (Up until now, action mirred supported only egress actions (either TCA_EGRESS_REDIR or TCA_EGRESS_MIRROR). This allows attaching filters whose target is to hand matching skbs into the rx processing of a specified device commit, commit, commit, commit

  • sched/cls_flower: offloading tc rules using underline Hardware device. This adds flower classifier support in offloading tc rules when the Software ingress device is different from the Hardware ingress device, such as when dealing with IP tunnels commit, commit, commit, commit, commit

  • sched/cls_flower: Add the user API to provide set of flags for matching, where the flags provided from user-space are mapped to flow-dissector flags commit

  • sched/cls_flower: Add support for matching on ICMP type commit, commit

  • Enables proper isolation between traffic classes when using XPS while DCB is enabled. Previously enabling XPS would cause the traffic to be potentially pulled from one traffic class into another on egress commit, commit, commit, commit

  • Add support for IGMPv3 and MLDv2 querier in the bridge. Two new options which can be toggled via netlink and sysfs are added that control the version per-bridge: multicast_igmp_version - default 2, can be set to 3; and multicast_mld_version - default 1, can be set to 2 commit, commit

  • BPF

    • Add the LRU versions of the existing BPF_MAP_TYPE_HASH and BPF_MAP_TYPE_PERCPU_HASH maps: BPF_MAP_TYPE_LRU_HASH and BPF_MAP_TYPE_LRU_PERCPU_HASH sample, commit, commit, commit, commit, commit

    • Add support for symlinks and fix mtime/ctime commit

    • Allow for mount options to specify permissions commit

    • Allow head adjustment in XDP prog commit

  • 802.11 (WiFI)

    • Add support for using drivers with Fast Initial Link Setup as defined in IEEE 802.11ai (to be published). It is a function that would enable a wireless LAN client to achieve a secure link setup within 100 ms. This release covers only the FILS authentication/association functionality from IEEE 802.11ai, i.e., the other changes like scanning optimizations are not included commit, commit, commit, commit, commit, commit, commit, commit, commit

    • Deprecate legacy WDS and disable by default commit

  • B.A.T.M.A.N.: Simple (re)broadcast avoidance commit

  • ethtool: Implements ETHTOOL_PHY_GTUNABLE and ETHTOOL_PHY_STUNABLE to get and set PHY tunables commit

  • Bluetooth: Add support for H7 crypto that's used when both sides set the CT2 auth flag. It is necessary for Bluetooth 5.0 support commit

11. Architectures

  • ARM

    • Add sysfs /sys/devices/system/cpu/cpu*/cpu_capacity attribute commit

    • Device trees:

      • BCM5301X: Add DT for Luxul XAP-1510 commit, for Luxul XWR-3100 commit, for Netgear R8500 commit, for TP-LINK Archer C9 V1 commit, for BCM53573 based Tenda AC9 commit

      • AM571x-IDK Initial Support commit

      • Add MDM9615 dtsi commit

      • Add STM32F746 MCU and STM32746g-EVAL board commit

      • Add Sierra Wireless WP8548 dtsi commit

      • Add WP8548 based MangOH Green board DTS commit

      • Add minimal support for Motorola Droid 4 xt894 commit

      • Add support for OX820 and Pogoplug V3 commit

      • Add support for dra718-evm commit

      • add support for Turris Omnia commit

      • exynos: Add TOPEET itop elite based board commit

      • imx6: Add support for Toradex Colibri iMX6 module commit

      • imx6q: Add Engicam i.CoreM6 DualLite/Solo initial support commit

      • imx6q: Add Engicam i.CoreM6 Quad/Dual initial support commit

      • imx6sx: Add UDOO Neo support commit

      • imx6ul: Add DTS for liteBoard commit

      • imx6ul: Add DTS for liteSOM module commit

      • imx6ull: add imx6ull support commit

      • imx: add Boundary Devices Nitrogen6_SOM2 support commit

      • pxa: add pxa25x .dtsi file commit

      • r8a7743: initial SoC device tree commit

      • r8a7745: initial SoC device tree commit

      • rockchip: Add rk3066 MK808 board commit, add basic support for RK1108 SOC commit, add Rockchip PX3 Evaluation board commit, add Rockchip RK1108 Evaluation board commit

      • sk-rzg1e: initial device tree commit

      • sk-rzg1m: initial device tree commit

      • socfpga: Add Macnica sodia board commit

      • sun8i: Add dts file for NanoPi M1 SBC commit

      • OMAP2+: board-generic: add support for DRA71x family commit

      • shmobile: r8a7743: basic SoC support commit

      • shmobile: r8a7745: basic SoC support commit

    • coresight: Add support for ARM Coresight STM-500 commit, etm3x: Adding missing features of Coresight PTM components commit

    • ARM64

      • Add uprobe support commit

      • dump: Make ptdump debugfs a separate option commit

      • Add sysfs /sys/devices/system/cpu/cpu*/cpu_capacity attribute commit

      • Device Tree Sources

        • amlogic: Add basic support for Amlogic S905D commit and for Amlogic S905X commit

        • meson-gxbb: Add support for the Nexbox A95X Board commit

        • meson-gxl: Add support for Nexbox A95X commit

        • meson-gxm: Add support for the Nexbox A1 commit

        • Add Allwinner A64 SoC .dtsi commit

        • Add LS1046A-QDS board support commit

        • Add LS1046A-RDB board support commit

        • Add Pine64 support commit

        • Add QorIQ LS1046A SoC support commit

        • exynos: Add dts file for Exynos5433-based TM2 board commit, add dts file for Exynos5433-based TM2E board commit, add dtsi files for Samsung Exynos5433 64bit SoC commit

        • hisilicon: Add initial dts for Hip07 D05 board commit

        • m3ulcb: initial device tree commit

        • marvell: Add definition for the Globalscale Marvell ESPRESSOBin Board commit

        • msm8992 SoC and LG Bullhead (Nexus 5X) support commit

        • msm8994 SoC and Huawei Angler (Nexus 6P) support commit

        • rockchip: Add PX5 Evaluation board commit

        • tegra: Add NVIDIA P2771 board support commit

        • zynq: Add MicroZed board support commit

    • mach-stm32: Add a new SOC - STM32F746 commit

    • imx: Added perf functionality to mmdc driver commit

    • oxnas: Add OX820 SMP support commit

    • socfpga: FPGA bridge driver support commit

    • ACPI APEI initial support for ARM64 commit

  • x86

    • Intel Resource Director Technology Allocation support (FEATURED) commit, commit, commit, commit, commit, commit, commit, commit, commit

    • Expose cache id in /sys/devices/system/cpu/cpu*/cache/index*/ commit

    • Enable new AVX512 cpu features commit

    • vDSO getcpu() performance improvement for future Intel CPUs with the RDPID instruction commit

    • Remove kernel text addresses from stack dump commit, remove raw stack dump commit

    • Hard-disable lazy FPU mode commit

    • Support Intel Turbo Boost Max Technology 3.0 that allows some cores to be boosted to higher turbo frequency than others, and add /proc/sys/kernel/sched_itmt_enabled file to enable it commit, commit

    • vmware: paravirt improvements commit, commit

    • KVM: add APIC Timer periodic/oneshot mode VMX preemption timer support commit

    • KVM: Expose Intel AVX512IFMA/AVX512VBMI/SHA features to guest. commit

    • KVM: emulate FXSAVE and FXRSTOR commit

    • KVM: Add AVX512_4VNNIW and AVX512_4FMAPS support commit

    • EDAC: add AMD Zen support to amd64_edac commit, commit, commit, commit

    • EDAC: sb_edac: Add Intel Knights Mill support commit

    • intel_th: Support Host Debugger mode of operation commit

    • raid6: Add AVX2 optimized xor_syndrome functions commit

    • Platforms

      • Add Whiskey Cove PMIC TMU support commit

      • Surface 3: Add custom surface3 platform device for controlling LID commit, introduce button support for the Surface 3 commit

      • Introduce support for Mellanox hotplug driver commit

      • intel_pmc_core: Add KBL CPUID support commit, add LTR IGNORE debug feature commit, add MPHY PLL clock gating status commit, add PCH IP Power Gating Status commit, modPhy core lanes pg status commit

      • thinkpad_acpi: Add support for X1 Yoga (2016) Tablet Mode commit, adding new hotkey ID for Lenovo Thinkpad commit

    • amd_nb: Add SMN and Indirect Data Fabric access for AMD Fam17h commit

    • Get rid of the show_msr= boot option commit

    • intel_idle: Add CPU model 0x4a (Atom Z34xx series) commit, Add Knights Mill CPUID commit

  • PPC

    • Add kexec support commit

    • KVM: Book3S HV: Add new POWER9 guest-accessible SPRs commit

    • 8xx: Implement support of hugepages commit

    • debugging: Dump hash table commit, dump Linux pagetables commit

    • xmon: Add 'dt' command to dump trace buffers commit

    • Add option to use thin archives commit

    • THP page cache support for ppc64 commit

  • S390

    • zcrypt: Introduce new zcrypt device status API commit, add multi domain support commit

  • M68K

    • Add Sysam AMCORE open board support commit


    • Support User Probes for sparc commit

  • OpenRISC

    • Add thread-local storage (TLS) support commit


12. Drivers

12.1. Graphics

  • Add initial ZTE VOU display driver commit

  • Add driver for Amlogic Meson Graphic Controller on GXBB/GXL/GXM socs commit

  • Add driver for MXSFB controller commit

  • Intel

    • Add GVT-g device model, which allows the virtualization of GPU resources (merge), (merge)

    • GPU scheduler and priority boosting commit, commit

    • Add a relay backed debugfs interface for capturing GuC logs commit

    • Add stats for GuC log buffer flush interrupts commit

    • Debugfs support for GuC logging control commit

    • Show RING registers through debugfs commit

  • amdgpu

    • Support for virtual devices

    • New VM manager for non-contig VRAM buffers commit

    • Add Polaris 12 support commit, commit, commit

    • UVD powergating

    • Export VBIOS information commit

    • Expose fan rpm though hwmon commit

    • Add info ioctl query for vce clock info commit

    • Add one more Fiji device id commit

    • Add debugfs support for reading GPRs (v2) commit

  • nouveau

    • Atomic modesetting support (merge)

    • Displayport Multistream (MST) support (merge)

    • Support for GP102 commit and GP106 chipset commit

    • Add a LED driver for the Nvidia logo commit

  • hisilicon

  • rcar-du

  • sunxi

  • imx-drm

  • vc4

  • msm

    • A5XX GPU support commit

    • add debugfs to show smp block status commit

    • module param to dump state on error irq commit

  • etnaviv

    • DRAW_INSTANCED support commit

  • bridge

  • panel

    • Add support for Chunghwa CLAA070WP03XG panel commit

    • simple: Add NVD9128 as a simple panel commit, add support for AUO G133HAN01 commit, add support for AUO G185HAN01 commit, add support for AUO T215HVN01 commit, add support for Sharp LQ150X1LG11 panels commit

  • fsl-dcu: introduce kernel parameter to specify fbdev depth commit

  • sun4i: Add a few formats commit

  • mali-dp: Add support for setting plane's rotation property from userspace. commit

  • gpu: ipu-v3: add YUV 4:4:4 support commit

12.2. Storage

  • ata: Support ATA Command Priorities, they are disabled by default commit, commit

  • ahci: qoriq: added ls1046a platform support commit

  • SCSI

    • hisi_sas: add PHY set linkrate support for v1 and v2 hw commit, add v2 hw support for ECC and AXI bus fatal error commit

    • hpsa: add 'ctlr_num' sysfs attribute commit

    • mpt3sas: Added Device ID's for SAS35 devices and updated MPI header. commit,increased/Additional MSIX support for SAS35 devices. commit, use the new MPI 2.6 32-bit Atomic Request Descriptors for SAS35 devices. commit

    • qedi: Add QLogic FastLinQ offload iSCSI driver framework. commit

    • qla2xxx: Add Block Multi Queue functionality. commit, add multiple queue pair functionality. commit

    • ufs: add support for UFS HCI 2.1 commit

  • lightnvm: remove sysfs configuration interface commit

  • nvme

    • Support for FC for the nvme-over-fabrics code commit, commit, commit

    • Add the Broadcom OTP controller driver commit

    • Add NXP LPC18xx OTP driver commit

12.3. Drivers in the Staging area

  • iio: ad7192: add DVdd regulator commit

  • iio: ad9832: add DVDD regulator commit

  • lustre: remove Size on MDS support commit

  • slicoss: remove the staging driver commit

12.4. Networking

  • alx: enable multiple tx queues commit, enable msi-x interrupts by default commit

  • amd-xgbe: Add ECC status support for the device memory commit, add I2C support for sideband communication commit, add PCI device support commit, add support for MDIO attached PHYs commit, add support for SFP+ modules commit, add support for a KR redriver commit, add support for clause 37 auto-negotiation commit, perform priority-based hardware FIFO allocation commit

  • ath9k: Switch to using mac80211 intermediate software queues (removes bufferbloat-induced latency) commit

  • ath10k: add per peer htt tx stats support for 10.4 commit, add platform regulatory domain support commit, add spectral scan support to wmi-tlv commit, add support for per sta tx bitrate commit

  • bnxt_en: Add PFC statistics. commit, Add UDP RSS support for 57X1X chips. commit, add ethtool -n|-N rx-flow-hash support. commit, enhance autoneg support. commit, implement DCBNL to support host-based DCBX. commit

  • brcmfmac: add PCIe host dongle interface rev6 support commit, add support for 43341 chip commit

  • cpsw: ethtool: add support for getting/setting EEE registers commit, add support for nway reset commit

  • dpaa_eth: add ethtool functionality commit, add ethtool statistics commit, add support for DPAA Ethernet commit, add sysfs exports commit

  • xgene: Add support for Jumbo frame commit

  • fjes: Add debugfs entry for EP status information in fjes driver commit, enhance ethtool -S for fjes driver commit, ethtool -d support for fjes driver commit, ethtool -w and -W support for fjes driver commit

  • i40e: Add support for 25G devices commit, blink LED on 1G BaseT boards commit

  • i40iw: Add 2MB page support commit, add Quality of Service support commit, enable message packing commit

  • iwlwifi: mvm: enable dynamic queue allocation mode commit

  • ixgbe: Add X553 FW ALEF support commit, remove SFP ixfi support commit

  • lan78xx: add LAN7801 MAC only support commit

  • mlxsw: Introduce support for I2C bus commit, implement thermal zone commit, switchib: Introduce SwitchIB and SwitchIB silicon driver commit, switchx2: Add IB port support commit, switchx2: Add Infiniband switch partition commit, switchx2: Add support for physical port names commit

  • mlx4_en: Add ethtool statistics for XDP cases commit

  • mlx5: Add ConnectX-5 PCIe 4.0 VF device ID commit, add DCBX firmware commands support commit, add SRIOV VF max rate configuration support commit, add multi dest support commit, introduce E-switch QoS management commit, introduce TSAR manipulation firmware commands commit, Mellanox 100G mlx5 SRIOV switchdev update commit, commit, commit, commit, commit, commit, commit

  • mlx5e: Add support to offload rules using the new "egress_device" flag commit, commit, commit, add CQE compression user control commit, add DCBX control interface commit, add TC tunnel release action for SRIOV offloads commit, add basic TC tunnel set action for SRIOV offloads commit, add support for ethtool self diagnostics test commit, add support for loopback self-test commit, connectX-4 firmware support for DCBX commit, implement Fragmented Work Queue (WQ) commit, offload TC matching on packets being IP fragments commit, support DCBX CEE API commit

  • liquidio: VF support merge, merge, merge, merge

  • dsa: mv88e6xxx: add MV88E6097 switch commit, add port 802.1Q mode setter commit, add port duplex setter commit, add port link setter commit, add port's MAC speed setter commit, add port's RGMII delay setter commit, add interrupt support commit

  • altera_tse: add support for SGMII PCS commit

  • bgmac: add NS2 support commit

  • slicoss: add slicoss gigabit Ethernet driver commit

  • ti: cpsw: add .ndo to set per-queue rate commit, netcp: add support of CPTS commit

  • macb: Add ethtool get_ringparam and set_ringparam functionality commit, added PCI wrapper for Platform Driver. commit

  • mvneta: Add network support for Armada 3700 SoC commit

  • qcom/emac: add support for the Qualcomm QDF2400 commit

  • stmmac: Add OXNAS Glue Driver commit

  • thunderx: Add ethtool support for supported ports and link modes. commit, pause frame support commit

  • nfp: Add XDP support in the driver commit, add support for ethtool .get_channels commit, add support for ethtool .set_channels commit, add support for offload of XDP programs commit, remove support for nfp3200 commit

  • qed/qede: add support for WoL commit, handle-based L2-queues. commit, management firmware - notifications and defaults commit

  • qed: Add support for hardware offloaded iSCSI. commit, use VF-queue feature commit

  • qede: Add basic XDP support commit, add support for XDP_TX commit, GSO support for tunnels with outer csum commit

  • qmi_wwan/cdc_ether: add device ID for HP lt2523 (Novatel E371) WWAN card commit

  • r8152: add new products of Lenovo commit

  • r8169: add support for RTL8168 series add-on card. commit

  • rsi: Add support for 802.11d commit, add support for antenna selection commit, add support for configuring tx power commit, add support to filter rx frames commit

  • sfc: Firmware-assisted TSO version 2 commit, enable 4-tuple RSS hashing for UDP commit, remove software TSO commit

  • wil6210: add debugfs blobs for UCODE code and data commit, add support for abort scan commit, add support for power save enable / disable commit

  • cadence: Add LSO support. commit

  • Net PHY

    • Add Meson GXL Internal PHY driver commit

    • Add mdi(x) support in Microsemi PHYs driver commit

    • Add support for Microsemi VSC 8530/40 Fast Ethernet PHY commit

    • Add an option to disable EEE advertisement commit

    • aquantia: add PHY ID of AQR106 and AQR107 commit

    • bcm7xxx: Add support for downshift/Wirespeed commit

    • broadcom: Add support for BCM54612E commit, allow enabling or disabling of EEE commit

    • leds: add support for LED triggers on PHY link state change commit

    • micrel: add support for KSZ8795 commit

    • vitesse: add support for VSC8572 commit

  • Infiniband

    • hfi1: Add active channel and backplane support for integrated devices commit

    • hfi1: Read new EPROM format commit

    • mlx5: Add support for CQE compressing commit

    • mlx5: Make create/destroy_ah available to userspace commit

    • mlx5: Support VXLAN tunneling specification commit

    • rxe: Increase max number of completions to 32k commit

12.5. Audio

  • hda/realtek - Add support for headset MIC for ALC622 commit

  • usb-audio: Add native DSD support for TEAC 501/503 DAC commit

  • ALSA on a chip

    • Add support for CS42L42 codec commit

    • Intel: Add missing 10EC5672 ACPI ID matching for Cherry Trail commit

    • Intel: Skylake: Add D0iX IPCs commit

    • Intel: atom: Add sysfs entry in order to store FW version commit

    • add rt5665 codec driver commit

    • atmel: tse850: add ASoC driver for the Axentia TSE-850 commit

    • codecs: Add msm8916-wcd analog codec commit

    • codecs: Add msm8916-wcd digital codec commit

    • cs35l34: Initial commit of the cs35l34 CODEC driver. commit

    • dapm: Implement stereo mixer control support commit

    • rt5670: Add missing 10EC5072 ACPI ID commit

    • samsung: Add machine driver for Exynos5433 based TM2 board commit

    • samsung: Drop AC'97 drivers commit

    • sun4i-codec: Add support for A23 codec commit, add support for A31 ADC capture path commit, add support for A31 Line In playback commit, add support for A31 Line Out playback commit, add support for A31 analog microphone inputs commit, add support for A31 board level audio routing commit, add support for A31 playback through headphone output commit, add support for H3 codec commit, add support for optional reset control to quirks commit

    • sun4i-i2s: Implement capture support commit

    • sunxi: Add support for A23/A33/H3 codec's analog path controls commit

    • tlv320aic31xx: Add support for tlv320dac3101 commit

    • wm8580: Add the wm8581 codec to the driver commit

12.6. Tablets, touch screens, keyboards, mouses

12.7. TV tuners, webcams, video capturers

  • Add Cinergy S2 rev.4 support commit

  • Add support for EVOLVEO XtraTV stick commit

  • VPU: mediatek: Add decode support commit, add mdp support commit

  • cobalt: add cropcap support commit

  • dvb-usb-dvbsky: Add support for TechnoTrend S2-4650 CI commit

  • exynos-gsc: Add support for Exynos5433 specific version commit

  • Add Mediatek MDP driver commit

  • ti-vpe: vpdma: Add multi-instance and multi-client support commit, vpe: Add RGB565 and RGB5551 support commit, Add proper support single and multi-plane buffer commit

  • mn88473: add DVBv5 statistics support commit

  • pulse8-cec: move out of staging commit

  • s5p-mfc: Add support for MFC v8 available in Exynos 5433 SoCs commit

  • usbtv: add video controls commit

  • uvcvideo: add support for Oculus Rift Sensor commit

  • v4l: Add 16-bit raw bayer pixel formats commit

  • v4l: Add Renesas R-Car FDP1 Driver commit

  • v4l: add Mediatek compressed video block format commit

  • v4l: ctrls: Add deinterlacing mode control commit

  • v4l: vsp1: Add support for capture and output in HSV formats commit

  • mediatek: Add Mediatek H264 Video Decoder Drive commit, add Mediatek V4L2 Video Decoder Driver commit, add Mediatek VP8 Video Decoder Driver commit, add Mediatek VP9 Video Decoder Driver commit

  • vivid: Add support for HSV encoding commit, add support for HSV formats commit

12.8. Universal Serial Bus

  • Added devspec sysfs entry for devices behind the usb hub commit

  • Add MediaTek USB3 DRD driver commit

  • dwc2: gadget: Add IOT device IDs, configure core accordingly commit

  • dwc3: pci: add Intel Gemini Lake PCI ID commit

  • gadget: f_hid add super speed support commit

  • host: xhci: plat: add support for Renesas r8a7796 SoC commit

  • mtu3: Super-Speed Peripheral mode support commit, dual-role mode support commit, host only mode support commit

  • cdc-acm: add device id for GW Instek AFG-125 commit

  • serial: add Fintek F81532/534 driver commit

  • serial: cp210x: Adding GPIO support for CP2105 commit

  • serial: option: add dlink dwm-158 commit

  • serial: option: add support for Telit LE922A PIDs 0x1040, 0x1041 commit

  • serial: option: add device ID for HP lt2523 (Novatel E371) commit

  • serial: pl2303: add ATEN device ID commit

  • serial: qcserial: add Dell DW5570 QDL commit

12.9. Serial Peripheral Interface (SPI)

  • Add support for Armada 3700 SPI Controller commit

  • fsl-espi: add support for ESPI RXSKIP mode commit, add support for dual output read mode commit

  • imx: add lpspi bus driver commit

  • sh-msiof: Add support for R-Car M3-W commit

  • sun6i: Support Allwinner H3 SPI controller commit

12.10. Watchdog

  • da9062/61: watchdog driver commit

  • loongson1: Add Loongson1 SoC watchdog driver commit

  • it87_wdt: add IT8620E ID commit

12.11. Serial

  • 8250: pxa: add devicetree earlyconsole commit

  • 8250_dw: Add support for IrDA SIR mode commit

  • 8250_fintek: Add F81216 Support commit, add F81865 Support commit, add F81866 Support commit

12.12. ACPI, EFI, cpufreq, thermal, Power Management

  • acpi: Enable HWP CPPC objects. The primary reason to enable CPPC support is to get the maximum performance of each CPU to check and enable Intel Turbo Boost Max Technology 3.0 (ITMT) commit

  • acpi: Set _OSC to enable diverse core support. This is required to enable the BIOS support of the Intel Turbo Boost Max Technology 3.0 feature commit

  • EFI: Add support for seeding the RNG from a UEFI config table commit

  • EFI: Apple device properties commit, commit, commit, commit

  • powercap: Add Knights Mill CPUID commit

  • i7300_idle: Remove this driver commit

  • tools/power/x86/turbostat: Make extensible via the --add parameter commit, support Knights Mill (KNM) commit, remove obsolete -M, -m, -C, -c options commit, add Denverton RAPL support commit, add Denverton support commit

12.13. Real Time Clock (RTC)

  • Add support for Epson Toyocom RTC-7301SF/DG commit

  • jz4740: Add support for acting as the system power controller commit, add support for the RTC in the jz4780 SoC commit

12.14. Voltage, current regulators, power capping, power supply

  • cpufreq

    • intel_pstate

      • Generic governors support. There may be reasons to use generic cpufreq governors instead of the intel_pstate driver's internal governor. However, that currently can only be done by disabling intel_pstate altogether and using the acpi-cpufreq driver instead. This release makes possible to use the intel_pstate driver with generic cpufreq governors as a "normal" cpufreq driver. That mode is enforced by adding intel_pstate=passive to the kernel command line and cannot be disabled at run time. In that mode, intel_pstate provides a cpufreq driver interface and is listed in scaling_driver as "intel_cpufreq" commit

      • Support for per-logical-CPU P-state limits and the Energy Performance Preference/Energy Performance Bias knobs in the intel_pstate driver. Intel P-State offered two interface to set performance limits: Intel P-State sysfs interface, and the cpufreq interface. In the current implementation both of the above methods, change limits to every CPU in the system. To make possible to have limits placed on individual CPU cores. This change brings in capability to set P-States limits for each CPU, with some limitations commit

      • Use CPPC to get max performance commit

      • intel_pstate: Add Knights Mill CPUID commit

      • Support for energy performance hints with HWP commit

    • retire the Integrator cpufreq driver commit

    • New sysfs attribute for clearing statistics commit

    • brcmstb-avs-cpufreq: AVS CPUfreq driver for Broadcom STB SoCs commit, add debugfs support commit

    • cpufreq-dt: add Socionext UniPhier SoCs support commit

12.15. Pin Controllers (pinctrl)

  • Add SX150X GPIO Extender Pinctrl Driver commit

  • New driver for TI DA850/OMAP-L138/AM18XX pinconf commit

  • oxnas: Add support for OX820 commit

  • qcom: Add msm8994 pinctrl driver commit

  • rockchip: add support for rk1108 commit

  • sx150x: add support for sx1501, sx1504, sx1505 and sx1507 commit

12.16. Multi Media Card (MMC)

  • sdhci-acpi: support 80860F14 UID 2 SDIO bus commit

  • sdhci-cadence: add Cadence SD4HC support commit

  • sdhci-msm: Add HS400 platform support commit

  • sdhci-pci: Add PCI ID for Intel NI byt sdio commit, add support for Intel GLK commit

  • tmio: Add hw reset support commit, add tuning support commit

  • meson: initial support for GX platforms commit

12.17. Industrial I/O (iio)

  • tools: add -A to force-enable all channels commit

  • 104-quad-8: Add IIO support for the ACCES 104-QUAD-8 commit

  • accel: Add driver for dmard10 3-axis Accelerometer commit, add driver for the MiraMEMS DA280 3-axis 14-bit digital accelerometer commit, add driver for the MiraMEMS DA311 3-axis 12-bit digital accelerometer commit, st_accel: add support to lng2dm commit

  • adc: Add support for STM32 ADC commit, commit, ti-adc161s626: add regulator support commit, add support for AD7766/AD7767 commit

  • cros_ec_sensors: add ChromeOS EC Contiguous Sensors driver commit, commit

  • dpot-dac: DAC driver based on a digital potentiometer commit

  • envelope-detector: ADC driver based on a DAC and a comparator commit

  • gyro: Add driver for the MPU-3050 gyroscope commit

  • humidity: add support to hts221 rh/temp combo device commit

  • potentiostat: add LMP91000 support commit

  • pressure: Add driver for Honeywell ABP family commit

  • isl29018: move out of staging commit

  • tsl2583: move out of staging commit

  • sca3000 Move out of staging. commit

12.18. Multi Function Devices (MFD)

  • Add support for Allwinner SoCs ADC commit

  • pm8xxx: add support to pm8821 commit

  • rn5t618: Add Ricoh RC5T619 PMIC support commit

12.19. Pulse-Width Modulation (PWM)

12.20. Inter-Integrated Circuit (I2C)

  • bcm2835: Add support for Repeated Start Condition commit, add support for dynamic clock commit, support i2c-dev ioctl I2C_TIMEOUT commit

  • designware: Implement support for SMBus block read and write commit

  • imx-lpi2c: add low power i2c bus driver commit

  • mlxcpld: add master driver for mellanox systems commit

  • mux: mellanox: add driver commit

12.21. Hardware monitoring (hwmon)

  • lm87: Use hwmon to create the sysfs groups commit

  • Add Texas Instruments TMP108 temperature sensor driver. commit

  • Add tc654 driver commit

12.22. General Purpose I/O (gpio)

  • altera-a10sr: Add A10 System Resource Chip GPIO support. commit

  • merrifield: Add support for hardware debouncer commit

  • pca953x: Add MAX7318 compatible commit

12.23. Leds

  • tools: Add uledmon program for monitoring userspace LEDs commit

  • Add user LED driver for NIC78bx device commit

12.24. DMA engines

  • DW DMAC: enable memory-to-memory transfers support commit

  • ioatdma: Add Skylake PCI Dev ID commit

  • mv_xor: Add support for scatter-gather DMA mode commit

  • qcom_hidma: add MSI support for interrupts commit

  • st_fdma: Add STMicroelectronics FDMA engine driver support commit

12.25. Clocks

  • hisilicon: add CRG driver for Hi3516CV300 SoC commit, and for Hi3798CV200 SoC commit

  • imx: clk-imx6ul: add clk support for imx6ull commit

  • mediatek: Add MT2701 clock support commit

  • oxnas: Add OX820 Gate clocks commit

  • qcom: Add support for RPM Clocks commit, add support for SMD-RPM Clocks commit, add support for msm8994 global clock controller commit

  • qoriq: add ls1046a support commit

  • renesas: cpg-mssr: Add R8A7743 support commit, add R8A7745 support commit, add common R-Car Gen2 support commit

  • renesas: r8a7796: Add CSI2 clocks commit, add VIN clocks commit

  • rockchip: add clock controller for rk1108 commit

  • stm32f469: Add QSPI clock commit

  • stm32f4: Add LSI & LSE clocks commit, add RTC clock commit

  • sunxi-ng: Add A64 clocks commit

  • uniphier: add CPU-gear change (cpufreq) support commit, add cpufreq data for LD11, LD20 SoCs commit

  • Add clockevent support to NPS400 driver commit

  • import ARC timer driver commit

== Hardware Random Number Generator (hwrng)==

  • omap: Add device variant for SafeXcel IP-76 found in Armada 8K commit, add support for 128-bit output of data commit

== Cryptography hardware acceleration ==

  • arm64: integrate OpenSSL implementations of SHA256/SHA512 commit

  • arm64: crc32 accelerated support commit

  • arm64: crct10dif acceleration commit

  • arm: crc32 accelerated support commit

  • arm: crct10dif accelerated support commit

  • atmel-aes: add support to the XTS mode commit

  • caam: add support for iMX6UL commit

  • chcr: Add AEAD algos. commit

12.26. PCI

  • Create revision file in sysfs to expose the revision field of the PCI device commit

  • Add Mellanox device IDs commit

  • iproc: Add PAXC v2 support commit

  • iproc: Add support for the next-gen PAXB controller commit

  • layerscape: Add LS1046a support commit

  • qcom: Add support for MSM8996 PCIe controller commit

  • tegra: Add Tegra210 support commit

12.27. Various

  • NTB: add support for hotplug feature commit

  • auxdisplay: ht16k33: Driver for LED controller commit

  • bcma: add Dell Inspiron 3148 commit

  • bus: Add support for Tegra Generic Memory Interface commit

  • bus: davinci: add support for da8xx bus master priority control commit

  • pcmcia: add scr24x_cs chip card interface driver commit

  • extcon: usb-gpio: Add VBUS detection support commit

  • firmware: arm_scpi: add support for pre-v1.0 SCPI compatible commit

  • firmware: tegra: Add BPMP support commit, add IVC library commit

  • firmware: ti_sci: Add basic support for TI System Control Interface (TI-SCI) protocol commit, add support for Clock control commit, add support for Device control commit, add support for reboot core service commit

  • fpga-manager: Add Socfpga Arria10 support commit

  • fpga: add altera freeze bridge support commit

  • fpga: add fpga bridge framework commit

  • fpga: fpga-region: device tree control for FPGA commit

  • iommu/arm-smmu-v3: Add IORT configuration commit

  • iommu/arm-smmu: Add IORT configuration commit

  • ipmi_ssif: Remove an unused module parameter commit

  • mailbox: Add Tegra HSP driver commit

  • mei: me: add lewisburg device ids commit

  • mei: show the HBM protocol versions in the device attributes commit

  • memory: davinci: add support for da8xx DDR2/mDDR controller commit

  • misc: sram: add Atmel securam support commit

  • ntb: Adding Skylake Xeon NTB support commit

  • phy: meson: add USB2 PHY support for Meson8b and GXBB commit

  • phy: phy-miphy365x: Remove miphy365 driver and dt binding commit

  • phy: rcar-gen3-usb2: add sysfs for usb role swap commit

  • phy: rockchip-inno-usb2: support otg-port for rk3399 commit

  • phy: stih41x-usb: Remove usb phy driver and dt binding commit

  • power: reset: Add Intel PIIX4 poweroff driver commit

  • regulator: max77620: add support to configure MPOK commit

  • remoteproc/ste: Delete unused driver commit

  • remoteproc: Add a sysfs interface for firmware and state commit

  • remoteproc: Add support for xo clock commit

  • remoteproc: Introduce Qualcomm ADSP PIL commit

  • remoteproc: st_slim_rproc: add a slimcore rproc driver commit

  • reset: Add Tegra BPMP reset driver commit

  • reset: mediatek: Add MT2701 reset driver commit

  • reset: oxnas: Add OX820 support commit

  • reset: sti: Remove STiH415/6 reset support commit

  • soc: Add Tegra186 support commit

  • soc: tegra: pmc: Add I/O pad voltage support commit

  • soc: fsl: add GUTS driver for QorIQ platforms commit

  • soc: mediatek: Add MT2701 scpsys driver commit

  • soc: renesas: Add R-Car RST driver commit, rcar-sysc: add R8A7743 support commit,rcar-sysc: add R8A7745 support commit

  • tty: amba-pl011: Add earlycon support for SBSA UART commit

13. List of merges

14. Other news sites

Tell others about this page:

last edited 2017-03-16 19:34:33 by diegocalleja