In association with heise online

Drivers: Audio, Input devices, Notebook

The audio drivers are now on on the same level as version of the ALSA drivers and include the first components of the driver code required to support version 2.0 of the USB audio specification. New too is support for the Xonar DS sound card by ASUS.

Kernel Log Logo The input subsystem has been given drivers for touch screen interfaces by various vendors. Also new are drivers for Apple's Magic Mouse and Logitech's G940 Flight System.

Vendor-specific notebook drivers will now be maintained by Matthew Garrett as part of the "x86 platform drivers" subsystem. This subsystem now includes a simple eeepc-wmi driver which previously only controlled display brightness and which now works with recent ASUS Eee PCs that use WMI for the function keys. Numerous detail improvements were made to the drivers for notebooks by ASUS, Dell, Lenovo/IBM, MSI and Toshiba; these drivers were previously handled by the ACPI maintainer.

Which of the drivers were changed

Information about the changes to individual Linux kernel files can be found through the Git web front end at – this, for example, allows users to find out whether there have been changes to the drivers used on their own systems. To do this, however, users need to know where in the Linux kernel's source code tree the driver files are located. For the heavily modular distribution kernels the modinfo program is often helpful when searching:

$ /sbin/modinfo e100 e1000 | grep filename:
filename: /lib/modules/[...]/kernel/drivers/net/e100.ko
filename: /lib/modules/[...]/kernel/drivers/net/e1000/e1000.k

If a compiled module is, for example, located at [...]/kernel/drivers/net/e100.ko, its source code in the Linux source code archive can usually be found in a file with a similar name in the drivers/net/ directory – for example e100.c for the e100 driver for Intel 100 MBit networking hardware. Other modules like the e1000 driver for Intel's PCI Gigabit LAN chips, on the other hand, have a whole directory to themselves. If the approximate location of the driver source code is known, users can navigate to the respective source code files in the tree view of the Git web interface and can then retrieve an overview of the latest file or directory changes via the history link. In the network driver directory, changes to the driver code of e100 (drivers/net/e100.c) and e1000 (drivers/net/e1000/), for example, can be displayed and examined in this way.

Drivers: USB and staging

The xHCI driver for USB 3.0 controller chips, which was previously called xhci, has been renamed xhci_hcd to match the naming scheme used for other USB host controller drivers. A modification implemented by Torvalds himself now causes the USB storage driver to wait just one second instead of the previous five before it addresses a newly connected USB memory device. Various distributions reduced or completely disabled the delay quite some time ago. Torvalds says it is unclear whether devices that require such a delay are still in use; it could be that this issue is purely historical. The modification is designed to help clarify this question; "Let's see if anybody screams" said Torvalds.

The crystalhd driver for the Broadcom Crystal HD video accelerator has been added to the staging branch. Major improvements – including one which enhances performance – were made to the udlfb DisplayLink driver, which is also located in the staging area (1, 2, 3). Various changes to the rtl8192e driver are to considerably reduce the power consumption of the identically named Realtek chips during operation.

About the source code management system

Many of the links in this article point to the relevant commits in the web front end of Linus Torvalds' Git source code management system for Linux, because these commits tend to contain a lot more information about the respective changes. The commit comment in the mid section of the web page displayed by the Git web front end is often a particularly helpful source of further information. This is where the author of a patch usually describes the background and intended effects of the changes.

The bottom section of the Git web front end lists the files that are affected by the patch. The "diff" link behind each file name shows how the patch modifies the respective file; if you want to view the complete patch in its raw form, click on the commitdiff link. Even if you don't have any programming skills the patches are often a good source of information, because they also contain changes to the documentation and comments within the code.

Other changes in brief

  • As in previous kernel versions, 2.6.34 sees dozens of enhancements in the tracing code and performance events which can be used for analysing kernel processes at runtime. 'Jump optimisation' (1, 2, 3, documentation), for example, significantly accelerates kprobes code. The perf code now includes a Python scripting engine (1, documentation) – background information can be found in the article "Scripting support for perf". The perf code also now supports recently launched processors containing Westmere cores, including Intel's dual-core i3 and i5 core series processors.
  • Drivers and extensions for Intel's motherboard chipsets, so far only referred to as Cougar Point and expected to be released early next year, have been added to various subsystems.
  • The AHCI driver now offers FIS-based switching – a technology for addressing multiple hard disks via one SATA connection which is used by some external disk housings with SATA port multipliers.
  • Performance improvements to the CFQ I/O scheduler are among the major changes to the block layer, highlighted by maintainer Jens Axboe in his main Git-Pull request.
  • Kernel crashes can now be provoked for various purposes, such as simulating behaviour during a system crash, via a change in Lkdtm.
  • A change which fixes the recently disclosed performance problem on AMD's recently introduced Turbo Core processors has also been merged. Full support for the technology, which increases processor speed at low utilisations, is expected to find its way into 2.6.35.

Next: Overview and statistics for 2.6.34 and the 2.6.35 outlook

Print Version | Permalink:
  • Twitter
  • Facebook
  • submit to slashdot
  • StumbleUpon
  • submit to reddit

  • July's Community Calendar

The H Open

The H Security

The H Developer

The H Internet Toolkit