Archive for December, 2010

eeePC: Debian Upgrade to Squeeze

Thursday, December 30th, 2010

Some lessons learnt by upgrading an eeePC’s operating system from Lenny to Squeeze.

If there is no /dev/sda (and no other block devices in /dev), this is actually due to /sys/classes/block not existing (only /sys/block exists), so udev can’t find it (and the transition from hal to udev is one of the things that happens when upgrading from lenny to squeeze). This comes from having deprecated sysfs compatibility options set in the kernel. So these here may NOT be in the kernel .config:

CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y

The funny thing is, the system runs without /dev/sda* available, but you’ll have all kinds of strange effects. Things like cryptsetup, fdisk and update-grub which directly access /dev/sda of course do not work. But also, NetworkManager does not start or configure anything.

X does not start with the Intel driver if modesetting is not enabled. This is what happens:

(EE) intel(0): No kernel modesetting driver detected.
(II) UnloadModule: “intel”
(EE) Screen(s) found, but none have a usable configuration.

It can be fixed presumably by appending “i915.modeset=1” to the kernel parameters in grub.cfg, or, that’s what I did, by setting it in the kernel to enabled by default:

CONFIG_DRM_I915_KMS=y

The Keyboard does not work, if X does not understand the variant:

Option “XkbVariant” “eeepc”

This needed commenting out.

Now, with the intel-driver and KMS, the screen was flickering madly. Supposedly this i KDE polling Xrandr on screens that do not exist. So I added this to xorg.conf to stop it:

Section “Monitor”
Identifier “TV1”
option “ignore” “true”
EndSection

Section “Monitor”
Identifier “VGA1”
option “ignore” “true”
EndSection

Note that these section-names were taken from the Xorg.0.log:

(II) intel(0): Output LVDS1 using monitor section Monitor1
(II) intel(0): Output VGA1 has no monitor section
(II) intel(0): Output TV1 has no monitor section