Released 17 June, 2006 (full SCM git log)
2.6.17
- Overview
- Support for the multicore Niagara series of CPUs from Sun.
Driver for the Broadcom 43xx based wireless cards by the bcm43xx project, a chip embedded in many laptops
- splice, a new I/O mechanism (see below)
X86 "SMP alternatives" (optimizes a single kernel image at runtime according with the available platform) (LWN article)
- New scheduler domain which optimizes CPU scheduling decisions for multi-core CPUs
sync_file_range syscall, (LWN article)
- Block queue IO tracing
Raid5 reshaping support (LWN article)
Lightweight robust futexes (LWN article)
- User-space software suspend interface
- Generic RTC subsystem
- iptables support for H.323 protocol, compatibility for 32-bit iptables userspace tools running in a 64-bit kernel
- Add support for Router Preference (RFC4191), Router Reachability Probing (RFC4191) and experimental support for Route Information Option in RA (RFC4191) in IPV6
- CCID2 support for DCCP
- Softmac layer to the wireless stack
- Updates for JFS, ALSA, NFS, V4L/DVB (many new devices added), and many bugfixes and minor updates.
Kernel Core changes
Introduce the splice(), tee() and vmsplice() system calls, a new I/O method. (LWN article about splice()), (LWN article about tee()), (LWN article about vmsplice()) The idea behind splice is the availability of a in-kernel buffer that the user has control over, where "splice()" moves data to/from the buffer from/to an arbitrary file descriptor, while "tee()" copies the data in one buffer to another, ie: it "duplicates" it. The in-buffer however is implemented as a set of reference-counted pointers which the kernel copies around without actually copying the data. So while tee() "duplicates" the in-kernel buffer, in practice it doesn't copy the data but increments the reference pointers, avoiding extra copies of the data. In the same way, splice() can move data from one end to another, but instead of bringing the data from the source to the process' memory and sending back to the destination it just moves it avoiding the extra copy. This new scheme can be used anywhere where a process needs to send something from one end to another, but it doesn't need to touch or even look at the data, just forward it: Avoiding extra copies of data means you don't waste time copying data around (huge performance improvement). For example, you could forward data that comes from a MPEG-4 hardware encoder, and tee() it to duplicate the stream, and write one of the streams to disk, and the other one to a socket for a real-time network broadcast. Again, all without actually physically copying it around in memory. vmsplice() does the same than splice(), but instead of splicing from fd to fd as splice() does, it splices from a user address range into a file. The idea and first implementation were done by Linus Torvalds, the final implementation by Jens Axboe (email 1), (email 2), (email 3), (email 4), (commit 1), (commit 2), (commit 3)
Introduce the sync_file_range() syscall, due to concerns about extending in non-POSIX-compatible ways the fadvise() interface. Interface: long sync_file_range(int fd, loff_t offset, loff_t nbytes, int flags). This is used to synchronize a file's data to disk, starting at offset and proceeding for nbytes bytes. More details in (this LWN article) (commit)
Add a new scheduler domain for representing multi-core with shared caches between cores. This makes possible to make smarter cpu scheduling decisions on such systems, improving performance greatly for some cases (see commit) (commit)
Lightweight robust futexes: if a process exits prematurely while holding a pthread_mutex_t lock shared with some other process (e.g. yum segfaults or it's kill -9-ed), then waiters for that lock need to be notified that the last owner of the lock exited in some irregular way. This creates a API to fix that Documentation, ABI documentation, (LWN article) (commit 1), (commit 2), (commit 3)
Block queue IO tracing support (blktrace). This allows users to see any traffic happening on a block device queue. In other words, you can get very detailed statistics of what your disks are doing. User space support tools available in: git://brick.kernel.dk/data/git/blktrace.git (commit)
Cpuset memory spread implementation: Alternative memory allocation policy, if enabled it spreads out these kinds of memory allocations over all the nodes allowed to a task, instead of preferring to place them on the node where the task is executing. All other kinds of allocations, including anonymous pages for a tasks stack and data regions, are not affected by this policy choice, and continue to be allocated preferring the node local to execution, as modified by the NUMA mempolicy (commit 1), (commit 2), (commit 3), (commit 4)
Introduce a user space interface for swsusp (LWN article) (commit), (commit)
Implement /proc/slab_allocators (commit)
New /proc file /proc/self/mountstats, where mounted file systems can export information (configuration options, performance counters, and so on) (commit)
Enable mprotect on huge pages (commit)
- Various core changes
CONFIG_UNWIND_INFO: Generates frame unwind information (commit)
Reduce the size of (struct fdtable) to exactly 64 bytes on 32bits platforms, lowering kmalloc() allocated space by 50% (commit)
Optimize select/poll by putting small data sets on the stack instead of using kmalloc for small fd sets, an old optimization from Linux 2.0 (commit)
Deprecate the use of MS_VERBOSE and replace it with MS_SILENT (commit)
Add API for flushing Anon pages (commit)
Add flush_kernel_dcache_page() API (commit)
Add blkcnt_t as the type of inode.i_blocks. This enables you to make the size of blkcnt_t either 4 bytes or 8 bytes on 32 bits architecture with CONFIG_LSF. On h8300, i386, mips, powerpc, s390 and sh that define sector_t, blkcnt_t is defined as u64 if CONFIG_LSF is enabled; otherwise it is defined as unsigned long. On other architectures, it is defined as unsigned long (commit)
for_each_possible_cpu: defines for_each_possible_cpu, a for-loop over cpu_possible_map. for_each_online_cpu is for-loop cpu over cpu_online_map (commit)
unify page_to_pfn(),pfn_to_page() (commit)
Notifier chain: Introduces three new, parallel APIs: one for blocking notifiers, one for atomic notifiers, and one for "raw" notifiers (which is really just the old API under a new name) LWN article) (commit)
add EXPORT_SYMBOL_GPL_FUTURE(): This patch adds the ability to mark symbols that will be changed in the future, so that kernel modules that don't include MODULE_LICENSE("GPL") and use the symbols, will be flagged and printed out to the system log (LWN article) (commit)
Permit Dual-MIT/GPL licenses (commit)
CFQ: Seek and async performance tuning (commit), change cfq io context linking from list to tree: Improves performance on setups with many disks (commit)
Remove RTC UIP synchronization (commit)
Introduce FMODE_EXEC file flag, to indicate that file is being opened for execution. This is useful for distributed filesystems to maintain consistent behavior for returning ETXTBUSY when opening for write and execution happens on different nodes (commit)
strndup_user(): a function to easy copying C strings from userspace (commit)
msync(): perform dirty page levelling (commit)
kbuild: Improved modversioning support for external modules (commit) and support building individual files for external modules (commit)
Mark unwind info for signal trampolines using the new S augmentation flag in recent GCCs (commit)
vt: Add TIOCL_GETKMSGREDIRECT needed by the userland suspend tool to get the current value of kmsg_redirect from the kernel so that it can save it and restore it after resume (commit)
Removes the support for pps (commit)
Configurable NODES_SHIFT (commit)
slab: add statistics for alien cache overflows (commit)
Add GFP_NOWAIT, an alias for GFP_ATOMIC & ~GFP_HIGH (commit)
POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications (commit)
Architecture-specific
- x86 32/64
SMP "alternatives" for x86-32. This features detects the configuration of the system at boot time, and patches certain instructions in the kernel image on the fly with optimized versions for UP or SMP, depending on what system is running. This is useful for distros, who can provide a single kernel which auto-optimizes itself for UP or SMP environments. The feature can patch both SMP->UP and UP->SMP. The UP->SMP case is useful for CPU hotplug (which may be useful in virtualized environments to hot-add/remove CPUs in virtualized guests in reaction to load changes in the host) (LWN article) (commit)
Make CONFIG_REGPARM enabled by default. With this option, GCC passes the first 3 function parameters in registers. It's a noticeable win both for size and for performance, and gcc[34] handles it correctly (commit)
Use -mtune=generic for generic kernels. The upcoming gcc 4.2 got a new option -mtune=generic to tune code for both common AMD and Intel CPUs. Use this option when available for generic kernels. On x86-64 it is used with CONFIG_GENERIC_CPU. On i386 it is enabled with CONFIG_X86_GENERIC. It won't affect the base line CPU support in any ways and also not the minimum supported CPU (commit)
Increase the variability of the process stack on x86-64 for now. 8 MB is not really very random, use 1GB (or more with larger page sizes) instead(commit)
Allow disabling the "sep" feature (X86_FEATURE_SEP) at boot. This forces use of the int80 vsyscall, useful mainly for testing or benchmarking the int80 vsyscall code (commit)
"make isoimage" support, FDINITRD= support. This adds a "make isoimage" to i386 and x86-64, which allows the automatic creation of a bootable CD image. It also adds an option FDINITRD= to include an initrd of the user's choice in generated floppy- or CD boot images (commit)
kprobes-booster (commit)
Remove the obsolete microcode_ioctl (commit)
- PPC
Numa: Support sparse online node map (commit)
Implement accurate task and cpu time accounting for 64-bit powerpc kernels (commit)
Support for the physmapped flash on m8xx (commit)
Add PCI support for 8540 ADS (commit)
Add platform support for MPC834x USB controllers (commit)
Add hvc backend for rtas, needed to get console output on those boards (commit)
- spufs (Cell processor)
- ARM
Add support for the new XScale v3 core (commit)
Add support for the Intel ixp23xx series of CPUs and support for the ADI Engineering Roadrunner, Intel IXDP2351, and IP Fabrics Double Espresso platforms (commit)
proc-v6: page table walks with outer-cacheable attribute, and enable no-execute in page tables (commit)
Add support for the Cirrus ep93xx series of CPUs (commit)
ep93xx: Add GPIO interrupt support for the first 16 GPIO lines (port A and B ) (commit)
Add support for Intel's IXDP28x5 platform. This is just and IXDP2801 with a new CPU rev (commit)
s3c2410: Support for Simtec IM2440D20 CPU modules (Osiris) s(commit)
s3c24xx: Add USB bus clock source (commit)
Battery support for sharp zaurus sl-5500 (collie). Collie slowly charges battery even with charging disabled, so fast charge is not enabled yet (commit)
Add support for logicpd pxa270 card engine (commit)
Adds support for the Ethernet controller integrated in the Atmel AT91RM9200 SoC processor. (commit)
Add Cirrus EP93xx AMBA PL010 serial support: (commit)
Add a driver for the on-chip watchdog on the cirrus ep93xx series of ARM CPUs (commit)
Adds support for the LED(s) on the AT91RM9200-based boards (commit)
Adds support for the I/O coherent cache available on the xsc3 (commit)
Add pci slave support for ixp23xx (commit)
SD/MMC support for i.MX/MX1 SD/MMC controller (commit)
Support for 2.6 (MMC/SD driver) on the Atmel AT91RM9200 processor (commit)
Allow un-muxed syscalls to be available for everyone (commit)
nommu: Adds MPU support in boot/compressed/head.S (commit)
nommu: Add nommu specific Kconfig and MMUEXT variable in Makefile (commit)
backlight: Generalise to support other Sharp SL hardware, this enables the driver to support other Zaurus hardware, specifically the SL-6000x (Tosa) model (commit)
- PARISC
- MIPS:
- UML:
- Sparc
- IA64:
- S390:
Channel path measurements (commit)
- x86 32/64
Filesystems
- Ext3
- XFS
- JFS
- FUSE
- NFS
Add I/O performance counters (commit)
Introduce mechanism for tracking NFS client metrics (commit)
Use UNSTABLE + COMMIT for NFS O_DIRECT writes (commit)
Add RPC I/O statistics to /proc/self/mountstats (commit)
SUNRPC: add a handful of per-xprt counters, monitor generic transport events (commit)
SUNRPC: track length of RPC wait queues which will eventually be exported to userland via the RPC iostats interface (commit)
SUNRPC: introduce per-task RPC iostats (commit)
SUNRPC: provide a mechanism for collecting stats in the RPC client (commit)
- CIFS
Add posix (advisory) byte range locking support to cifs client: Samba (version 3) server support for this is also currently being done. This client code is in an experimental path (requires enabling /proc/fs/cifs/Experimental) while it is being tested (commit)
Readdir perf optimizations part 1 (commit)
- NTFS
Add support for sparse files which have a compression unit of 0 (commit)
- sysfs/relayfs/debugfs
SELinux/audit
Support for process-context based filtering (commit 1), (commit 2)
Disable the automatic labeling of new inodes on disk when no policy is loaded. Discussion in https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180296 (commit)
Add a slab cache for the SELinux inode security struct (commit)
Hardwire important SE Linux events to the audit system (commit)
Audit string fields interface + consumer (commit)
Add tty to syscall audit records (commit)
Add a little more information to the add/remove rule message emitted by the kernel (commit)
More filter rule comparators. Currently, audit only supports the "=" and "!=" operators in the -F filter rules, add ">", ">=", "<", and "<=" (commit)
Send an audit event when a network interface goes into promiscuous mode (commit)
Networking
- IPV6
Add support for Router Preference (RFC4191) (commit)
Add Router Reachability Probing (RFC4191) (commit)
Add experimental support for Route Information Option in RA (RFC4191): (commit)
Add router_probe_interval sysctl (commit)
Add accept_ra_pinfo sysctl. This controls whether we accept Prefix Information in RAs (commit)
Add accept_ra_rt_info_max_plen sysctl (commit)
Add accept_ra_defrtr sysctl: This controls whether we accept default router information in RAs (commit)
Add accept_ra_rtr_pref sysctl (commit)
- DCCP
Initial feature negotiation implementation (commit)
Initial CCID2 (TCP-Like) implementation (commit), and make it the default as per the draft (commit)
Introduce sysctls for the default features, in /proc/sys/net/dccp/default/*: /proc/sys/net/dccp/default/ack_ratio, /proc/sys/net/dccp/default/rx_ccid, /proc/sys/net/dccp/default/send_ackvec, /proc/sys/net/dccp/default/send_ndp, /proc/sys/net/dccp/default/seq_window, /proc/sys/net/dccp/default/tx_ccid (commit)
- Netfilter
Add H.323 conntrack/NAT helper (commit)
nf_conntrack, support for layer 3 protocol load on demand (commit)
Extend current iptables compatibility layer in order to get 32bit iptables to work on 64bit kernel (commit)
Unify IPv4/IPv6 multiport match. As a result, this adds support for inversion and port range match to IPv6 packets (commit)
Unify IPv4/IPv6 esp match (commit)
- Wireless
WE-20, version 20 of the Wireless Extensions, it enables the full Wireless Extension API over Rtnetlink (commit)
Add the hardware independent software MAC layer (commit)
softmac: reduce default rate to 11Mbps (commit)
softmac: reduce scan dwell time (commit)
Add LEAP authentication type (commit)
Add flags for all geo channels (commit)
Add spectrum management information (commit)
Add 802.11h information element parsing: Added default handlers for various 802.11h DFS and TPC (commit) and TIM (commit)
- BRIDGE
- X25
Allow use of the optional user facility to insert ITU-T (http://www.itu.int/ITU-T/) specified DTE facilities in call set-up x25 packets (commit)
Allow dte facility patch to use 32 64 bit ioctl conversion mechanism (commit)
Allow 32 bit x25 module structures to be passed to a 64 bit kernel via ioctl using the new compat_sock_ioctl registration mechanism (commit)
Add RFC2863 operstate (commit)
Allow 32 bit socket ioctl in 64 bit kernel (commit)
Socket timestamp 32 bit handler for 64 bit kernel (commit)
IPSEC: Sync series - SA expires. This allows a user to insert SA expires (commit)
IPSEC: Sync series - acquire insert (commit)
TCP: MTU probing: Implementation of packetization layer path mtu discovery for TCP, based on the internet-draft http://www.ietf.org/internet-drafts/draft-ietf-pmtud-method-05.txt (commit)
TCP/UDP getpeersec: Enable a security-aware application to retrieve the security context of an IPSec security association a particular TCP or UDP socket is using (commit)
TCP: sysctl to allow TCP window > 32767 sans wscale (commit)
Introduce tunnel4/tunnel6 (commit)
- IPV6
Drivers
PCI: Scheduled removal of the obsolete PCI_LEGACY_PROC (/proc/pci) interface (commit)
- ipmi
Add full driver model support for the IPMI driver (commit)
- Video:
ATI RS350 support: (commit)
Enable VIA AGP driver on x86-64 for VIA P4 chipsets, needed for some newer EM64T systems (commit)
VIA PT880 Ultra AGP support (commit)
Rework radeon memory map (commit)
Remove old radeon driver, which has been obsoleted by the new one since a few releases (commit)
Add all the r300 and r400 PCI ids from DRM CVS (commit)
vgacon: Add support for soft scrollback (commit)
fbdev: Support the framebuffer driver for the display controller in AMD Geode GX processors (Geode GX533, Geode GX500 etc) (commit)
nvidiafb: Add suspend and resume hooks (commit)
Add ID for Quadro NVS280 (commit)
fbdev: add modeline for 1680x1050@60 for the Philips 200W display (commit)
au1200fb: Add support for Alchemy Au1200 framebuffer driver (commit)
w100fb: Add acceleration support in w100fb.c (i.e. ATI Imageons) for the copyarea and fillrect operations (commit)
- IDE
- libata
Turn on ATAPI by default (commit)
Add per-device max_sectors (commit)
ahci: Now that libata is smart enough to handle both soft and hard resets, add softreset method (commit)
Add support for the Promise Fasttrak TX4300/TX4310 4-port PCI SATA controllers based on the PDC40719 chip to sata_promise driver (commit)
Add a new PCI ID for SiI 3124 to sata_sil24 driver (commit)
Add 6042 support to sata_mv driver (commit)
Make per-dev transfer mode limits per-dev. Now that each ata_device has xfer masks, per-dev limits can be made per-dev instead of per-port (commit)
Simplex and other mode filtering logic. This provides the needed framework to support all the mode rules found in the PATA world (commit)
Remove E.D.D (commit)
AHCI: add ATI SB600 PCI IDs (commit)
- SCSI
Remove qlogicfc - all participants agree that qla2xxx can now successfully replace this (commit)
Allow displaying and setting of cache type via sysfs (commit)
sas: add support for enclosure and bad ID rphy attributes (commit)
mptsas: add support for enclosure and bay identifier attributes (commit)
qla2xxx: Add ISP54xx support, chip is similar in form to our ISP24xx offering (commit)
Add big endian support to 3ware 9000 (commit)
lpfc: Add support for FAN (commit)
lpfc: Add module parameter to limit number of outstanding commands per lpfc HBA (commit)
mptspi: Add transport class Domain Validation (commit)
qla2xxx: Add VPD sysfs attribute (commit)
- Input devices
- USB devices
Unified USB touchscreen driver. It currently supports eGalax Touchkit, Panjit Touchset, 3M/Microtouchand ITM Touchscreens (commit)
Add OHCI support for AU1200 (commit)
Add EHCI support for AU1200 (commit)
Add support for OCHI on AT91rm9200 based boards (commit)
Add support for AT91 (rm9200, eventually also sam9261 or uClinux) platforms (commit)
Add a new device ID to the cp2101 driver (commit)
Add Icom ID1 USB product and vendor ids to the ftdi_sio driver. The Icom ID-1 1.2 GHz band digital transceiver is a new radio that has a USB interface (commit)
Add support for Papouch TMU (USB thermometer) (commit)
Add support for Creativelabs Silvercrest USB keyboard (commit)
Add navman GPS device driver (USB serial) (commit)
Add support for the Nokia ca42 version 2 cable to the cypress_m8 driver (commit)
Adds Linksys USBVPN1 support (http://www1.linksys.com/Products/product.asp?prid=3D543&scid=3D30) to the pegasus driver (commit)
EHCI for Freescale 83xx. This driver supports both the Dual-Role (DR) controller and the Multi-Port-Host (MPH) controller present in the Freescale MPC8349 (commit)
Add a Video4linux2 driver for ZC0301 Image Processor and Control Chip.(commit)
Adds support for three USB peripheral controllers: "musbhsfc", "musbhdrc" and the full speed controller on the Freescale MPC8272 (commit)
Added support for OTi's DKU-5 clone cable to pl2303 driver (commit)
Add support for Eclo COM to 1-Wire USB adapter (commit)
Add support for ASK RDR 400 series card reader (commit)
Adds support for iPlus USB modems (commit)
Add new iTegno usb CDMA 1x card support to pl2303 driver (commit)
- Network devices
Driver for the Broadcom 43xx based wireless cards (from http://bcm43xx.berlios.de). This chip is embedded in lots of laptops: Apple (Airport Extreme), Acer, Asus, Dell, Compaq and many others (commit)
- ipw2100
- ipw2200:
switch to the new ipw2200-fw-3.0 image format. You will also need to upgrade your firmware image to the 3.0 version, available from http://ipw2200.sf.net/firmware.php (commit)
Support WE-18 WPA, used to advertise the WPA-related encryption options that it does really support (commit)
Add LEAP authentication algorithm support (commit)
Bluetooth coexistence support. It adds a new module param "bt_coexist" which defaults to OFF (commit)
Add module parameter to enable/disable roaming (commit)
Enable the "slow diversity" algorithm. This forces one antenna or the other, if the background noise is significantly quieter in one than the other (commit)
Wireless extension sensitivity threshold support (commit)
- TG3
Add support for 5714S and 5715S (commit)
Add support for new chip 5755 which is very similar to 5787 (commit)
Add 5755 nvram support (commit)
Add basic support for 5787 and 5754 (commit)
Support additional nvrams and new nvram format for 5787 and 5754 (commit)
Support 5787 hardware TSO (commit) and ipv6 checksum support (commit)
Support one-shot MSI on 5787 (commit)
- Forcedeth
- e1000
- sky2
- Airo
- S2io
Large Receive Offload (LRO) feature(v2) for Neterion 10GbE Xframe PCI-X and PCI-E NICs. More details in the commit (commit)
BNX2: Add ETHTOOL_GREGS support (ethtool -d support) (commit)
- natsemi
Starfire: Implement suspend and resume methods. It allows to put a computer with a starfire dual board into S4 (commit)
- sb1250-mac
Add support for the 4th port and other new features of the BCM1480 SOC (commit)
- pcnet_cs:
Add new id (Logitec LPM-LN100TE):(commit)
- sis900:
adm7001 PHY support: This is required to get a SIS964 based motherboard ethernet working (FSC D1875) (commit)
- spidernet:
Enable tx checksum offloading by default (commit)
- axnet_cs.c
Add hardware multicast support (commit)
- bonding
Support carrier state for master (commit)
Remove broken and unmaintained Sangoma drivers. Sangoma offers out-of-tree drivers, and prefers to provide them as a separate installation package (commit)
Add drivers for the Siemens Gigaset 3070 family of ISDN DECT PABXes. These drivers have been developed over the last four years within the project http://sourceforge.net/projects/gigaset307x . Source code
- ALSA
Driver for Adlib FM cards (commit)
Make procfs & OSS plugin code optional (CONFIG_SND_VERBOSE_PROCFS, CONFIG_SND_PCM_OSS_PLUGINS) (commit)
Add Zoom Video support in the ES18xx driver (commit)
Add support for EDIROL UM-3ex (commit)
Add Leadtek Winfast tv 2000xp delux to whitelist in the bt848 driver (commit)
Add support of Prodigy-7.1LT to the ice1724 driver (commit)
ac97: Added a codec patch for LM4550 (commit)
via82xx - Add dxs entry for FSC Amilo L7300 (commit)
ac97: Add entry for VIA VT1618 codec (commit)
Add default entry for CTL Travel Master U553W (commit)
emu10k1 - Add the entry for Audigy4 SB0400 (commit)
via82xx - Add dxs entry for ASRock mobo (commit), add support for VIA VT8251 (commit), and a dxs entry for EPoX EP-8KRAI (commit)
Add a dxs entry for ECS k8t890-a (commit)
Add more PCI subsystem IDs of DVB cards to the blacklist of cards to the bt87x driver (commit)
Add snd-als300 driver for Avance Logic ALS300/ALS300+ soundcards (commit)
Add a mixer control which allows the user to switch the Aux playback between the internal Aux jack, Wavetable, and Rear Line-In on Aureon Universe cards (commit)
Add snd-riptide driver for Conexant Riptide chip (commit)
Add snd-miro driver for miroSOUND PCM (commit)
Add support of LG LW20 laptop with ALC880 codec (commit)
hda-codec: Add PCM for 2nd ADC on ALC260 (commit), missing model entries for Intel 945 boards (commit), a new model 'laptop-eapd' to AD1986A codec for Samsung R65 and ASUS A6J laptops (commit), a model entry for Aopen i915GMm-HFS mobo with ALC880 codec (commit), support for VAIO FE550G and SZ110 laptops with Sigmatel codec (7661) (commit), model entry for FIC P4M-915GD1 with ALC880 codec (commit), support ASUS P4GPL-X with ALC880 codec (commit), a HP model (commit), lg model for LG laptop (m1 express dual) with ALC880 codec (commit), support for HP nx9420 (Angelfire) laptop with AD1981HD codec (commit), support on ATI SB600 (commit), support of ASUS U5A with AD1986A codec (commit), support HP Compaq Presario B2800 laptop with AD1986A codec (commit), codec id for the AD1988 chip (commit), support for Intel d945pvs board (commit), another HP laptop with AD1981HD (commit), support for the Asus Z62F laptop (commit), Asus M9 laptop (commit), Epox EP-5LDA+ GLi (commit), add 'acer' models (commit)
usb-audio: Add a quirk entry for the Edirol PC-50 (commit), Miditech Play'n Roll support (commit), Roland G-70 support (commit), support for the Yamaha MDP-5 and EZ-J24 (commit), quirk for the Casio AP-80R (commit), mixer control names for the Audiotrak Maya44 USB (commit), quirk entry for the Casio PL-40R. (commit),
- V4L/DVB
Add new internal VIDIOC_INT commands for setting the tuner mode, for putting a chip into standby mode and to set/get the routing of inputs/outputs of audio or video of a chip. These new commands will replace older commands that are no longer up to the task (commit)
Add IR support to KWorld DVB-T (cx22702-based) (commit)
Add standard for South Korean NTSC-M using A2 audio, South Korea uses NTSC-M but with A2 audio instead of BTSC and several audio chips need this information in order to set the correct audio processing registers (commit)
Hauppauge Grey Remote support (commit)
Added terratec hybrid xs and kworld 2800rf support (commit)
Support for Galaxis DVB-S rev1.3 (commit)
Hauppauge HVR 900 Composite support (commit)
Add support for the Avermedia 777 DVB-T card (commit)
Added signal detection support to tvp5150 (commit)
Add initial support for KWorld HardwareMpegTV XPert (commit)
Added support for the Tevion DVB-T 220RF, an analog/digital hybrid card (commit)
Add filtered Composite2 input to Pinnacle PCTV 40i: add filtered Composite2 input. This improves video quality for Composite signals on the S-Video connector of the card (commit)
Add support for ELSA EX-VISION 700TV, which is the ELSA Japan's flagship model of the software encoding TV capture card (commit)
Add support for Terratec Prodigy XS (commit)
Add radio support for KWorld HardwareMpegTV XPert (commit)
Add support for the Lifeview FlyDVB-T LR301 card (commit)
Add DVB-T support for the Lifeview DVB Trio PCI card: only DVB-T support, no DVB-S yet (commit)
Add support for xc3028 analogue tuner (Hauppauge HVR900, Terratec Hybrid XS) to v4l (commit)
Add support for Kworld ATSC110 (commit)
Add cpia2 camera support (commit)
Add support for the FE6600 tuner used on the DViCO FusionHDTV DVB-T Hybrid board, and add support for the Zarlink ZL10353 DVB-T demodulator, which supersedes the MT352, used on the DViCO FusionHDTV DVB-T Hybrid and later model Plus boards (commit)
Add support for Satelco Easywatch DVB-S light (commit)
Add support for remote control in Lifeview FlyDVB-T Duo (commit)
Add support for AVerMedia A169 Dual Analog tuner card (dual saa7134 decoders - only 1 working right now) (commit)
Added ID entries for the Genius Videowonder DVB-T and the Lifeview FlyTV Platinum Gold (commit)
There seems to be a new version of the USB DVB-T stick from Wideview with a new demod-revision inside and thus a new firmware. This patch enables support for that (commit)
Added support for the new Lifeview hybrid cardbus modules (commit)
Added keycodes for the DViCO FusionHDTV portable remote control in Cxusb driver (commit)
Remove VIDIOC_S_AUDIO from tvaudio: no longer used (commit)
Add support for the Wolfson Microelectronics WM8739 stereo A/D converter from the ivtv driver (commit)
Cx88 default picture controls values (commit)
Add PAL / SECAM support to LG TALN series (commit)
Add support for the uPD6408x NEC Electronics 3-Dimensional Y/C separation i2c device (commit)
Creates a virtual video device driver. The Virtual Video Device Driver (aka vivi) is a device that can be used to test core v4l functionalities or be a prototype for newer development. When loaded, it provides a video device that generates a standard color bar, with a timestamp placed at top left corner (commit)
- Infiniband:
- IRDA
TOIM3232 dongle support: Here goes a patch for supporting TOIM3232 based serial IrDA dongles (commit)
nsc-ircc: support for yet another Thinkpad IrDA chipset, a variation of the nsc-ircc PC8739x chipset, found in some IBM Thinkpad laptops (commit)
nsc-ircc: Enable PnP support for the nsc-ircc chipset (commit)
- i2c
Add support for the CS5535/CS5536 in the scx200_acb driver (commit)
Add Broadcom HT-1000 south bridge's PCI ID to i2c-piix driver. Note that at least on Supermicro H8SSL it uses non-standard SMBHSTCFG = 3 and standard values like 0 or 9 causes hangup (commit)
Add the DS2482 I2C-to-w1 bridge driver (commit)
- acpiphp
- hwmon
- pcmcia
- Serial:
- dm/md:
Raid5 reshaping support (LWN article) (commit)
Infrastructure to allow normal IO to continue while array is expanding (commit)
- LED
Adds an LED driver for LEDs exported by the Sharp LOCOMO chip as found on some models of Sharp Zaurus (commit)
Add NAND MTD activity LED trigger (commit)
Adds LED drivers for LEDs found on the Sharp Zaurus c7x0 (corgi, shepherd, husky) and cxx00 (akita, spitz, borzoi) models (commit)
Add an LED trigger for IDE disk activity to the ide-disk driver (commit)
Add an LED trigger for the charger status as found on the Sharp Zaurus series of devices (commit)
Adds LED drivers for LEDs found on the Sharp Zaurus c6000 model (tosa) (commit)
Add GPIO LED support for Samsung S3C24XX SoC series processors (commit)
Add support for the LED(s) on the AT91RM9200-based boards (commit)
LED: class documentation (commit)
Add LED class (commit)
add LED device support for ixp4xx devices (commit)
Add support for LED triggers to the LED subsystem (commit)
- Various stuff:
Add driver support for general purpose I/O feature of the Synclink GT adapters (commit)
WATCHDOG at91_wdt.c Watchdog driver for the Atmel AT91RM9200 processor (commit)
Remove blkmtd driver (commit)
hdaps: support new Lenovo machines (commit) and Thinkpad R52 (commit)
IRDA: Support for Sigmatel STIR421x chip (commit)
SD/MMC support for i.MX/MX1 (commit)
Add support for the MMC/SD card interface on the Atmel AT91RM9200 processor (commit)
Support for next-generation TPM chips (commit)
- mmc
Secure Digital Host Controller Interface driver: Driver for the Secure Digital Host Controller Interface specification (commit)
Add OMAP MMC host driver (commit)
udf: fix uid/gid options and add uid/gid=ignore and forget options (commit)
aoe: support dynamic resizing of AoE devices (commit)
Generic RTC subsystem: This allows users to plug one or more RTCs to the system (code). This removes a number of drivers under drivers/i2c which are implemented in this new subsystem (commit).