ASUS Z99L & Ubuntu 8.04 (Залез в дебри требуется помощь.)

Всё, что связано с ноутбуками.

Модератор: Модераторы разделов

Radist
Сообщения: 161
ОС: openSuSe 11, openSuSe 11.1

ASUS Z99L & Ubuntu 8.04

Сообщение Radist »

Установил убунту, завелось все кроме wi fi некоторых програмных кнопок, почитал здесь, вот тут начинается интересное:

Код: Выделить всё

acpi_listen
hotkey ATKD 0000007e 00000000
hotkey ATKD 0000007d 00000000
hotkey ATKD 0000007e 00000001
hotkey ATKD 0000007d 00000001


Это реакция на нажатие кнопки включение и выключение блютуз.

Код: Выделить всё

grep 0000007d events/*
grep 0000007e events/*


И ни чего. Странно но работает при этом.

Идем дальше

Код: Выделить всё

acpi_listen
hotkey ATKD 0000005d 00000003
hotkey ATKD 0000005d 00000004


Код: Выделить всё

grep 0000005d events/*
events/asus-wireless:event=hotkey ATKD 0000005d

Но при этом не работает.

Код: Выделить всё

cat /etc/acpi/events/asus-wireless

# /etc/acpi/events/asus-wireless
# This is called when the user presses the wireless button and calls
# /etc/acpi/wireless.sh for further processing.

event=hotkey ATKD 0000005d
action=/etc/acpi/asus-wireless.sh



Код: Выделить всё

cat /etc/acpi/asus-wireless.sh
#!/bin/sh
# Find and toggle wireless devices on Asus laptops

. /usr/share/acpi-support/state-funcs

toggleAllWirelessStates;

# Update the Asus LED to reflect the new status of the wireless
! isAnyWirelessPoweredOn;
setLEDAsusWireless $?


Дальше уже с трудом понимаю.

Код:

cat /usr/share/acpi-support/state-funcs #!/bin/sh # Paul Sladen, 2006-03-28, 2007-03-26 # Library functions to check/change status of wireless # Return 0 if there is, allowing you to write if isAnyWirelessPoweredOn; then ... isAnyWirelessPoweredOn() { for DEVICE in /sys/class/net/*; do if [ -d $DEVICE/wireless ]; then # if any of the wireless devices are turned on then return success if [ -r $DEVICE/device/power/state ] && [ "`cat $DEVICE/device/power/state`" -eq 0 ] then return 0 fi if [ -r $DEVICE/device/rf_kill ] && [ "`cat $DEVICE/device/rf_kill`" -eq 0 ] then return 0 fi fi done # otherwise return failure return 1 } # Takes no parameters, toggles all wireless devices. # TODO: Should possible toggle all wireless devices to the state of the first one. # Attempts to use 'rf_kill' first, and then tries 'power/state', though that # will fail on >=2.6.18 kernels since upstream removed the functionality... toggleAllWirelessStates() { for DEVICE in /sys/class/net/*; do if [ -d $DEVICE/wireless ]; then # $DEVICE is a wireless device. Check if it's powered on: ON=0 OFF=1 # 1 for rf_kill, 2 for power/state for CONTROL in $DEVICE/device/rf_kill $DEVICE/device/power/state; do if [ -w $CONTROL ]; then # We have a way of controlling the device, lets try if [ "`cat $CONTROL`" = 0 ]; then # It's powered on. Switch it off. if echo -n $OFF > $CONTROL; then break else OFF=2 # for power/state, second time around fi else # It's powered off. Switch it on. if echo -n $ON > $CONTROL; then break fi fi fi done fi done } # Pass '1' to blink suspending LED and '0' to stop LED setLEDThinkpadSuspending() { action=`test "$1" -ne 0 && echo blink || echo off` test -w /proc/acpi/ibm/led && echo -n 7 "$action" > /proc/acpi/ibm/led } # Pass '1' to light LED and '0' to dark LED setLEDAsusWireless() { action=`test "$1" -ne 0 && echo 1 || echo 0` test -w /proc/acpi/asus/wled && echo -n "$action" > /proc/acpi/asus/wled test -w /sys/devices/platform/asus-laptop/wlan && echo -n "$action" > /sys/devices/platform/asus-laptop/wlan }


Собственно /sys/devices/platform/asus-laptop/* имеется. А вот /proc/acpi/asus/ отсутствует напрочь. Я так понимаю последний должен появлятся когда подгружен модуль asus_acpi.

Код: Выделить всё

lsmod | grep asus
asus_laptop            19064  0
led_class               6020  1 asus_laptop


Код: Выделить всё

sudo modprobe asus_acpi
[sudo] password for radist:
FATAL: Error inserting asus_acpi (/lib/modules/2.6.24-17-generic/kernel/drivers/acpi/asus_acpi.ko): No such device


Как это понимать? Слишком новый ноут и модуль о нем не знает? Почитав вот здесь я, что то вообще запутался.

ACPI4Asus

This project is a Linux kernel driver that allows owners of Asus laptops to use all the functionalites of their computers such as special keys, special LEDs, brightness control, ...
Driver (asus-laptop)

This driver provides support for extra features of ACPI-compatible ASUS laptops. It may also support some MEDION, JVC or VICTOR laptops (such as MEDION 9675 or VICTOR XP7210 for example). It makes all the extra buttons generate standard ACPI events that go through /proc/acpi/events, and (on some models) adds support for changing the display brightness and output, switching the LCD backlight on and off, and most importantly, allows you to blink those fancy LEDs intended for reporting mail and wireless status.
Old Driver (asus_acpi)

If you want to use the old asus_acpi driver, use acpi4asus-0.32. but who want to do that ?
Deamon (asus_acpid)

Read the README ;)
Ubuntu users must use the acpi-support package, which should be installed by default since 6.10.


Получается что asus_laptop просто более новая версия asus_acpi? или они друг друга дополняют?

ЗЫ: uname -a
Linux radist-laptop 2.6.24-17-generic

Код:

lspci 00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 03) 00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 03) 00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03) 00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03) 00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03) 00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03) 00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03) 00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03) 00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 03) 00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03) 00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3) 00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03) 00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03) 00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03) 02:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01) 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01) 07:03.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 05) 07:03.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22) 07:03.2 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 12) 07:03.3 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 12)
Спасибо сказали: