debian squeeze on acer aspire one 751h

View: New views
5 Messages — Rating Filter:   Alert me  

debian squeeze on acer aspire one 751h

by Pedro Bulach Gapski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am in the process of installing and configuring debian squeeze on the acer aspire one 751h (ao751h), with the famous intel GMA 500 (poulsbo) video chipset. I already have the system running, and I would like to share what has been done so far and ask for advice on the remaining issues.

General status

The system is based on squeeze with kernel 2.6.30 from sid. The status is as follows (see [6] for lspci):
 * wireless: works
 * wired ethernet: still haven't cabled it, but it is recognized and seems to be fine
 * video: mostly works (see below)
 * webcam: works
 * sound: works
 * mic: not tested

Video

The GMA 500 video chipset is a problematic beast right now [1]. However, there has been some progress (still far from ideal), and there are packages available to tame it on fedora [2] and ubuntu [3], and brave folks have succeeded on porting the poulsbo drivers to debian [4], [5].

While I do intend to take this road, I have opted for a simpler path for now, based on [6], which uses the vesa driver for X. Basically, a patched 915resolution is used to alter the video BIOS, and X can drive the LCD at full 1366x768 with the vesa driver. Performance for 2D is acceptable, but 3D is far from ideal: glxgears gives about 120 with the vesa driver, while it peaks at 190 running kubuntu with the poulsbo drivers (compared to 650 on the eeepc 900).

My tests show that it suffices to fix the video BIOS with the patched 915resolution: X recognizes the LCD resolution and chooses the right mode.

I am investigating grub2 right now, and my goals are to 1) check if the 915resolution module supports GMA500 or can be patched to support it; 2) configure the GMA500 at boot time with grub2, so that we have a nive console and X can start at the right resolution.

Hotkeys

sound: works
brightness: does not work
wifi switch: only a few tests, but seems to work

The remaining keys have not been tested.

I (would) use the brightness keys a lot, so that specifically annoys me. Can someone point me to the right path to control brightness and/or fix those keys?

Please share your experience with this netbook.

Regards,

Pedro

[1] http://www.happyassassin.net/2009/01/30/intel-gma-500-poulsbo-graphics-on-linux-a-precise-and-comprehensive-summary-as-to-why-youre-screwed/
[2] http://www.happyassassin.net/2009/05/13/native-poulsbo-gma-500-graphics-driver-for-fedora-10/
[3] https://help.ubuntu.com/community/AspireOne
[4] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533450
[5] http://koldfront.dk/gitweb?p=psb;a=summary
[6] http://en.gentoo-wiki.com/wiki/Acer_Aspire_One_AO751h


Parent Message unknown Re: debian squeeze on acer aspire one 751h

by Andika Triwidada :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, Aug 27, 2009 at 4:43 AM, Pedro Bulach Gapski<pbgapski@...> wrote:

> Andika,
>
>> Would you mind trying this?
>> $ xrandr --output LVDS --set BACKLIGHT_CONTROL native
>>
>> Also test other BACKLIGHT_CONTROL values from
>> $ xrandr --prop
>> if first command above failed.
>>
>> --
>> andika
>
> those are the results on debian squeeze with vesa driver:
> Script started on Wed 26 Aug 2009 06:33:52 PM BRT
> gapski@meteor:~$ xrandr --prop
> Screen 0: minimum 640 x 480, current 1368 x 768, maximum 1368 x 768
> default connected 1368x768+0+0 0mm x 0mm
>    1366x768       61.0
>    1024x768       61.0
>    800x600         0.0
>    640x480         0.0
>    1368x768       61.0*

Can't help anymore here

> and following are the results on the same hardware with kubuntu 9.04 and
> poulsbo driver:
> xrandr --prop
> Screen 0: minimum 320 x 200, current 1366 x 768, maximum 1366 x 1366
> LVDS0 connected 1366x768+0+0 (normal left inverted right x axis y axis) 0mm
> x 0mm
>     BACKLIGHT: 100 (0x00000064)    range:  (0,100)
>     PANELFITTING: 0 (0x00000000)    range:  (0,2)
>    1366x768       57.6*+

But there's still hope here :D
$ xrandr --output LVDS --set BACKLIGHT any_value_between_0_and_100

Not sure how to link that to brightness control hotkeys though :(

--
andika


--
To UNSUBSCRIBE, email to debian-laptop-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...


Re: debian squeeze on acer aspire one 751h

by Pedro Bulach Gapski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Screen brightness:
hotkeys do not work both on debian and kubuntu 9.04. See xrandr below. (Andika, thanks for your input!)

However, on kubuntu the battery/powersave plasmoid has a slider that *can* control screen brightness. The same setup does not work on debian.

Screen resolution and setup:
I have patched grub-pc package to add support to the GMA chipset on the 915resolution module. With that setup X does start with the correct resolution (1366x768) without further configuration. Details follow (general steps from memory, DO NOT just copy and paste).

1. Patch grub-pc with the attached patch:
apt-get source grub-pc
cd  grub2-1.96+20090825/debian/grub-extras/commands/i386
patch < 915resolution.c.patch

2. Build the package and install
apt-get build-deps grub-pc
cd grub2-1.96+20090825
dpkg-buildpackage
cd ..
dpkg -i grub2-1.96+20090825-XXX.deb

3. Configure grub-pc:
(I strongly recommend that this setup is verified with the standalone 915resolution *before* grub configuration)
edit /etc/grub.d/01_915resolution and add

echo insmod 915resolution
echo 915resolution 58 1366 768 32

chmod +x /etc/grub.d/01_915resolution
update-grub
do not reboot if you get any errors

4. Reboot and your X should start with the right resolution.

If someone else tries that, please report back.

Regards,

Pedro


On Wed, Aug 26, 2009 at 8:06 PM, Andika Triwidada <andika@...> wrote:
On Thu, Aug 27, 2009 at 4:43 AM, Pedro Bulach Gapski<pbgapski@...> wrote:
> Andika,
>
>> Would you mind trying this?
>> $ xrandr --output LVDS --set BACKLIGHT_CONTROL native
>>
>> Also test other BACKLIGHT_CONTROL values from
>> $ xrandr --prop
>> if first command above failed.
>>
>> --
>> andika
>
> those are the results on debian squeeze with vesa driver:
> Script started on Wed 26 Aug 2009 06:33:52 PM BRT
> gapski@meteor:~$ xrandr --prop
> Screen 0: minimum 640 x 480, current 1368 x 768, maximum 1368 x 768
> default connected 1368x768+0+0 0mm x 0mm
>    1366x768       61.0
>    1024x768       61.0
>    800x600         0.0
>    640x480         0.0
>    1368x768       61.0*

Can't help anymore here

> and following are the results on the same hardware with kubuntu 9.04 and
> poulsbo driver:
> xrandr --prop
> Screen 0: minimum 320 x 200, current 1366 x 768, maximum 1366 x 1366
> LVDS0 connected 1366x768+0+0 (normal left inverted right x axis y axis) 0mm
> x 0mm
>     BACKLIGHT: 100 (0x00000064)    range:  (0,100)
>     PANELFITTING: 0 (0x00000000)    range:  (0,2)
>    1366x768       57.6*+

But there's still hope here :D
$ xrandr --output LVDS --set BACKLIGHT any_value_between_0_and_100

Not sure how to link that to brightness control hotkeys though :(

--
andika


[915resolution.c.patch]

--- 915resolution.c.orig 2009-08-26 09:35:45.000000000 -0300
+++ 915resolution.c 2009-08-26 09:48:06.000000000 -0300
@@ -106,12 +106,12 @@
 
 typedef enum {
     CT_UNKWN, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_915GM, CT_945G, CT_945GM, CT_945GME,
-    CT_946GZ, CT_G965, CT_Q965, CT_965GM, CT_G33, CT_Q33, CT_Q35
+    CT_946GZ, CT_G965, CT_Q965, CT_965GM, CT_G33, CT_Q33, CT_Q35, CT_500GMA
 } chipset_type;
 
 char * chipset_type_names[] = {
     "UNKNOWN", "830",  "845G", "855GM", "865G", "915G", "915GM", "945G", "945GM", "945GME",
-    "946GZ",   "G965", "Q965", "965GM", "G33", "Q33", "Q35"
+    "946GZ",   "G965", "Q965", "965GM", "G33", "Q33", "Q35", "500GMA"
 };
 
 typedef enum {
@@ -285,6 +285,10 @@
         type = CT_Q33;
         break;
 
+    case 0x81008086:
+      type = CT_500GMA;
+      break;
+
     default:
         type = CT_UNKWN;
         break;
@@ -521,6 +525,7 @@
     case CT_G33:
     case CT_Q35:
     case CT_Q33:
+    case CT_500GMA:
         outl(0x80000090, 0xcf8);
         map->b1 = inb(0xcfd);
         map->b2 = inb(0xcfe);
@@ -566,6 +571,7 @@
     case CT_G33:
     case CT_Q35:
     case CT_Q33:
+    case CT_500GMA:
         outl(0x80000090, 0xcf8);
         outb(map->b1, 0xcfd);
         outb(map->b2, 0xcfe);
@@ -825,6 +831,9 @@
         else if (!strcmp(argv[index], "Q33")) {
             *forced_chipset = CT_Q33;
         }
+ else if (!strcmp(argv[index], "500GMA")) {
+    *forced_chipset = CT_500GMA;
+ }
         else {
             *forced_chipset = CT_UNKWN;
         }


Re: debian squeeze on acer aspire one 751h

by Pedro Bulach Gapski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am following the advice on this bug [2] report to setup the GMA 500
with the ppa ubuntu drivers on squeeze.

See [1] for some comments, vesa driver setup, and further references.
In my setup, I had X running at 1366x768 with the vesa driver, using a
patched grub-pc to support the GMA500.

I have taken the following steps:

1. download git head from the reference in
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533450#50 and unpack

2. for each of the packages, go to the directory, run
dpkg-buildsource, check the required references, install them and run
dpkg-buildpackage again, and install the resulting deb package (if you
install the source package, then use apt-get build-dep on each package
to install its references). Some of the packages require a
--force-overwrite option, as detailed in
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533450#70

3. after all the packages are build, edit /etc/X11/xorg.conf as
outlined in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533450#65

Then I have in /usr/lib/:
-rw-r--r-- 1 root root 33020 Sep  9 09:50 /usr/lib/libdrm.a
lrwxrwxrwx 1 root root    15 Sep  9 10:33 /usr/lib/libdrm.so -> libdrm.so.2.3.0
lrwxrwxrwx 1 root root    15 Sep  9 20:23 /usr/lib/libdrm.so.2 ->
libdrm.so.2.4.0
-rw-r--r-- 1 root root 31992 Sep  9 09:50 /usr/lib/libdrm.so.2.3.0
-rw-r--r-- 1 root root 34580 Jul 21 10:32 /usr/lib/libdrm.so.2.4.0

Then I changed my xorg.conf from Driver "vesa" to Driver "psb" and
reloaded X. It fails with the following errors:
(EE) PSB(0): screnIndex is:0;fbPhys is:0x7f800000; fbsize is:0x007bf000
(EE) PSB(0): First SDVO output reported failure to sync or input is
not trainded!!!

Anyone seen this error, or maybe pointers/ideas to fix it?

I am running kernel 2.6.30.

On the bright side, the psb kernel module publishes the backlight
files under /sys/class, and that allows me to adjust LCD brightness.
It also gives a nice (and slow) 1366x768 console.

Pedro

[1] http://www.mail-archive.com/debian-laptop@.../msg51520.html
[2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533450


--
To UNSUBSCRIBE, email to debian-laptop-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...


Re: debian squeeze on acer aspire one 751h

by Adam Sjøgren :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, 10 Sep 2009 09:39:10 -0300, Pedro wrote:

[...]
> Then I changed my xorg.conf from Driver "vesa" to Driver "psb" and
> reloaded X. It fails with the following errors:
> (EE) PSB(0): screnIndex is:0;fbPhys is:0x7f800000; fbsize is:0x007bf000
> (EE) PSB(0): First SDVO output reported failure to sync or input is
> not trainded!!!

I think this can be fixed by putting 'Option "IgnoreACPI" "yes"' in the
Device-section of your /etc/X11/xorg.conf file.

(If I remember correctly that is alluded to in the parts of the X-log
you didn't show, but interpreting the output certainly isn't always
trivial!)


  Best regards,

    Adam

--
 "You've got skills you can make it look good                 Adam Sjøgren
  And unbroken from the root to the fruit"               asjo@...


--
To UNSUBSCRIBE, email to debian-laptop-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...