Ceci est une ancienne révision du document !
Asus U36SD
Compatibilité
Au jour ou ces lignes sont écrites, voici ce qui l'en est de la compatibilité du U36SD avec Ubuntu/Kubuntu (je n'ai pas testé les autres distributions)
Ce qui fonctionne sans paramétrage
- Haut-parleurs
- Sortie casque
- Microphone
- Port Micro
- HDMI
- Video
- USB
- Wifi
- WiFi switch (Fn+F2)
- Port VGA
- Lecteur de carte mémoire
- Controle de luminosité (Fn+F5/F6)
- LCD on/off switch (Fn+F8)
- Multitouch touchpad (two finger scrolling, activation via System Settings)
- Intel Turbo Boost (to test, run turbostat from the package acpidump)
Ce qui ne fonctionne qu'après manipulations (exécution du script)
- Controle du volume (Fn+F10/F11/F12)
- Touches Multimédia (Fn+Up/Down/Left/Right)
- Veille
- Bluetooth
Ce qui ne fonctionne pas
- Nvidia
- Optimus (Switch automatique Nvidia/Intel)
- Touche active/désactive Touchpad (fn+f9)
Installation
Après lecture et tests des différents forums en anglais, j'ai fait ce script afin que tout s'installe d'un coup sans autre manipulation :) Télécharger le script ici Voici le texte de commande du script dans son intégralité:
#! /bin/bash
# Réparer USB3 en modifiant grub et burg
grub="$(cat /etc/default/burg | grep 'GRUB_CMDLINE_LINUX_DEFAULT')"; grub2="GRUB_CMDLINE_LINUX_DEFAULT=\"quiet splash pci=nomsi,noaer\"";sudo sed "s/$grub/$grub2/g" -i /etc/default/burg
grub="$(cat /etc/default/grub | grep 'GRUB_CMDLINE_LINUX_DEFAULT')"; grub2="GRUB_CMDLINE_LINUX_DEFAULT=\"quiet spash pci=nomsi,noaer\"";sudo sed "s/$grub/$grub2/g" -i /etc/default/grub
# Préserver disque dur
if [[ "$(cat /etc/hdparm.conf|grep 'apm_battery = 254')" ]]
then
echo "hdparm.conf déjà modifié."
else
echo "
/dev/sda {
apm = 254
apm_battery = 254
}" | sudo tee -a /etc/hdparm.conf
echo " hdparm.conf modifié."
fi
# Désactiver Nvidia optimus
sudo rm -R /tmp/.optimus
mkdir /tmp/.optimus
cd /tmp/.optimus
sudo apt-get install -y git
git clone http://github.com/mkottman/acpi_call.git
cd acpi_call/
make
sudo insmod ./acpi_call.ko
sudo cp acpi_call.ko /lib/modules/`uname -r`/kernel/drivers/acpi/
sudo depmod
if [[ "$(cat /etc/modules | grep 'acpi_call')" ]]
then
echo "/etc/modules déjà modifié."
else
echo "acpi_call" | sudo tee -a /etc/modules
fi
if [[ -z /etc/init.d/optimusoff ]]
then
echo "Le service /etc/init.d/optimusoff existe déjà."
else
echo "#! /bin/sh
### BEGIN INIT INFO
# Provides: optimusoff
# Required-Start: \$local_fs \$syslog
# Required-Stop: \$local_fs \$syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Disables/Enables the NVidia graphics card
# within the NVidia Optimus system
#
# Modified for the U36Jc and Ubuntu 11.04
# using details from
#
# http://robbyx.net/blog/?p=190
### END INIT INFO
. /lib/lsb/init-functions
set -e
case \"\$1\" in
start)
#
echo '\_SB.PCI0.PEG1.GFX0._OFF' > /proc/acpi/call
;;
stop)
echo '\_SB.PCI0.PEG1.GFX0._ON' > /proc/acpi/call
;;
*)
echo '\_SB.PCI0.PEG1.GFX0._OFF' > /proc/acpi/call
N=/etc/init.d/optimusoff
echo \"Usage: \$N {start|stop}\nBy default, 'start' is executed.\n\" >&2
exit 1
;;
esac
exit 0" | sudo tee /etc/init.d/optimusoff
fi
sudo update-rc.d optimusoff defaults 98 02
sudo chmod a+x /etc/init.d/optimusoff
if [[ -z /etc/modprobe.d/blacklist-nvidia.conf ]]
then
echo "nvidia est déjà blacklisté dans /etc/modprobe.d/blacklist-nvidia.conf."
else
echo "blacklist nouveau
blacklist nvidia" | sudo tee /etc/modprobe.d/blacklist-nvidia.conf
fi
sudo update-initramfs -u
# Réparer Suspend/Resume
if [[ -z /etc/pm/sleep.d/20_custom-asus-u36sd ]]
then
echo "/etc/pm/sleep.d/20_custom-asus-u36sd est déjà modifié."
else
echo "
BUSES=\"0000:00:1a.0 0000:00:1d.0\"
case \"\${1}\" in
hibernate|suspend)
# Switch USB buses off
for bus in \$BUSES; do
echo -n \$bus | tee /sys/bus/pci/drivers/ehci_hcd/unbind
done
;;
resume|thaw)
# Switch USB buses back on
for bus in \$BUSES; do
echo -n \$bus | tee /sys/bus/pci/drivers/ehci_hcd/bind
done
;;
esac" | sudo tee /etc/pm/sleep.d/20_custom-asus-u36sd
fi
sudo chmod +x /etc/pm/sleep.d/20_custom-asus-u36sd
# Caméra
sudo add-apt-repository ppa:libv4l
sudo apt-get update
if [ "$(which software-properties-kde)" ]
then
sudo apt-get install -y qv4l2 libv4l-0
else
sudo apt-get install -y gtk-v4l libv4l-0
fi
if [[ "$(cat /etc/environment|grep 'LIBV4LCONTROL_FLAGS')" ]]
then
echo "/etc/environment est déjà modifié."
else
echo "LIBV4LCONTROL_FLAGS=2" | sudo tee -a /etc/environment
echo "/etc/environment modifié"
fi
# Bluetooth
sudo service bluetooth stop
sudo rmmod btusb
sudo rmmod ath3k
sudo modprobe -a ath3k
echo "13d3 3304" | sudo tee /sys/bus/usb/drivers/ath3k/new_id
sudo modprobe btusb
sudo service bluetooth start
# Fn-Keys
sudo apt-get install git build-essential
sudo rm -R /tmp/fn
mkdir /tmp/fn
cd /tmp/fn
git clone git://git.iksaif.net/acpi4asus-dkms.git
cd acpi4asus-dkms
make
sudo make install
sudo modprobe asus-nb-wmi
# Mise à jour des démarreurs
sudo update-grub
if [[ "$(sudo dpkg -l|grep 'ii burg')" ]]
then
sudo update-burg
fi