Wireless
The iwlwifi driver can now address various, previously unsupported Intel series 1000, 5000 and 6000 Wi-Fi modules (1, 2, 3, 4) and now supports the WiMAX function of the 6x50 series (1, 2). A new addition is the "Intel Wireless MultiCom 3200 top driver (iwmc3200top)" for a new Intel wireless chip that supports GPS, Bluetooth, Wi-Fi and WiMAX. The power saving features of the iwl3945 Intel Wi-Fi driver have been temporarily disabled due to some problems.
The kernel developers have also added the rt2800pci driver, which, at this point in the development cycle is still considered "very experimental", "intended for developers" and "non-functional" and addresses Ralink's RT2760, RT2790, RT2860, RT2880, RT2890 and RT3052 PCI Wi-Fi chips frequently found in recent netbooks and notebooks. These chips could previously only be used with a driver developed by the vendor which was in the kernel's staging area for a few months. The new driver was mainly developed by the rt2x00 project which also maintains other drivers for Ralink chips. Several more of the project's drivers were improved for 2.6.33 and now support a greater variety of USB Wi-Fi hardware than ever.
More Drivers
The IDE subsystem drivers are now officially classed as deprecated. Users are advised to switch to the Libata subsystem PATA drivers, which have long been in the kernel and are no longer classed as experimental (1, 2). The SCSI subsystem contains two new drivers: 3w-sas for the LSI 3ware 9750 and vmw_pvscsi for the virtual hardware seen by guest systems under some VMware hypervisors. New smart array controllers from HP can now be addressed both by the block subsystem's cciss driver, which has seen various enhancements in 2.6.33, and by the new hpsa driver.
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 Kernel.org – 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.
The Mantis V4L/DVB-driver, which supports a chip-set used in various TV cards, was merged just prior to the release of the fifth pre-release version. The msi-wmi driver, which should allow the function keys for changing sound volume and brightness on some MSI laptops to work under Linux, has been merged into the kernel. The classmate-laptop driver for Intel's Classmate PCs is another new arrival. Kernel hackers have also revamped various audio support-related components of the driver for IBM and Lenovo ThinkPad laptops (1, 2, 3).
The k10temp driver, newly merged into the kernel, is able to read temperature sensors in various recent AMD chips. Because many CPUs deliver erroneous figures, the code only works after entering a special parameter given in the documentation. The via-cputemp driver is another new arrival and returns temperature sensor data from recent VIA CPUs.