``The netbook is dead, long live my Acer Aspire One (D270)!''
The laptop on which this is being typed is an Acer Aspire One (D270) running Debian in 64-bit mode which has been the mainstay for my computer usage since the first week of July 2012. It has worked brilliantly from day one, except for graphics as explained below, and this post outlines how I fixed the last remaining hole. The AO is ideal for my kind of use --- all major applications run full-screen under xmonad and with one major application as a terminal window running screen.
Coming to graphics, the root problem was that I had (as usual) not done a proper survey --- which would have told me that this machine used the infamous GMA3600 graphic chipset from Intel/PowerVR which has been the source of a headache for many. The first boot left me with an 800x600 screen which was clearly not as advertised. So quacking left me with the suggestion that a 1024x600 framebuffer (as advertised) was possible via grub and the VESA framebuffer. The ``fbdev'' driver for X completed the picture ... with the small catch that external VGA was not be available unless it was connected at boot time!
This small hole has bothered me off and on over the last 6-7 months, till finally, over the last one or two days, the problem has been fixed as explained below. So now this netbook is really perfect.
The kernel driver for this was developed by Alan Cox starting
as far back as July
2011; it was then considered buggy and was in the staging
area. In November
2011 it became a "regular" driver with kernel 3.2.
it was still too buggy to be built for stock Debian kernels. In
fact, up until linux-source-3.2 (version 3.2.35-2) for Debian
wheezy, the driver continued to crash with a "kernel oops"
whenever it was loaded on my machine. Recently, I downloaded
linux-source-3.2 (version 3.2.39-2) from Debian sid to see if it
could solve my problem. (Note that the Debian kernel team only
started building the relevant kernel module since version
Update: The latest (as of 26/03/2013) the stock kernel package (version 3.2.41-2) for Debian wheezy has the module! So all I had to do was to install this kernel.
Having access to a really fast machine, I built the kernel on
that using the usual method ( In a wonderful moment, the
screen flashed (to indicate the loading of the framebuffer
module) and did not crash. However, that was not quite the end of
INSTALL_MOD_STRIP=1 make -j20
deb-pkg) and installed it.
It turns out out that one needs a more recent version (0.5.0) of the xerver-xorg-video-modesetting module than that which is provided under Debian wheezy (0.3.0). Luckily, building this was quite easy by just using the same "debian/rules" etc. as work with (0.3.0). So I have created a version 0.5.0-1~local1 which installs this X window driver.
This brings up X with a simple /etc/X11/xorg.conf which ensures that the modesetting driver is used. Everything else works as before except hibernation which results in a garbled screen!
To solve that one has to disable the video quirks and add a simple one of one's own /etc/pm/sleep.d/99redraw_on_resume. One also needs to add "gma500_gfx" to the list of modules loaded at boot time to ensure that the vesafb module does not load while resuming from hibernate.
- Configure, build and installInstall the kernel from Debian sid (3.2.39) using the GAM500 drm module sample config.
- Build and install the xserver-xorg-video-modesetting driver (0.5.0) by using the same source packaging as for Debian wheezy (0.3.0)
- Tweak the directory /etc/pm/sleep.d to prevent any video quirks from running except a new quirk to setup X using xrandr.
- Ensure that "gma500_gfx" is loaded at boot time instead of the "vesafb" module