Kernel-Log – Was 2.6.33 bringt (5): Treiber
Verbesserungen im Alsa-Code für HD-Audio-Codecs, ein V4L/DVB-Treiber für den Mantis-TV-Chip sowie Treiber für MSI-Notebooks und neuere AMD-CPUs und einiges mehr verbessern die Hardware-Unterstützung von Linux. Die Android-Treiber sind aus dem Staging-Bereich geflogen, Ramzswap (früher Compcache), Framework zum Komprimieren von Arbeitsspeicher, hinzugekommen.
- Thorsten Leemhuis
Ende vergangener Woche hat Linus Torvalds mit Linux 2.6.33-rc8 die achte Vorabversion des Linux-Kernel 2.6.33 freigegeben. Er denkt laut Freigabemail, dass dies die letzte Vorabversion sei, was auf die Freigabe der nächsten Kernel-Version aus dem Hauptentwicklungszweig Ende dieser oder Anfang nächster Woche hindeutet; es wäre aber auch nicht das erste Mal, dass Torvalds doch noch eine weitere Version einschiebt und den Kernel drei bis sieben Tage später veröffentlicht.
Die folgende Beschreibung der Neuheiten rund um Treiber in den Bereichen Audio und Video, Notebooks, Eingabegeräte und Hardware-Monitoring, USB und Firewire sowie der sie umgebenden Infrastruktur schließt die Berichterstattung über die wichtigsten Neuheiten von Linux 2.6.33 im Rahmen der Mini-Serie "Was 2.6.33 bringt" ab. Die bedeutsamsten Änderungen inklusive neuer Treiber rund um die Netzwerkunterstützung, Dateisysteme, Storage-Subsystem, Grafikhardware, Architektur, Tracing und Virtualisierung waren Thema im ersten, zweiten, dritten und vierten Teil der Serie.
Audio und Video
Bei den Audio-Treiber gäbe es diesmal nicht so viel Änderungen wie bei 2.6.31 und 2.6.32, erklärte Takashi Iwai in einer Mail, in der er die wichtigsten der für 2.6.33 vorbereiteten Neuerungen zusammengefasst hat. So hebt er hervor, dass sich der Code zur Unterstützung von HD-Audio-Codecs stabilisiere, auch wenn es noch viele Änderungen gebe. Erwähnenswert ist ihm auch die Unterstützung für HDMI-Audio-Codecs von Intel sowie der Code zum Ansprechen zahlreicher von VIA gefertigten HD-Audio-Codecs – deren Namen und Links zu diesen und anderen Commits finden sich im Abschnitt "Die kleinen Perlen" in der zweiten Hälfte des Artikels. Dort sind wie immer auch viele systemspezifische Sonderbehandlungen ("Quirks") verzeichnet, die die Kernel-Entwickler für zahlreiche separat verkaufte oder in PCs oder Notebooks eingesetzte Mainboards aufgenommen haben. Entfernt haben die Kernel-Hacker OSS-Audio-Treiber für Ensoniq-SoundScape-Hardware.
Von den über zehntausend seit der Freigabe von Linux 2.6.32 im Hauptentwicklungszweig vorgenommenen Commits sind über 330 im Audio-Subsystem angesiedelt. Das V4L/DVB-Subsystem übertrifft das aber locker, denn dort gab es diesmal über 600 große und kleine Änderungen. Die wichtigsten hebt Subsystem-Verwalter Mauro Carvalho Chehab in seinen Haupt-Git-Pull-Requests hervor. Unter den neuen Treiber sind etwa die neuen Gscpa-Subtreiber pac7302 und stv0680 für diverse Webcams-Chips. Größere Umbauarbeiten gab es auch an der Infrastruktur zum Ansprechen vom Infrarot-Empfängern für Fernbedienungen. Erst kurz vor der fünften Vorabversion stieß zudem der Treiber Mantis zum Kernel, der den gleichnamigen Chipsatz und den auf diversen TV-Karten eingesetzten Chip unterstützt.
Notebooks, Eingabegeräte und Hardware-Monitoring
Neu zum Kernel stieß der Treiber msi-wmi, mit dessen Hilfe die Funktionstasten zum Regeln der Lautstärke oder Displayhelligkeit einiger MSI-Notebooks auch unter Linux arbeiten sollten. Auch der Treiber classmate-laptop für Intels Classmate-PCs ist neu dabei. Erheblich überarbeitet haben die Kernel-Hacker einige Teile rund um die Audio-Unterstützung des Treibers für Thinkpad-Notebooks von IBM und Lenovo (1, 2, 3).
Den Treiber wacom erweiterten die Kernel-Entwickler um Unterstützung für die von Wacom gefertigten Single- und Multi-Touch-LCD-ISDv4-Tablets mit den Identifikationscodes 9F, E2 und E3. Verbessert haben die Entwickler die Unterstützung für Geräte wie die Dell-Latitude-Notebooks der Serie E6x00, die Touchpads und Trackpoints von ALPS haben. Der ALPS-Treibercode unterstützt nun auch die etwa bei Notebooks von Acer gelegentlich zu findenden Touchpads mit einem "4-directional button" besser.
Mit Hilfe des neu zum Kernel gestoßenen Treibers k10temp lassen sich die Temperatursensoren verschiedener neuerer AMD-CPUs auslesen. Da viele CPUs jedoch fehlerhafte Werte liefern, arbeitet der Code erst nach Angabe eines speziellen, in der Dokumentation angegebenen Parameters. Der Treiber via-cputemp ist ebenfalls frisch dabei und gibt die Daten der Temperatursensoren in neueren VIA-CPUs aus.
USB und Firewire
Zum USB-Subsystem stieß ein maßgeblich von Nokia entwickelter Treiber für den USB-EHCI-Controller von OMAP-34xx-Prozessoren. Einige weitere Änderungen im USB-Subsystem finden sich über die Links in der zweiten Artikelhälfte und den Git-Pull-Request des USB-Subsystem-Verwalters.
Der Verwalter des FireWire-Codes von Linux, Stefan Richter, rät Distributionen über einen Git-Pull-Request und einigen Änderungen am bei der Kernel-Konfiguration eingeblendeten Hilfe-Text nun nachhaltig zum Umstieg auf des neueren, Juju genannten FireWire-Stack. Details zu den nötigen Schritten liefert das Wiki der Linux-FireWire-Entwickler; dort sind auch einige weitere Korrekturen und Verbesserungen am FireWire-Code von Linux 2.6.33 gelistet
Staging
Wie bereits ersten Teil der Mini-Serie "Was 2.6.33 bringt" erwähnt, nahmen die Kernel-Entwickler den Treiber rtl8192u für die gleichnamigen WLAN-Chips von Realtek in den Staging-Zweig auf – er ist leicht zu verwechseln mit den Treibern rtl8192e und rtl8192su, die schon bei früheren Kerneln in den Bereich für unreife und "mistige" Treiber aufgenommen wurden. Umbenannt wurde der Treiber rtl8187se, da ein ordentlicher Linux-Treiber in Zukunft diesen Namen tragen soll.
Größere Änderungen gab es auch an den Staging-Treiber für neuere WLAN-Chips von Ralink – der Treiber rt3090 etwa konnte entfernt werden, weil dessen Funktionen nun der Staging-Treiber rt2860 erledigt. Diese Staging-Treiber basieren auf einigen von Ralink selbst entwickelten und unter der GPL freigegebenen Treibern, die der Hersteller zwischenzeitlich aktualisiert hat – einige der dort enthaltenen Verbesserungen haben die Kernel-Entwickler in die Staging-Treiber des Kernels überführt.
Im Staging-Zweig landete auch das zuvor Compcache und nun Ramzswap genannte Framework, das die auf einem virtuellen Swap-Device abgelegten Daten komprimiert im Arbeitsspeicher ablegt, um diesen effizienter zu nutzen – Hintergründe zu der Technik liefert die Dokumentation sowie ein im Mai vergangenen Jahres bei LWN.net publizierter Artikel. Neu dabei ist auch Code zur Überstützung des Protokolls B.A.T.M.A.N. (Better Approach To Mobile Ad-Hoc Networking), das den Aufbau von Ad-Hoc-Mesh-Netzwerken ermöglicht – Details dazu finden sich bei open-mesh.org
Wie erwartet wurde der Code für Distributed storage (DST) und einige Treiber für Googles Android aus dem Staging-Bereich entfernt, weil sich niemand um deren Code gekümmert hat. Die Hintergründe im Fall der Android-Treiber erläuterte Staging-Verwalter Greg Kroah-Hartman in einem Blog-Post genauer, über das wir bereits berichteten.
Einen Überblick über weitere Änderungen im Staging-Bereich und deren Hintergründe liefert Kroah-Hartman in einem zweiten Blog-Eintrag. Dort droht er auch einigem anderen Treibern einen Rauswurf in naher Zukunft an. Darunter sind auch die Treiber zur Unterstützung von Hyper-V, weil die dafür zuständigen Microsoft-Entwickler wieder einmal verschwunden seien ("The developers again seem to have disappeared, this is getting old"). Bereits im vergangenen September hatte Kroah-Hartman deren Rauswurf aus dem selben Grund angedroht, dann tauchten die Entwickler aber wieder auf – so auch jetzt, sodass der Rauswurf fürs erste abgewendet scheint.
Die kleinen Perlen
Viele weitere nicht ganz so wichtige, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den Kernel-Quellen auf Kernel.org. Im Webfrontend liefern normalerweise der Commit-Kommentar und der Patch selbst zahlreiche weitere Informationen zur jeweiligen Änderungen.
Audio
- ALSA: ac97: add AC97 STMicroelectronics' codecs
- ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense blacklist
- ALSA: ak4113 support
- ALSA: ak4620 support, codec regs listed in proc
- ALSA: cs4236: add dB scale for all volume controls
- ALSA: cs5535audio: free OLPC quirks from reliance on MGEODE_LX cpu optimization
- ALSA: document: Add direct git link to grub hda-analyzer
- ALSA: hda - Add ALC661/259, ALC892/888VD support
- ALSA: hda - Add an ASUS mobo to MSI blacklist
- ALSA: hda - Add a pin-fix for FSC Amilo Pi1505
- ALSA: hda - Add a position_fix quirk for MSI Wind U115
- ALSA: hda - add beep_mode module parameter
- ALSA: hda - Add description of beep_mode in ALSA-Configuration.txt
- ALSA: hda - Add missing Line-Out and PCM switches as slave
- ALSA: hda - Add MSI blacklist
- ALSA: hda - Add PCI IDs for Nvidia G2xx-series
- ALSA: hda - Add position_fix quirk for HP dv3
- ALSA: hda - add possibility to choose speakers configuration for 4930g
- ALSA: hda - Add power on/off counter
- ALSA: HDA: add powersaving hook for Realtek
- ALSA: hda - Add reboot notifier to each codec
- ALSA: hda - Add STAC9205 PCI_QUIRK for Dell Vostro 1700
- ALSA: hda - Add support for the new 27 inch IMacs
- ALSA: hda - allow up to 4 HDMI devices
- ALSA: hda - Change quirk for Acer Aspire 5930G
- ALSA: hda - Disable default quirk for Sony VAIO with ALC262 codec
- ALSA: hda - Enable MSI as default
- ALSA: hda - Fix detection of dual headphones
- ALSA: hda - Fix LED GPIO setup for HP laptops with IDT codecs
- ALSA: hda: Fix max PCM level to 0 dB for Fujitsu-Siemens laptops using CX20549 (Venice)
- ALSA: hda - Fix missing capture mixer for ALC861/660 codecs
- ALSA: hda - Fix mute-LED sync on HP laptops with IDT92HD83xxx codecs
- ALSA: hda - Fix quirk for Maxdata obook4-1
- ALSA: hda - Fix Toshiba NB20x quirk entry
- ALSA: hda - HDMI sticky stream tag support
- ALSA: hda - iMac 9,1 sound patch.
- ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support
- ALSA: hda_intel: Digital PC Beep - change behaviour for input layer
- ALSA: hda - Make Dell Vostro 1015n mic and speaker switching work
- ALSA: hda - Make use of beep device found in Dell Vostro 1015n
- ALSA: hda - More ALC663 fixes and support of compatible chips
- ALSA: hda - proc - add support for dynamic controls to mixer<->NID mapping
- ALSA: hda - proc - introduce Control: lines to show mixer<->NID assignment
- ALSA: hda/realtek: quirk for D945GCLF2 mainboard
- ALSA: hda - select IbexPeak handler for Calpella
- ALSA: hda: Set Front Mic to input vref 50% for Lenovo 3000 Y410
- ALSA: hda - Set mixer name after codec patch
- ALSA: hda - show HBR(High Bit Rate) pin cap in procfs
- ALSA: hda - Update / add kerneldoc comments to exported functions
- ALSA: hda: Use ALC260_WILL quirk for another Acer model (0x1025007f)
- ALSA: HDA VIA: Add Jack detect feature for VT1708.
- ALSA: HDA VIA: Add low current mode for power saving.
- ALSA: HDA VIA: Add smart5.1 function.
- ALSA HDA VIA: Add VIA_CTL_WIDGET_ANALOG_MUTE control type
- ALSA: HDA VIA: Add VT1708B-CE codec support.
- ALSA: HDA VIA: Add VT1716S support.
- ALSA: HDA VIA: Add VT1718S support.
- ALSA: HDA VIA: Add VT1812 support.
- ALSA: HDA VIA: Add VT1828S and VT2020 support.
- ALSA: HDA VIA: Add VT2002P support.
- ALSA: HDA VIA: Remove 48k sample rate limit for S/PDIF
- ALSA: ice1724 - Infrasonic Quartet support
- ALSA: ice1724 - Support for multiple external clock types
- ALSA: intel8x0: Mute External Amplifier by default for Gateway 4525GZ
- ALSA: intelhdmi - accept DisplayPort pin
- ALSA: intelhdmi - add channel mapping for typical configurations
- ALSA: opti-miro: add PnP detection
- ALSA: rename "PC Speaker" and "PC Beep" controls to "Beep"
- ALSA: rename "PC Speaker" controls to "Speaker"
- ALSA: sh: add SuperH DAC audio driver for ALSA V4
- ALSA: snd-pcsp: add nopcm mode
- ALSA: snd-usb-us122l: add support for US-144
- ALSA: sscape: add supoort for SPEA Media FX/Reveal SC-600
- ALSA: sscape: convert to firmware loader framework
- ALSA: sscape: force AD1848 codec mode on old Soundscape
- ALSA: VIA HDA: Add support for VT1818S.
- intelhdmi - dont power off HDA link
- media/radio: New driver for the radio FM module on Miro PCM20 sound card
- sound: oxygen: add digital filter control
- sound: oxygen: add high-pass filter control
- sound: oxygen: add stereo upmixing to center/LFE channels
- sound: usb-audio: add Roland UA-1G support
- sound: usb: make the USB MIDI module more independent
- sound: virtuoso: add headphone impedance control
- sound: virtuoso: add PCM1796 oversampling control
- sound: virtuoso: fix Xonar Essence ST support
Asoc
- ASoC: Added the CPU driver for PCM controllers
- ASoC: Adding OMAP3517 / AM3517 EVM support in ASOC
- ASoC: Add regulator support for WM8731
- ASoC: Add SPI support to WM8711
- ASoC: Add support for IGEP v2
- ASoC: add support for multiple cards/codecs in debugfs
- ASoC: Add support for the WM8727 DAC.
- ASoC: Add WM8711 CODEC driver
- ASoC: ADS117x ADC driver
- ASoC: AK4671: add ak4671 codec driver
- ASoC: Codec driver for Texas Instruments tlv320dac33 codec
- ASoC: Davinci: Add audio codec support for DM365 EVM
- ASoC: finally enable support for eXeda and CM-X300
- ASoC: Modifying Kconfig/Makefile for AM3517 EVM
- ASoC: OMAP: enable Overo driver for CM-T35
- ASoC: omap-mcbsp - add support for upto 16 channels.
- ASoC: Support WM8580 based audio subsystem on SMDK64xx machines
- ASoC: TPA6130A2 amplifier driver
FireWire
- firewire: core: fix use-after-free regression in FCP handler
- firewire: fix use of multiple AV/C devices, allow multiple FCP listeners
- firewire: ohci: always use packet-per-buffer mode for isochronous reception
EDAC/HW-Monitoring/I2C
- amd64_edac: detect DDR3 memory type
- edac: i5100 add 6 ranks per channel
- edac: i5100 add scrubbing
- hwmon: Add Freescale MC13783 ADC driver
- hwmon: (adt7475) Add support for the ADT7473
- hwmon: (adt7475) Add support for the ADT7476
- hwmon: (adt7475) Add support for the ADT7490
- hwmon: (adt7475) Add VID support for the ADT7476
- hwmon: (adt7475) New documentation
- hwmon: (asus_atk0110) Add debugfs interface
- hwmon: Clarify autopwm trip points documentation
- hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs
- hwmon: driver for Texas Instruments amc6821 chip
- hwmon: (f71882fg) Add support for the f71889fg (version 2)
- hwmon: I2C bus support for lis3lv02d and variant accelerometer chips
- hwmon: (it87) Verify the VID pin usage
- hwmon: (k10temp) Blacklist more family 10h processors
- hwmon: New driver for the National Semiconductor LM73
- hwmon: w83627ehf updates
- hwmon: (w83627hf) Drop the force_addr module parameter
- i2c/chips: Move ds1682 to drivers/misc
- i2c-core: i2c bus should support PM entries in struct dev_pm_ops
- i2c: Drop probe, ignore and force module parameters
- i2c-omap: OMAP3: PM: (re)init for every transfer to support off-mode
- i2c: Prevent priority inversion on top of bus lock
- i2c-stub: Allow user to disable some commands
- i2c-stub: Documentation update
- i2c-stub: Implement I2C block support
- i2c-voodoo3: Delete
- lis3: selftest support
- lis3: update documentation and comments
- lis3: update documentation to match latest changes
- MAINTAINERS: Add missing hwmon files
- WATCHDOG: CPUFREQ: S3C24XX Watchdog frequency scaling support.
- WATCHDOG: iTCO_wdt: Add Intel Cougar Point and PCH DeviceIDs
- WATCHDOG: iTCO_wdt: add PCI ID for the Intel EP80579 (Tolapai) SoC
- WATCHDOG: iTCO_wdt: Add support for Intel Ibex Peak
Input
- HID: add device IDs for new model of Apple Wireless Keyboard
- HID: add multi-input quirk for NextWindow Touchscreen.
- HID: add NOGET quirk for another device from CH Products
- HID: add support for Acan FG-8100 barcode reader
- HID: blacklist Acer Ferrari 4005 optical mouse
- HID: make Media key on Logitech DiNovo Mini work
- HID: Support 171 byte variant of Samsung USB IR receiver
- HID: support Logitech/3DConnexion SpaceTraveler and SpaceNavigator
- Input: ad7879 - support auxiliary GPIOs via gpiolib
- Input: add compat support for sysfs and /proc capabilities output
- Input: add DaVinci Keypad Driver
- Input: add driver for Altera PS/2 controller
- Input: add driver for Dynapro serial touchscreen
- Input: add generic support for sparse keymaps
- Input: add mc13783 touchscreen driver
- Input: add new keycodes useful in mobile devices
- Input: add new keycodes useful in mobile devices
- Input: add open and close methods for polled devices
- Input: add S3C24XX touchscreen driver
- Input: add the ABS_MT_PRESSURE event
- Input: ep93xx_keypad - update driver to new core support
- Input: i8042 - add Dritek quirk for Acer Aspire 5610.
- Input: i8042 - add Gigabyte M1022M to the noloop list
- Input: input-polldev - add sysfs interface for controlling poll interval
- Input: input-polldev, matrix-keypad - include in kernel doc
- input/keyboard: new driver for ADP5520 MFD PMICs
- Input: lifebook - add another Lifebook DMI signature
- Input: lifebook - do not advertise unsupported buttons
- Input: lkkbd - change formatting style to match the rest of the kernel
- Input: speed up suspend/shutdown for PS/2 mice and keyboards
- Input: touchkit_ps2 - do not advertise unsupported buttons
- Input: update multi-touch protocol documentation
- Input: usbtouchscreen - add support for ET&T TC5UH touchscreen controller
- Input: usbtouchscreen - add support for Zytronic capacitive touchscreen
- Input: wacom - add defines for packet lengths of various devices
- Input: xpad - add two new Xbox 360 devices
Notebooks
- acerhdf: add new BIOS versions
- acerhdf: add new BIOS versions
- asus-laptop: add Lenovo SL hotkey support
- asus-laptop: Add wlan switch found on V6V
- asus-laptop: change light sens default values.
- asus-laptop: schedule display_get and lcd_switch for removal
- backlight/thinkpad-acpi: issue backlight class events
- dell-laptop: Fix rfkill state queries
- dell-wmi: Add support for new Dell systems
- eeepc-laptop: add hotplug_disable parameter
- eeepc-laptop: add touchpad led
- eeepc-laptop: disable cpu speed control on EeePC 701
- hp-wmi: improve rfkill support
- sony-laptop: add AVMode key mapping
- sony-laptop: rfkill support for newer models
- thinkpad-acpi: bump version to 0.24
- thinkpad-acpi: disable volume control
- thinkpad-acpi: don't take the first ALSA slot by default
- thinkpad-acpi: fix default brightness_mode for R50e/R51
- thinkpad-acpi: improve Kconfig help text
- thinkpad-acpi: issue backlight class events
- thinkpad-acpi: make volume subdriver optional
- thinkpad-acpi: update volume subdriver documentation
- Toshiba Bluetooth Enabling driver (RFKill handler v3)
- wmi: Add support for module autoloading
USB
- hso: Add Vendor/Product ID's for new devices
- USB: add a "remove hardware" sysfs attribute
- USB: add device ID for Apple Cinema Display 23in 2007
- USB: add devpath sysfs attribute
- USB: Add EHCI support for MX27 and MX31 based boards
- USB: add hex/bcd detection to usb modalias generation
- USB: add remove_id sysfs attr for usb drivers
- USB: add scatter-gather support to usbmon
- USB: Add support for Xilinx USB host controller
- USB: ark3116: Setup some basic infrastructure for new ark3116 driver.
- USB: EHCI: add native scatter-gather support
- USB: ehci: Allow EHCI to be built on OMAP3
- USB: Exposing second ACM channel as tty for Nokia S60 phones.
- USB: ftdi_sio: add USB device ID's for B&B Electronics line
- USB: g_multi: Multifunction Composite Gadget added
- USB: host: ehci: introduce omap ehci-hcd driver
- USB: Interface Association Descriptors added to CDC RNDIS
- USB: mos7840: add device IDs for B&B electronics devices
- usbnet & cdc-ether: Autosuspend for online devices
- USB: option: add pid for ZTE
- USB: option.c: add support for D-Link DWM-162-U5
- USB: option: support hi speed for modem Haier CE100
- USB OTG: Add generic driver for ULPI OTG transceiver
- USB OTG: add support for ulpi connected external transceivers
- USB: power management documentation update
- USB: prepare for changover to Runtime PM framework
- usbtest: make module param pattern writeable
- USB: usb-storage: add BAD_SENSE flag
- USB: wusb: add wusb_phy_rate sysfs file to host controllers
- USB: xhci: Add tests for TRB address translation.
Staging:
- Staging: add Samsung Laptop driver
- Staging: dream: add TODO file
- Staging: dream: make it independant from CONFIG_ANDROID
- Staging: dream: mark as BROKEN
- Staging: et131x: first pass RX cleanup
- Staging: IIO: Add tsl2560-2 support to tsl2563 driver.
- Staging: IIO: Remove tsl2561 driver. Support merged with tsl2563.
- Staging: iio: tsl2563 ambient light sensor driver
- Staging: octeon-ethernet: Convert to use PHY Abstraction Layer.
- Staging: poch: Parameter to enable loopback
- Staging: poch: Parameter to enable synthetic counter
- Staging: ramzswap: add TODO file
- Staging: rt28x0: fix comments in *.c files
- Staging: rt28x0: fix comments in common/*.c files
- Staging: rt28x0: fix comments in *.h files
- Staging: rt28x0: remove private WEXT handlers
- Staging: rt28x0: remove typedefs (part three)
- Staging: rt28x0: run *.c files through Lindent
- Staging: rt28x0: run *.h files through Lindent
- staging: rtl8192su: add USB VID/PID for HWNUm-300
- Staging: rtl8192u: remove bad whitespaces
- Staging: rtl8192u: remove dead code
- Staging: samsung-laptop: add TODO file
- Staging: sm7xx: add a new framebuffer driver
- Staging: vme: Pull common VME interrupt handling into core code
- Staging: wlags49_h2: add Agere driver for HERMES II and HERMES II.5 chipsets
- Staging: wlags49_h2: add TODO files
V4L/DVB
- em28xx: em2800 chips support max width of 640
- feature-removal-schedule: Add v4l1 drivers obsoleted by gspca sub drivers
- V4L/DVB (13040): V4L2: Add a v4l2-subdev (soc-camera) driver for OmniVision OV9640 sensor
- V4L/DVB (13042): Add NEC protocol to firmware v1.2 handler
- V4L/DVB (13043): Add support for Pixelview SBTVD IR
- V4L/DVB (13052): DiB0700: EvolutePC TvWay+ USB ISDB-Tb fullseg device support
- V4L/DVB (13054): af9015: add USB ID for KWorld PlusTV DVB-T PCI Pro Card (DVB-T PC160-T)
- V4L/DVB (13056): af9015: add LeadTek Y04G0051 remote buttons
- V4L/DVB (13057): af9015: add MSI DIGIVOX mini III remote
- V4L/DVB (13075): xc5000: add FM radio support
- V4L/DVB (13077): em28xx: Add support for new variant of KWorld 2800d
- V4L/DVB (13078): em28xx: fix support for Terratec Cinergy T XS (005e)
- V4L/DVB (13080): saa7134: add support for the digital side of the Behold X7
- V4L/DVB (13084): v4l2-chip-ident: Add ID's needed for the cx23885 and cx25840 modules
- V4L/DVB (13085): cx23885: Fix support for v4l2-dbg access to CX2388[578] and CX23417 regs
- V4L/DVB (13086): cx23885: Add skeleton v4l2_subdev for the CX23888 integrated IR controller
- V4L/DVB (13091): cx23885: Enable HVR-1850 CX23888 A/V core to get VID_CLK running for IR
- V4L/DVB (13097): cx23885: Complete CX23888 IR subdev implementation for Rx Gitweb: http://git.kernel.org/linus/1a0b9d89c62ddf0aed12798686fe452e7e97de42 almost for Tx
- V4L/DVB (13100): cx23885: Add IR input keypress handling and enable for the HVR-1850
- V4L/DVB (13108): tda8290: enable deemphasis_50 module parameter
- V4L/DVB (13116): gspca - ov519: Webcam 041e:4067 added.
- V4L/DVB (13130): soc-camera: add a new driver for the RJ54N1CB0C camera sensor from Sharp
- V4L/DVB (13134): Add support for TBS-likes remotes
- V4L/DVB (13135): Add support for TeVii remotes
- V4L/DVB (13137): gspca_mr97310a: Add controls for vga cams with sensor type 0
- V4L/DVB (13144): gspca_ov519: Add support for OV2610 and OV3610 sensors
- V4L/DVB (13145): gscpa_ov519: add support for the ovfx2 bridge
- V4L/DVB (13149): uvcvideo: Add a new UVC_TRACE_VIDEO trace level
- V4L/DVB (13155): uvcvideo: Add a module parameter to set the streaming control timeout
- V4L/DVB (13159): DocBook/frontend: use cross references for ioctls
- V4L/DVB (13160): DocBook/Makefile: add linux/dvb/frontend.h header file
- V4L/DVB (13162): Docbook/dvb: add missing specs for FE_DISHNETWORK_SEND_LEGACY_CMD ioctl
- V4L/DVB (13164): DocBook/dvb: Starts documenting DVBS2API ioctls
- V4L/DVB (13168): Add support for Asus Europa Hybrid DVB-T card (SAA7134 SubVendor ID: 0x1043 Device ID: 0x4847)
- V4L/DVB (13173): adv7180: Support for getting input status
- V4L/DVB (13174): adv7180: Support for setting input status
- V4L/DVB (13176): adv7180: Support checking standard via interrupts
- V4L/DVB (13177): radio: Add support for TEF6862 tuner
- V4L/DVB (13178): gspca: Add support for Winbond W9967CF and W9968CF camera's
- V4L/DVB (13181): gspca w9968cf: Add support for JPEG compression
- V4L/DVB (13183): gspca: add stv0680 subdriver
- V4L/DVB (13187): au8522: add support for saturation and hue controls
- V4L/DVB (13196): gspca - gl860: add flip/mirror for OV2640
- V4L/DVB (13204): saa7134: add support for the Leadtek DTV1000S
- V4L/DVB (13206): cx25840: add component support
- V4L/DVB (13207): cx23885: add component input type
- V4L/DVB (13209): cx23885: card mygica x8506 add analog video input support
- V4L/DVB (13211): cx23885: card Mygica X8506 analog TV support
- V4L/DVB (13242): gspca_mr97310a: Add minimum clock divider control
- V4L/DVB (13243): gscpa_mr97310a: Add Trust Spyc@m 100 USB ID
- V4L/DVB (13249): gspca - pac7311: Webcam 093a:2628 added.
- V4L/DVB (13250): gspca - zc3xx: Add some delays and warn on i2c errors.
- V4L/DVB (13260): saa7134: add support for Leadtek Winfast DTV-1000S remote control
- V4L/DVB (13271): TS speed check. Logging transport stream speed in Kbits per second
- V4L/DVB (13297): dib0700_devices: EvolutePC TvWay+ USB ISDB-Tb remote control support
- V4L/DVB (13308): uvcvideo: Add support for MSI StarCam 370i webcams
- V4L/DVB (13323): gspca - zc3xx: Adjust the exchanges of sensors mi0360soc and pb0330.
- V4L/DVB (13328): em28xx: Add chip ID for em2800
- V4L/DVB (13334): stv6110: add configurable gain
- V4L/DVB (13338): stv0900: big rework to support cut 3.0.
- V4L/DVB (13339): stv0900: big rework to support cut 3.0.
- V4L/DVB (13340): stv0900: big rework to support cut 3.0.
- V4L/DVB (13341): stv0900: big rework to support cut 3.0.
- V4L/DVB (13347): cx23885: add digital television support for Hauppauge WinTV-HVR1290
- V4L/DVB (13349): cx23885: Enable IR input keypress handling for the Hauppauge WinTV HVR-1290
- V4L/DVB (13363): ec100: add new driver for E3C EC100 DVB-T demodulator
- V4L/DVB (13364): ec168: add new driver for E3C EC168 DVB USB
- V4L/DVB (13368): af9015: support for Sveon STV20 Tuner USB DVB-T HDTV
- V4L/DVB (13373): Maxium MAX2165 silicon tuner
- V4L/DVB (13374): AltoBeam ATBM8830 GB20600-2006(DMB-TH) demodulator
- V4L/DVB (13375): cx23885: Add support for Mygica X8558Pro DMB-TH
- V4L/DVB (13376): cx-usb: add Mygica D689 DMB-TH USB support
- V4L/DVB (13385): gspca - pac7302: Add red and blue balance control.
- V4L/DVB (13388): gspca - pac7302: Add white balance control.
- V4L/DVB (13400): firedtv: port to new firewire core
- V4L/DVB (13407): Add Prof 7301 PCI DVB-S2 card
- V4L/DVB (13420): gspca - doc: Change the name of some webcams.
- V4L/DVB (13422): gspca - ov534: ov772x changes from Richard Kaswy.
- V4L/DVB (13438): zr364xx: add support for Trust Powerc@m 910Z
- V4L/DVB (13440): ivtv: Update the cards definitions to add another AVerMedia M113 variant
- V4L/DVB (13441): ivtv: Added FM radio support to Avermedia AVerTV MCE 116 Plus card
- V4L/DVB (13442): ivtv: Add module parameter to adjust I2C SCL clock period per board
- V4L/DVB (13444): ivtv: Add explicit IR controller initialization for the AVerTV M116
- V4L/DVB (13446): ivtv: Add more explicit detection of known IR devices for Hauppauge cards
- V4L/DVB (13460): v4l2-spec: add missing V4L2-PIX-FMT-STV0680 description.
- V4L/DVB (13464): Davinci VPFE Capture: add i2c adapter id in platform data
- V4L/DVB (13467): V4L2: Added CID's V4L2_CID_ROTATE/BG_COLOR
- V4L/DVB (13469): Davinci VPFE Capture: Add support for Control ioctls
- V4L/DVB (13470): V4L2: Add Capability and Flag field for Chroma Key
- V4L/DVB (13471): v4l2 doc: Added FBUF_CAP_SRC_CHROMAKEY/FLAG_SRC_CHROMAKEY
- V4L/DVB (13489): gspca - sonixj: Add the sensor po1030.
- V4L/DVB (13490): gspca - ov534: Add controls for sensor ov965x.
- V4L/DVB (13493): TeVii S470 and TBS 6920 fixes
- V4L/DVB (13502): uvcvideo: Add support for Genius eFace 2025 webcams
- V4L/DVB (13528): em28xx: add support for em2800 VC211A card
- V4L/DVB (13532): ir-common: Add infrastructure to use a dynamic keycode table
- V4L/DVB (13535): ir-common: Add a hauppauge new table with the complete RC5 code
- V4L/DVB (13538): ir-common: Use a dynamic keycode table
- V4L/DVB (13540): ir-common: Cleanup get key evdev code
- V4L/DVB (13542): ir-keytable: Allow dynamic table change
- V4L/DVB (13543): ir-common: Associate a table with a given protocol type
- V4L/DVB (13544): ir-keymaps: mark the new rc5 hauppauge with IR_TYPE_RC5
- V4L/DVB (13545): em28xx: properly select IR protocol based on the IR table
- V4L/DVB (13546): ir-keymaps: Add table for Terratec Cinergy XS FM
- V4L/DVB (13549): v4l: Add video_device_node_name function
- V4L/DVB (13559): gspca - pac7302: Some webcams are upside-down by default.
- V4L/DVB (13562): gspca - doc: Update webcam list.
- V4L/DVB (13569): smsusb: add autodetection support for five additional Hauppauge USB IDs
- V4L/DVB (13572): v4l2-spec: Digital Video Timings API documentation
- V4L/DVB (13573): v4l2-spec: updated revision history, updated version to 2.6.33.
- V4L/DVB (13579): PATCH: better support for INTUIX DVB stick boot
- V4L/DVB (13580): Add support for PCTV 74e (Pinnacle) + fix USB vendor IDs
- V4L/DVB (13583): DiB8090: Add the DiB0090 tuner driver and STK8096GP-board
- V4L/DVB (13586): DiB0700: Add parameter to change the buffer size
- V4L/DVB (13591): add support for IR on FlyDVB Trio (saa7134)
- V4L/DVB (13600): radio-si470x: support RDS on si470x i2c driver
- V4L/DVB (13601): radio-si470x: support PM functions
- V4L/DVB (13602): bttv: fix MODULE_PARM_DESC for i2c_debug and i2c_hw
- V4L/DVB (13608): radio-sf16fmi: fix mute, add SF16-FMP to texts
- V4L/DVB (13609): radio-sf16fmi: add autoprobing
- V4L/DVB (13612): IR: Move common IR code to drivers/media/IR
- V4L/DVB (13613): IR: create ir-core module
- V4L/DVB (13619): v4l2-spec: Adds EBUSY error code for S_STD and QUERYSTD ioctls
- V4L/DVB (13651): sh_mobile_ceu_camera: document the scaling and cropping algorithm
- V4L/DVB (13652): tw9910: Add revision control
- V4L/DVB (13655): tw9910: Add power control
- V4L/DVB (13657): tw9910: Add revision control to tw9910_set_hsync
- V4L/DVB (13658): v4l: add a media-bus API for configuring v4l2 subdev pixel and frame formats
- V4L/DVB (13661): rj54n1cb0c: Add cropping, auto white balance, restrict sizes, add platform data
- V4L/DVB (13669): tw9910: Add sync polarity support
- V4L/DVB (13670): soc-camera: Add mt9t112 camera driver
- V4L/DVB (13678): Add support for yet another DvbWorld, TeVii and Prof USB devices
- V4L/DVB (13680a): DocBook/media: copy images after building HTML
- V4L/DVB (13680b): DocBook/media: create links for included sources
- V4L/DVB (13699): [Mantis, MB86A16] Initial checkin: Mantis, MB86A16
- V4L/DVB (13720): [Mantis/Terratec Cinergy C] Add support for the Terratec Cinergy C PCI
- V4L/DVB (13723): [Mantis/VP-2040, Terratec Cinergy C] Add support for the Cinergy C, VP-2040 clone
- V4L/DVB (13724): [Mantis/VP-1041] Initial support for Mantis VP-1041
- V4L/DVB (13726): [Mantis/Skystar HD2] Add support for the Technisat Skystar HD2
- V4L/DVB (13748): [Mantis/VP-2040] Add support for VP-2040 (TDA10023 frontend based)
- V4L/DVB (13783): [Mantis/Technisat Cablestar HD2] Add support for the Technisat Cablestar HD2
- V4L/DVB (13795): [Mantis/Hopper] Code overhaul, add Hopper devices into the PCI ID list
- V4L/DVB (13797): [Mantis/Hopper/TDA665x] Large overhaul,
- V4L/DVB (13880): gspca - m5602-s5k4aa: Add vflip quirk for the Amilo Xi 2428
- V4L/DVB (13887): tda8290: add autodetection support for TDA8295c2
Various Drivers
- ad525x_dpot: new driver for AD525x digital potentiometers
- Add OMAP spi100k driver
- ARM: NUC900: add RTC driver support for nuc910 and nuc920
- ARM: NUC900: Add spi driver support for nuc900
- cs5535: add a generic clock event MFGPT driver
- cs5535-gpio: add AMD CS5535/CS5536 GPIO driver support
- cs5535-gpio: request function, mask & names added
- Doc: use misc-devices/ dir for drivers
- drivers/misc: add driver for Texas Instruments DAC7512
- gpio: adp5588-gpio: new driver for ADP5588 GPIO expanders
- gpiolib: add support for changing value polarity in sysfs
- gru: add additional GRU statistics
- gru: add debug option for cache flushing
- gru: add hugepage support
- gru: support 64-bit GRU addresses
- leds: Add driver for ADP5520/ADP5501 MFD PMICs
- leds: Add driver for LT3593 controlled LEDs
- leds: Add LED class driver for regulator driven LEDs.
- leds: LED driver for Intel NAS SS4200 series (v5)
- MAINTAINERS: add SPI co-maintainer.
- mpc52xx_spi: add gpio chipselect
- pcf50633: Add ac power supply class to the charger
- regulator: add 88PM8607 PMIC driver
- regulator: add driver for MAX8660/8661
- regulator: Add support for twl6030 regulators
- rtc: Add an RTC driver for the Oki MSM6242
- rtc: Add an RTC driver for the Ricoh RP5C01
- rtc: add driver for BQ32000 I2C RTC
- rtc: add Freescale MC13783 RTC driver
- rtc: Add twl6030 RTC support
- rtc: make rtc-omap driver ioremap its register space
- rtc-mv: add support for Alarm
- spi: Add s3c64xx SPI Controller driver
- spi: controller driver for Designware SPI core
- spi-imx: Add mx25 support
- spi_mpc8xxx: Add support for QE DMA mode and CPM1/CPM2 chips
- spi_s3c24xx: add FIQ pseudo-DMA support
- spi: SuperH MSIOF SPI Master driver V2
- tty: docs: serial/tty, add to ldisc methods
- tty: esp: remove broken driver
- xilinx_spi: add a platform driver using the xilinx_spi common module.
- xilinx_spi: add support for the DS570 IP.
Nachzügler
Die Kernel-Entwickler pflegen das Gros der Änderungen für eine neue Kernel-Version am Anfang des Entwicklungszyklus in das Quellcodeverwaltungssystem ein. Dadurch kann das Kernel-Log die Neuerungen einer noch in Entwicklung befindlichen Linux-Version beschreiben, Wochen bevor Linus Torvalds diese freigibt. Häufig nehmen die Kernel-Entwickler in der zweiten Phase des Entwicklungszyklus aber noch einige kleinere, zumeist nicht ganz so wichtige Änderungen der Kategorie "Die kleineren Perlen" in den Linux-Kernel auf – teilweise, nachdem wir über die entsprechenden Bereiche berichtet haben.
Diesmal gehörte der "Firmware download driver" ath3k für Bluetooth-Chips von Atheros zu einem der Nachzügler. Eine Auswahl einiger weiter – darunter TCP_NODELAY-Unterstützung für CIFS, ein neue Mount-Option für Btrfs oder Performance-Verbessungen für CFQ – finden Sie solcher in der folgenden Liste:
Dateisysteme
Grafik
Netzwerk
- wimax/i2400m: Add support for more i6x50 SKUs
- rtl8187: Add new device ID
- zd1211rw: adding 0409:0248 to supported device list
Storage
USB
- USB: ftdi_sio: add device IDs (several ELV, one Mindstorms NXT)
- USB: SIS USB2VGA DRIVER: support KAIREN's USB VGA adaptor USB20SVGA-MB-PLUS
- USB: serial: add usbid for dell wwan card to sierra.c
Nachzügler(2)
Im vierten, Architektur und Virtualisierung gewidmeten Teil der Serie "Was 2.6.33 bringt" fehlten im Abschnitt "Die kleinen Perlen" versehentlich einige Links zu einigen weiteren im Bereich Infrastruktur angesiedelten Änderungen:
- Add support for GCC-4.5's __builtin_unreachable() to compiler.h (v2)
- [BKL] add 'might_sleep()' to the outermost lock taker
- clockevents: Make tick_device_lock static
- core: Add kernel message dumper to call on oopses and panics
- cpumask: don't recommend set_cpus_allowed hack in Documentation/cpu-hotplug.txt
- debugobjects: Convert to raw_spinlocks
- doc: Add documentation for bootloader_{type,version}
- Doc: better explanation of procs_running
- docs: large update to ioctl-number.txt
- Doc/stable rules: add new cherry-pick logic
- Doc/stable rules: add new cherry-pick logic
- doc: SubmitChecklist, add ioctls, remove OSDL reference
- Documentation: rw_lock lessons learned
- Documentation: update ring-buffer-design.txt
- err.h: add helper function to simplify pointer error checking
- genirq: Convert irq_desc.lock to raw_spinlock
- hrtimer: Fix /proc/timer_list regression
- hrtimers: Convert to raw_spinlocks
- ipc/sem.c: add a per-semaphore pending list
- ipc/sem.c: sem preempt improve
- kallsyms: remove deprecated print_fn_descriptor_symbol()
- kernel.h: add printk_ratelimited and pr_<level>_rl
- kexec: premit reduction of the reserved memory size
- kfifo: add record handling functions
- kfifo: move out spinlock
- kfifo: move struct kfifo in place
- kfifo: rename kfifo_put... into kfifo_in... and kfifo_get... into kfifo_out...
- lib/vsprintf.c: add %pU to print UUID/GUIDs
- locking: Cleanup the name space completely
- locking: Convert raw_rwlock functions to arch_rwlock
- locking: Convert raw_rwlock to arch_rwlock
- locking: Convert __raw_spin* functions to arch_spin*
- locking: Convert raw_spinlock to arch_spinlock
- locking: Further name space cleanups
- locking: Implement new raw_spinlock
- locking: Make inlining decision Kconfig based
- locking: Rename __RAW_SPIN_LOCK_UNLOCKED to __ARCH_SPIN_LOCK_UNLOCKED
- locking: Reorder functions in spinlock.c
- locking: Separate rwlock api from spinlock api
- locking: Split rwlock from spinlock headers
- lockstat: Add usage info to Documentation/lockstat.txt
- MAINTAINERS: new kbuild maintainer
- memcg: coalesce charging via percpu storage
- memcg: coalesce uncharge during unmap/truncate
- module: make MODULE_SYMBOL_PREFIX into a CONFIG option
- nohz: Allow 32-bit machines to sleep for more than 2.15 seconds
- percpu: kill legacy percpu allocator
- perf_event: Convert to raw_spinlock
- pm_qos: clean up racy global "name" variable
- pm_qos: remove BKL
- rcu: Add expedited grace-period support for preemptible RCU
- rcu: Add synchronize_srcu_expedited() to the documentation
- rcu: Make RCU's CPU-stall detector be default
- rcu: "Tiny RCU", The Bloatwatch Edition
- rcu: Update trace.txt documentation for blocked-tasks lists
- rcu: Update trace.txt documentation to reflect recent changes
- rtmutes: Convert rtmutex.lock to raw_spinlock
- sched: Convert cpupri lock to raw_spinlock
- sched: Convert pi_lock to raw_spinlock
- sched: Convert rt_runtime_lock to raw_spinlock
- scripts/get_maintainer.pl: add --roles and --rolestats
- scripts/get_maintainer.pl: support multiple VCSs - add mercurial
- scripts/package: add KBUILD_PKG_ROOTCMD variable
- signal: Print warning message when dropping signals
- smp: Convert smplocks to raw_spinlocks
- spi: Remove BKL from spidev_open
- sysctl: add missing comments
- sysctl drivers: Remove dead binary sysctl support
- sysctl fs: Remove dead binary sysctl support
- sysctl: Introduce a generic compat sysctl sysctl
- sysctl ipc: Remove dead binary sysctl support code.
- sysctl kernel: Remove binary sysctl logic
- sysctl: Neuter the generic sysctl strategy routines.
- sysctl: Reduce sys_sysctl to a compatibility wrapper around /proc/sys
- sysctl: Remove dead code from sysctl_check
- sysfs: deprecated features are to help old tools not to confuse them
- sys: Remove BKL from sys_reboot
- this_cpu: Implement X86 optimized this_cpu operations
- tree-wide: fix assorted typos all over the place
- vsprintf: add %pR support for IRQ and DMA resources
- vsprintf: add %pRt, %pRf to print struct resource details
Weitere Hintergründe und Informationen zu Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in den vorangegangenen Kernel-Logs auf heise open. Neue Ausgaben des Kernel-Logs werden auf den Identi.ca- und Twitter-Konten "@kernellog" erwähnt; die englischen, bei den Kollegen von "The H" erscheinenden Übersetzungen auf den Identi.ca- und Twitter-Konten "@kernellog2". Der Autor des Kernel-Logs zwitschert unabhängig davon über einige Kernel-Log-Themen bei Identi.ca und Twitter als "@kernellogauthor". (thl). (thl)