I try to write a udev script to workaround. When user press Fn-F6 or Fn-F7, a uevent would be generated from acpi_video0. I wrote a udev rule to hook this uevent to config intel_backlight brightness.
diff --git a/etc/udev/rules.d/00-tosh-backlight.rules b/etc/udev/rules.d/00-tosh-backlight.rules new file mode 100644 index 0000000..dd38aa2 --- /dev/null +++ b/etc/udev/rules.d/00-tosh-backlight.rules @@ -0,0 +1 @@ +DEVPATH=="*/acpi_video0", SUBSYSTEM=="backlight", ACTION=="change", RUN+="/etc/udev/rules.d/tosh-backlight.sh" diff --git a/etc/udev/rules.d/tosh-backlight.sh b/etc/udev/rules.d/tosh-backlight.sh new file mode 100755 index 0000000..c7dc5b2 --- /dev/null +++ b/etc/udev/rules.d/tosh-backlight.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +acpi_max=$(cat /sys/class/backlight/acpi_video0/max_brightness) +acpi_curr=$(cat /sys/class/backlight/acpi_video0/brightness) +intel_max=$(cat /sys/class/backlight/intel_backlight/max_brightness) +intel_curr=$(($intel_max*$acpi_curr/$acpi_max)) +echo $intel_curr > /sys/class/backlight/intel_backlight/brightness
I try to write a udev script to workaround.
When user press Fn-F6 or Fn-F7, a uevent would be generated from acpi_video0.
I wrote a udev rule to hook this uevent to config intel_backlight brightness.
diff --git a/etc/udev/ rules.d/ 00-tosh- backlight. rules b/etc/udev/ rules.d/ 00-tosh- backlight. rules rules.d/ 00-tosh- backlight. rules ="*/acpi_ video0" , SUBSYSTEM= ="backlight" , ACTION=="change", RUN+="/ etc/udev/ rules.d/ tosh-backlight. sh" rules.d/ tosh-backlight. sh b/etc/udev/ rules.d/ tosh-backlight. sh rules.d/ tosh-backlight. sh backlight/ acpi_video0/ max_brightness) backlight/ acpi_video0/ brightness) backlight/ intel_backlight /max_brightness ) curr=$( ($intel_ max*$acpi_ curr/$acpi_ max)) backlight/ intel_backlight /brightness
new file mode 100644
index 0000000..dd38aa2
--- /dev/null
+++ b/etc/udev/
@@ -0,0 +1 @@
+DEVPATH=
diff --git a/etc/udev/
new file mode 100755
index 0000000..c7dc5b2
--- /dev/null
+++ b/etc/udev/
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+acpi_max=$(cat /sys/class/
+acpi_curr=$(cat /sys/class/
+intel_max=$(cat /sys/class/
+intel_
+echo $intel_curr > /sys/class/