After several months’ waiting, kernel 2.6.20 with suspend2 patch finally come into x86 branch. The upgrade is quite smooth except some bumps.
According to the experience of building the poor man’s wireless network, some exotic errors may happen if the .config is copied direct from kernel 2.6.18, so I went though all the configuration using make menuconfig.
First, the ipw2200 does not work fully, well, you may say it work partially if you are a optimist: WEP encryption just does not work. According to the log:
Jun 21 13:24:35 tiger ieee80211_crypt_wep: could not allocate crypto API arc4 Jun 21 13:24:35 tiger wlan0: could not initialize WEP: load module ieee80211_crypt_wep
OK, let’s build the ARC4 cryptographic module into the kernel. Still no luck? According to the Wiki, it is supposed to OK to leave all IEEE80211_* package into modules instead of the monolithic kernel. Once the following are built into kernel, done.
Networking ---> Generic IEEE 802.11 Networking Stack --- IEEE 802.11 WEP encryption (802.1x) IEEE 802.11i CCMP support IEEE 802.11i TKIP encryption Software MAC add-on to the IEEE 802.11 networking stack Device Drivers ---> Generic Driver Options ---> [*] Hotplug firmware loading support Network Device support ---> Wireless LAN (non-hamradio) ---> [*] Wireless LAN drivers (non-hamradio) & Wireless Extensions Cryptographic options ---> [*] Cryptographic API AES cipher algorithms (i586) ARC4 cipher algorithm Michael MIC keyed digest algorithm CRC32c CRC algorithm 20060608
The DRM support is more dramatical. I use x11-drm instead of the kernel modules, module-rebuild is suppose to handle this, so let’s leave it be. First, x11-drm-20060608 failed to compile, and I had to unmask the ~X86 branch 20070314 to get it built. Then the server kept complaining that:
Jun 21 15:55:25 tiger [drm:drm_agp_init_ttm] *ERROR* Wrong agpgart version 0.101 Jun 21 15:55:25 tiger You need at least version 0.102.
It took me a little while to search in the forum, and eventually found one of the solution is to upgrade xf86-video-x11 to 2.0. It worked although the window manager(FVWM and KWin) only consider the full screen as 1152x800 while the real resolution is 1280x800. And I did not gain 1 FPS enhancement using the cutting-edge driver. OK, let’s get rid of x11-drm, and downgrade to xf86-video-x11 stable, using the built-in DRM modules inside kernel. Now everything works. Lesion: never ever take the formal approach if there is a shortcut.
Unfortunately, the MMC/SD card reader still does not work.