Kernel-Log – Was 2.6.29 bringt (1): Netzwerk – "Mistige" WLAN-Treiber, Wimax- und AP-Unterstützung
Seite 2: Mehr Treiber, Unterstützung für AP-Mode
Neue und entfernte WLAN-Treiber, AP-Mode
Die schon länger im WLAN-Stack des Kernel enthaltene, aber bislang deaktivierte Unterstützung zum Betrieb als AccessPoint (AP) wurde freigeschaltet (Dokumentation, Unterstützung in nl80211); die eigentlichen AP-Verwaltungsfunktionen erledigt der Kernel allerdings nicht selbst, sondern überlässt dies aktuellen Versionen von hostapd. Die WLAN-Treiber müssen den AP-Mode aber auch unterstützen, was beispielsweise bei den dem Kernel beiliegenden Treibern für die vor allem in Centrino-Notebooks verbauten Intel-WLAN-Module nicht der Fall ist. Die WLAN-Treiber ath5k und p54 erweitern die Entwickler hingegen um Unterstützung für den AP-Mode (1, 2).
Den schon länger AP-tauglichen WLAN-Treiber Ath9k haben die Kernel-Hacker um Unterstützung für die Atheros-WLAN-Chip AR9285 erweitert (1, 2). Rate Control API und HT Handling des WLAN-Stacks mac80211 haben die Entwickler erheblich überarbeitet (1, 2, 3); zudem erweiterten die Kernel-Hacker cfg80211 und mac80211 um Unterstützung für 802.11d. Teile des veralten, noch für die Treiber ipw2x00 und hostap benötigten Linux-WLAN-Stacks wurden umhergeschoben und versteckt, was das Übersetzen einiger unabhängig vom offiziellen Linux-Kernel gepflegten WLAN-Treiber stört.
Rund ums LAN
Für LAN-Treiber ist die Generic Receive Offload (GRO) Infrastructure neu dabei. Ebenfalls neu sind die LAN-Treiber smsc911x für die LAN-Chips LAN911x und LAN921x von SMSC sowie der Treiber smsc9420 für den vom selben Hersteller gefertigten 100-MBit-Chip LAN9420. Der Treiber bnx2 versteht sich jetzt mit dem Broadcom-Chip BCM5716S, das PHY-Modul broadcom mit den Chips BCM57780 und BCM50610. Im Treiber tg3 für LAN-Chips von Marvell neu sind Verbesserungen für den 5785 und Unterstützung für die Chips 5761S und 57780.
Nachdem die Verwalter des Netzwerk-Subsystems und deren Treiber vom bei 2.6.27 eingeführten Split von Treibern und Firmware anfangs nicht viel hielten, haben die Kernel-Entwickler mittlerweile die Teilung doch bei zahlreiche Netzwerk-Treibern umgesetzt – für 2.6.29 etwa bei den Treibern acenic, e100, starfire und tg3. Entfernt haben die Entwickler den für 100-Mit-LAN-Chips von Intel zuständigen LAN-Treiber eepro100, den der Treiber e100 eigentlich schon lange ersetzt; ebenfalls weichen musste der Bluetooth-Treiber hci_usb, dessen Arbeit btusb seit längerem übernimmt.
Noch mehr Änderungen
Die bislang genannten Neuerungen sind die wichtigsten bislang für 2.6.29 aufgenommenen Änderungen im Netzwerk-Bereich; wie immer gibt es aber noch eine ganze Reihe weiterer nicht gar so wichtige, aber keineswegs unwichtige Neuerungen, die die Kernel-Entwickler im Quellcodeverwaltungsystem des Linux-Kernels vorgenommen haben:
General:
- bonding: alternate agg selection policies for 802.3ad
- DCB: Add support for DCB BCN
- ethtool: Add GGRO and SGRO ops
- gro: Add internal interfaces for VLAN
- ipv4: Add GRO infrastructure
- netdev: network device operations infrastructure
- pkt_sched: add DRR scheduler
- tcp: Add GRO support
- vlan: Add GRO interfaces
LAN specific:
- bnx2: Restrict WoL support.
- e1000e: Add GRO support
- e1000e: enable ECC correction on 82571 silicon
- hso: Add new usb device id's.
- igb: Add support for pci-e Advanced Error Reporting
- ixgbe: add device support for 82598AT (copper 10GbE) adapters
- ixgbe: add SFP+ driver support
- ixgbe: Implement PCIe AER support
- ixgbe: this patch adds support for DCB to the kernel and ixgbe driver
- IXP4xx: Add ethtool support to Ethernet driver.
- IXP4xx: Add PHYLIB MII ioctl to the Ethernet driver.
- IXP4xx: Add PHYLIB support to Ethernet driver.
- phy: Add file missed in previous commit.
- phy: Add LSI ET1011C PHY driver
- phy: add natsemi PHY driver
- phy: power management support
- net: Add support for the KS8695 ethernet devices.
- sfc: Add support for Solarflare 10Xpress SFT9001
- sfc: Implement auto-negotiation
- sfc: Use lm87 and lm90 drivers for board temperature/power monitoring
- smsc95xx: add tx checksum offload support
WLAN specific:
- Add nl80211 commands to get and set o11s mesh networking parameters
- ath5k/ath9k: correct signal quality
- ath5k: name pci driver "ath5k" too
- ath9k: Add ATH9K_DEBUG configuration option
- ath9k: Adding AR9285 chipset register information.
- ath9k: INI update for atheros chipets.
- cfg80211: Add regulatory domain intersection capability
- cfg80211: add support for custom firmware regulatory solutions
- hostap: select required crypto bits in Kconfig
- ipw2x00: change default policy for auto-associate
- iwlwifi: 5150 add support for 5150
- mac80211_hwsim: enable Mesh Point operation
- mac80211: Re-enable aggregation
- nl80211: Add TX queue parameter configuration
- nl80211: relicense nl80211.h under the ISC
- p54: enable Mesh Point support
- rfkill: preserve state across suspend
- rt2x00: Implement HW encryption (rt2500usb)
- rt2x00: Optimize configuration handling
- rtl8187: Remove module warning and dependence on CONFIG_EXPERIMENTAL
- wireless: consolidate on a single escape_essid implementation
- wireless: remove struct regdom hinting
WiMAX:
- i2400m: debugfs controls
- i2400m: documentation and instructions for usage
- i2400m: firmware loading and bootrom initialization
- i2400m: Generic probe/disconnect, reset and message passing
- i2400m: host/device procotol and core driver definitions
- i2400m: linkage to the networking stack
- i2400m: Makefile and Kconfig
- i2400m: RX and TX data/control paths
- i2400m/SDIO: firmware upload backend
- i2400m/SDIO: header for the SDIO subdriver
- i2400m/SDIO: probe/disconnect, dev init/shutdown and reset backends
- i2400m/SDIO: TX and RX path backends
- i2400m/USB: firmware upload backend
- i2400m/USB: header for the USB bus driver
- i2400m/USB: probe/disconnect, dev init/shutdown and reset backends
- i2400m/USB: TX and RX path backends
- i2400m/usb: wrap USB power saving in #ifdef CONFIG_PM
- i2400m: various functions for device management
- wimax: basic API: kernel/user messaging, rfkill and reset
- wimax: debugfs controls
- wimax: debug macros and debug settings for the WiMAX stack
- wimax: documentation for the stack
- wimax: export linux/wimax.h and linux/wimax/i2400m.h with headers_install
- wimax: fix kconfig interactions with rfkill and input layers
- wimax: generic device management (registration, deregistration, lookup)
- wimax: headers for kernel API and user space interaction
- wimax/i2400m: add CREDITS and MAINTAINERS entries
- wimax: internal API for the kernel space WiMAX stack
- wimax: Makefile, Kconfig and docbook linkage for the stack
MISC:
- Bluetooth: Add suspend/resume support to btusb driver
- Bluetooth: Allow SCO audio with Asus WL-BTD202 dongle
- irda: convert to internal stats
- RDMA/cma: Add IPv6 support
- WAN: Add IXP4xx HSS HDLC driver.
- WAN: new synchronous PPP implementation for generic HDLC.
Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich auch in den vorangegangen Ausgaben des Kernel-Logs auf heise open:
- 05.01.2009: 2.6.29-Entwicklung angelaufen, Neues bei 3D-Unterstützung
- 25.12.2008: Linux-Kernel 2.6.28 erschienen; Höher und weiter - Die Neuerungen von Linux 2.6.28
- 19.12.2008: Was 2.6.28 bringt (9) - Fastboot und andere Überbleibsel
- 17.12.2008: Was 2.6.28 bringt (8) - Video4Linux/DVB, (Wireless-)USB, Hardware-Monitoring und Eingabegeräte
- 16.12.2008: Was 2.6.28 bringt (7) - Architektur-Unterstützung, Speichersubsystem und Virtualisierung
- 15.12.2008: Was 2.6.28 bringt (6) - Neuerungen bei Audio-Treibern
- 12.12.2008: Neue Kernel-Versionen, Fortschritte bei Btrfs und Tux3
- 20.11.2008: VIA arbeitet mit Open-Source-Entwickler von openChrome zusammen
- 17.11.2008: Neue Grafiktreiber und Linux-Versionen; Dom0-Patches für 2.6.29?
Ältere Kernel-Logs finden sich über das Archiv oder die Suchfunktion von heise open. (thl/c't) (thl)