ASMobile S37E

From Gentoo Linux Wiki

Jump to: navigation, search

This article is still a Stub. You can help Gentoo-Wiki by expanding it.

This article is part of the Hardware series.
Laptops TV Tuner Cards Wireless Servers Storage Other Hardware Motherboards Related

Contents

[edit] ASMobile S37E Build to Order Notebook (VBI)

This is my first attempt to create something in here, so don`t yell at me from start please :) If you`re reading this, it means, that this page is still not finished. Any suggestions can by send to sarenka (at) interia (dot) pl

My S37E is equiped with:

  • Celeron M 540
  • Intel 4965AGN WiFi
  • Upek fingerprint reader
  • 13,3 WXGA (1280x800) screen
  • Intel HD-Audio
  • Intel SMBus
  • Intel IDE controller
  • Intel SATA Controller
  • JMicron AHCI controller
  • Intel X3100 graphic controller
  • PC ExpressCard slot
  • Marvell PCI-E gigabi controller (88E8056)
  • Ricoh card reader
  • Ricoh webcam
  • Ricoh FireWire controller

[edit] Installing Gentoo

Without a problem. Simply fallow Gentoo Handbook

[edit] Works or not?

[edit] What works fine

  • WiFi
  • X with fluxbox and kde, but not compiz :/
  • sound
  • touchpad and keyboard :)
  • USB
  • suspend thru acpi on lic closure

[edit] What won`t work

  • Upek fingerprint reader (thikfinger can`t recognize device, bioapi won`t compile)

[edit] What wasn`t tested

  • PC ExpressCard
  • FireWire
  • Card Reader
  • webcam

[edit] Kernel

I am currently using something like this (of course - only necessary options):

Linux Kernel Configuration: My kernel config
Processor type and features  --->
 Subarchitecture Type: PC-compatible
 Processor family: Pentium M
Power management options (ACPI, APM) --->
 [*] Power Management Support
 [*]  Legacy Power Management API
 [*] Suspend to RAM and standby
 [*] ACPI Support --->
   [*] /proc/acpi files
   [*] /proc/acpi/event support
   <M> AC Adapter
   <M> Battery
   <M> Button
   <M> Video
   <M> Fan
   <M> Processor
   <M>   Thermal Zone
   <M> ASUS/Medion Laptop Extras
   CPU Frequency scaling --->
     [*] CPU Frequency Scaling
     [*]   Enable CPUfreq debugging
     (and some other options - still testing `couse still not working)
Bus options --->
 [*] PCI Support
   PCI access mode --->
     (x) Any
 [*] PCI Express support
 <*>  PCI Express Hotplug driver
 <*> Support for PCI Hotplug --->
   <M> ACPI PCI Hotplug
Networking --->
 Wireless --->
   <M> Impreved wireless configuration API
   <M> Generic IEE 802.11 Networking Stack (mac80211)
   <M> Generc IEEE 802.11 Networking Stack
     <M> IEEE 802.11 WEP Encryption
     <M> IEEE 802.11i CCMP support
     <M> IEEE 802.11i TKIP encryption
 <M> RF switch subsystem support --->
   <M> Input layer to RF switch connector
 Device drivers --->
   Misc devices --->
     <M> Asus Laptop Extras

to be continued....

[edit] Graphic environment

Anotherthing, that works great, when you fallow Gentto handbook. For Fluxbox: Fluxbox cofiguration HOWTO and for KDE: KDE split ebuilds HOWTO

[edit] Ethernet

See this guide.

[edit] Wireless

On my S37E i have both - WiFi and Bluetooth.

[edit] WiFi

See this guide.

[edit] ACPI

Warning: Remember, that all action files have to be executable - so you have to run chmod +x on them

Basically fallow Gentoo Power Management Guide. So far I couldn`t get frequency scalling to work :/ And you can skip LCD Brightness section - it works out of the box with asus_laptop module.

[edit] LID

To hibernate youre S37E on lid closure you have to add two file to /etc/acpi tree. One in events folder to tell acpid which script will handle specific event and one in actions script (to be honest - it doesn't have to be in /etc/acpi/actions.. place where you keep it is writen in event file, but this way it`s much easier)

File: /etc/acpi/actions/lid.sh
#!/bin/bash

if [ `cat /proc/acpi/button/LID/lid/state|awk '{print $2}'` == "open" ];
then
  exit 0;
else
  sleep 5;
  if [ `cat /proc/acpi/button/LID/lid/state|awk '{print $2}'` == "open" ];
  then
    exit 0;
  else
    /usr/sbin/hibernate-ram;
  fi
fi
File: /etc/acpi/event/lid
event=button LID 00000080
action=/etc/acpi/actions/lid.sh

You might ask - "Why do you use two if statements?" . From classics: "It's elementary, my dear Watson!". You can always close the lid and then remember something (for example - you left some top secret documents opened). With second "if" you cen open the lid and, if you`ll be quick enough, youre computer wont hibernate :) Remember - for this to work, you need hibernation configured - more about this soon (or somewhere else in this WiKi).

[edit] The Cool Stuff - ATKD Hotkeys

So... CPU Freq scalling and LID aren't all, that we want from ACPI... There are also ATKD Hotkeys :) So... We will start with.. nice and shiny

[edit] Wireless switch

File: /etc/acpi/actions/wireless-switch.sh
 #!/bin/bash
 bl=`/etc/init.d/bluetooth status| awk '{ ORS=""; if ($3 = "started") print "on" }'`
 wl=`/etc/init.d/net.wlan0 status| awk '{ ORS=""; if ($3 = "started") print "on" }'`
 
 if [ $wl == "on" ]; then
   /etc/init.d/net.wlan0 stop
 else
   /etc/init.d/net.wlan0 start
 fi

and

File: /etc/acpi/events/wireless-switch
event=hotkey ATKD 0000005d
action=/etc/acpi/actions/wireless-switch.sh

As you can see, it now controls only WiFi. I have to figure out something, to remember state of switch and then it will control both WIFI and Bluetooth. And, without asus_acpi module I can`t seem to find a way, to control those cool leds in front :/

[edit] Volume level

Buttons Fn + (F10, F11 and F12) contros volume (mute, down and up).

So for to change volume level up and down:

File: /etc/acpi/actions/volume-change.sh
#!/bin/bash
/usr/bin/amixer -q set Fron $1%$2 on

and

File: /etc/acpi/events/volume-up
event=hotkey ATKD 00000030
action=/etc/acpi/actions/volume-change.sh 5 +
File: /etc/acpi/events/volume-down
event=hotkey ATKD 00000031
action=/etc/acpi/actions/volume-change.sh 5 -

(of course, you can adjust "5" to suite your needs)

And, if your wife is caling thru Skype and you really don't want to listen to her:

File: /etc/acpi/actions/volume-mute.sh
o=`/usr/bin/amixer get Front| awk '{ ORS=""; if ($7 == "[on]") print "on"}'`
if [ -z $o ]; then
  /usr/bin/amixer -q set Front on
else
  /usr/bin/amixer -q set Front off
fi
File: /etc/acpi/events/volume-mute
event=hotkey ATKD 00000032
action=/etc/acpi/actions/volume-mute.sh
Personal tools