Greg KH Sends Out Linux 4.10 Updates: 1,000+ Staging Changes, Functional Dependencies
Written by Michael Larabel in Linux Kernel on 13 December 2016 at 07:00 PM EST. 1 Comment
Well known Linux kernel developer Greg Kroah-Hartman has sent in his pull requests for the code he oversees for the Linux 4.10 merge window.

Some of the highlights for the areas he serves as the maintainer for in 4.10 includes:

Staging/IIO has over one thousand changes but still not as big as the staging churn in Linux 4.9. Even with 1,000+ changes, in the end they were almost even in new lines of code versus code dropped. The staging work included continue activity on Lustre, MOST continues to be developed, many IIO updates, Greybus has evolved more since its introduction in Linux 4.9, wlan-ng updates, and various other driver changes.

Driver core introduces the concept of "functional dependencies", an item long talked about for Linux. Intel developer Rafael Wysocki who worked on this "functional dependencies" support for the core driver code had described the work in an earlier patch series:
What I mean by a "functional dependency" is when the driver of device B needs device A to be functional and (generally) its driver to be present in order to work properly. This has certain consequences for power management (suspend/resume and runtime PM ordering) and shutdown ordering of these devices. In general, it also implies that the driver of A needs to be working for B to be probed successfully and it cannot be unbound from the device before the B's driver.

Support for representing those functional dependencies between devices is added here to allow the driver core to track them and act on them in certain cases where applicable.

The argument for doing that in the driver core is that there are quite a few distinct use cases involving device dependencies, they are relatively hard to get right in a driver (if one wants to address all of them properly) and it only gets worse if multiplied by the number of drivers potentially needing to do it. Moreover, at least one case (asynchronous system suspend/resume) cannot be handled in a single driver at all, because it requires the driver of A to
wait for B to suspend (during system suspend) and the driver of B to wait for A to resume (during system resume).

He then changed the Linux kernel power management code to use device links for properly dealing with the supplier/consumer devices flow.

USB/PHY has a new USB "mtu3" controller type from Mediatek, a new USB serial driver, gadget updates, and other changes.

TTY/serial is on the smaller side with just some new serial drivers and other code improvements.

Char/misc has new FPGA drivers and other changes.

That's it for the pull requests today via Greg Kroah-Hartman.
Related News
About The Author
Author picture

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week