GoboLinux Downloads Documentation Community Recipes Screenshots

GoboLinux Recipe & Package Search Tool

71 versions of Linux.

ProgramAgeSizeByWWWSummary
Linux 4.13.2-r1 731  88794 Luca...
The Linux Kernel.
Linux 4.9.16-r3 902  100651 Luca...
The Linux Kernel.
Linux 4.9.4-r5 958  99374 Luca...
The Linux Kernel.
Linux 4.8.2-r2 1024  89394 Luca...
The Linux Kernel.
Linux 4.7.4-r1 1094  82767 Luca...
The Linux Kernel.
Linux 4.7.0-r4 1149  82585 Luca...
The Linux Kernel.
Linux 3.13.3-r1 2029  252629 Luca...
The Linux Kernel.
Linux 3.12.6-r1 2089  238949 Luca...
The Linux Kernel.
Linux 3.9.4-r2 2284  70048 Luca...
The Linux Kernel.
Linux 3.7.1-r2 2457  67579 Luca...
The Linux Kernel.
Linux 3.5.0-r1 2608  124391 Luca...
The Linux Kernel.
Linux 3.4.4-r1 2608  124348 Luca...
The Linux Kernel.
Linux 3.3.6-r1 2608  124410 Luca...
The Linux Kernel.
Linux 3.2.12-r2 2736  124345 Luca...
The Linux Kernel.
Linux 3.2.7-r1 2766  123550 Mich...
The Linux Kernel.
Linux 3.1.1-r1 2871  122907 Mich...
The Linux Kernel.
Linux 3.0.4-r4 2932  122754 Luca...
The Linux Kernel.
Linux 2.6.36.3-r1 3155  116087 Diog...
The Linux Kernel.
Linux 2.6.32.3-r1 3533  117990 Luca...
The Linux Kernel.
Linux 2.6.32-r1 3574  117751 Luca...
The Linux Kernel.
Linux 2.6.31.6-r3 3579  126499 Luca...
The Linux Kernel.
Linux 2.6.30.5-r1 3658  166102 Jona...
The Linux Kernel.
Linux 2.6.29.1-r1 3801  117500 Luca...
The Linux Kernel.
Linux 2.6.28.7-r1 3857  115518 Giam...
The Linux Kernel.
Linux 2.6.28.1-r1 3857  115487 Giam...
The Linux Kernel.
Linux 2.6.28-r1 3857  116681 Mich...
The Linux Kernel.
Linux 2.6.27.8-r1 3857  134160 Giam...
The Linux Kernel.
Linux 2.6.27.4-r3 3857  149529 Luca...
The Linux Kernel.
Linux 2.6.25.17-r1 3857  172834 Giam...
The Linux Kernel.
Linux 2.6.25.16-r1 3857  166500 Giam...
The Linux Kernel.
Linux 2.6.25.10-r2 3857  165320 Giam...
The Linux Kernel.
Linux 2.6.25.7-r1 3857  157294 Giam...
The Linux Kernel.
Linux 2.6.25.4-r1 3857  133017 Hopp...
The Linux Kernel.
Linux 2.6.25-r1 3857  133216 Luca...
The Linux Kernel.
Linux 2.6.24.4-r5 3857  150733
The Linux Kernel.
view entry at GitHub | download recipe.bz2 file
01-gobohide.patch
02-unionfs-2.3.2_for_2.6.24.4.patch
03-squashfs-3.3-cvs_20080310.patch
04-squashfs-3.3-cvs_20080310-fix.patch
04-thinkpad-acpi-0.19-20080107_v2.6.24.patch
05-applesmc-case-led.patch
06-applesmc_int.patch
07-applesmc-macbook2.patch
08-applesmc-retry-when-accessing-keys.patch
09-appletouch-add-macbook3-trackpad.patch
10-appletouch.patch
11-appletouch-new.patch
12-sigmatel_audio_display_all_controls_when_subsystem_id_is_wrong.patch
13-sigmatel_audio_fix_macbook_v2.patch
14-appletouch-2.6.24_rc8.patch
15-macbook3rd-2.6.24_rc8.patch
16-usbhid-macbook3_1-quirks.patch
17-applesmc_led_unregister.patch
18-vm_splice_fix.patch
Recipe
Resources/BuildInformation
Resources/Dependencies
Resources/Description
Resources/NewDependencies
i686/Recipe
i686/dot-config
ppc/Recipe
ppc/dot-config
[PATCH] applesmc case led and SCSI LED activity trigger

From: René Rebe <rene@exactcode.de>


---

 drivers/hwmon/applesmc.c |   70 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 61 insertions(+), 9 deletions(-)

diff --git a/drivers/hwmon/applesmc.c b/drivers/hwmon/applesmc.c
index 86c66c3..377c96d 100644
--- a/drivers/hwmon/applesmc.c
+++ b/drivers/hwmon/applesmc.c
@@ -63,6 +63,8 @@
 
 #define CLAMSHELL_KEY		"MSLD" /* r-o ui8 (unused) */
 
+#define LED_KEY			"LSLF" /* r-w ui16 */
+
 #define MOTION_SENSOR_X_KEY	"MO_X" /* r-o sp78 (2 bytes) */
 #define MOTION_SENSOR_Y_KEY	"MO_Y" /* r-o sp78 (2 bytes) */
 #define MOTION_SENSOR_Z_KEY	"MO_Z" /* r-o sp78 (2 bytes) */
@@ -151,7 +153,7 @@ static DEFINE_MUTEX(applesmc_lock);
  */
 static unsigned int key_at_index;
 
-static struct workqueue_struct *applesmc_led_wq;
+static struct workqueue_struct *applesmc_led_wq, *applesmc_backlight_wq;
 
 /*
  * __wait_status - Wait up to 2ms for the status port to get a certain value
@@ -742,13 +744,40 @@ static void applesmc_backlight_set(struct work_struct *work)
 }
 static DECLARE_WORK(backlight_work, &applesmc_backlight_set);
 
-static void applesmc_brightness_set(struct led_classdev *led_cdev,
-						enum led_brightness value)
+static void applesmc_backlight_brightness_set(struct led_classdev *led_cdev,
+					      enum led_brightness value)
 {
 	int ret;
 
 	backlight_value = value;
-	ret = queue_work(applesmc_led_wq, &backlight_work);
+	ret = queue_work(applesmc_backlight_wq, &backlight_work);
+
+	if (debug && (!ret))
+		printk(KERN_DEBUG "applesmc: work was already on the queue.\n");
+}
+
+/* Store the next LED value to be written by the work */
+static unsigned int led_value;
+
+static void applesmc_led_set(struct work_struct *work)
+{
+	u8 buffer[2];
+
+	mutex_lock(&applesmc_lock);
+	buffer[0] = led_value;
+	buffer[1] = 0x00;
+	applesmc_write_key(LED_KEY, buffer, 2);
+	mutex_unlock(&applesmc_lock);
+}
+static DECLARE_WORK(led_work, &applesmc_led_set);
+
+static void applesmc_led_brightness_set(struct led_classdev *led_cdev,
+					 enum led_brightness value)
+{
+	int ret;
+
+	led_value = value;
+	ret = queue_work(applesmc_led_wq, &led_work);
 
 	if (debug && (!ret))
 		printk(KERN_DEBUG "applesmc: work was already on the queue.\n");
@@ -904,10 +933,16 @@ static ssize_t applesmc_key_at_index_store(struct device *dev,
 	return count;
 }
 
+static struct led_classdev applesmc_led = {
+	.name			= "smc:case-led",
+	.default_trigger	= "ide-disk",
+	.brightness_set		= applesmc_led_brightness_set,
+};
+
 static struct led_classdev applesmc_backlight = {
 	.name			= "smc:kbd_backlight",
 	.default_trigger	= "nand-disk",
-	.brightness_set		= applesmc_brightness_set,
+	.brightness_set		= applesmc_backlight_brightness_set,
 };
 
 static DEVICE_ATTR(name, 0444, applesmc_name_show, NULL);
@@ -1340,15 +1375,28 @@ static int __init applesmc_init(void)
 			goto out_temperature;
 	}
 
+        /* Create the workqueue */
+        applesmc_led_wq = create_singlethread_workqueue("applesmc-led");
+        if (!applesmc_led_wq) {
+                ret = -ENOMEM;
+                goto out_accelerometer;
+        }
+
+        /* register as a led device */
+        ret = led_classdev_register(&pdev->dev, &applesmc_led);
+        if (ret < 0)
+                goto out_led_wq;
+
+
 	if (applesmc_light) {
 		/* Add light sensor file */
 		ret = sysfs_create_file(&pdev->dev.kobj, &dev_attr_light.attr);
 		if (ret)
-			goto out_accelerometer;
+			goto out_led_ledclass;
 
 		/* Create the workqueue */
-		applesmc_led_wq = create_singlethread_workqueue("applesmc-led");
-		if (!applesmc_led_wq) {
+		applesmc_backlight_wq = create_singlethread_workqueue("applesmc-backlight");
+		if (!applesmc_backlight_wq) {
 			ret = -ENOMEM;
 			goto out_light_sysfs;
 		}
@@ -1374,10 +1422,14 @@ out_light_ledclass:
 		led_classdev_unregister(&applesmc_backlight);
 out_light_wq:
 	if (applesmc_light)
-		destroy_workqueue(applesmc_led_wq);
+		destroy_workqueue(applesmc_backlight_wq);
 out_light_sysfs:
 	if (applesmc_light)
 		sysfs_remove_file(&pdev->dev.kobj, &dev_attr_light.attr);
+out_led_ledclass:
+        led_classdev_unregister(&applesmc_led);
+out_led_wq:
+        destroy_workqueue(applesmc_led_wq);
 out_accelerometer:
 	if (applesmc_accelerometer)
 		applesmc_release_accelerometer();
Linux 2.6.24.3-r5 3857  150221 Luca...
The Linux Kernel.
Linux 2.6.24.2-r3 3857  146488 Giam...
The Linux Kernel.
Linux 2.6.24.1-r1 3857  146454 Giam...
The Linux Kernel.
Linux 2.6.24-r1 3857  146428 Luca...
The Linux Kernel.
Linux 2.6.23.8-r4 3857  155842 Luca...
The Linux Kernel.
Linux 2.6.22.7-r4 3857  114727 Luca...
The Linux Kernel.
Linux 2.6.22.1-r1 3857  121391 Luca...
The Linux Kernel.
Linux 2.6.21.1-r3 3857  118854 Luca...
The Linux Kernel.
Linux 2.6.20.7-r1 3857  117945 Luca...
The Linux Kernel.
Linux 2.6.20.4-r3 3857  151150 Luca...
The Linux Kernel.
Linux 2.6.20-r1 3857  106429 Luca...
The Linux Kernel.
Linux 2.6.18.3-r2 3857  111124 Luca...
The Linux Kernel.
Linux 2.6.17.11-r1 3857  164053 Luca...
The Linux Kernel.
Linux 2.6.17.3-r1 3857  165067 Luca...
The Linux Kernel.
Linux 2.6.16.20-r1 3857  133625 Luca...
The Linux Kernel.
Linux 2.6.16.14-r1 3857  168270 Luca...
The Linux Kernel.
Linux 2.6.15.5-r1 3857  224686 Jona...
The Linux Kernel.
Linux 2.6.15.2-r1 3857  177165 Carl...
The Linux Kernel.
Linux 2.6.15.1-r1 3857  149219 Jona...
The Linux Kernel.
Linux 2.6.15-r1 3857  149214 Luca...
The Linux Kernel.
Linux 2.6.14.4-r1 3857  150166 Jona...
The Linux Kernel.
Linux 2.6.14.3-r1 3857  150060 Jona...
The Linux Kernel.
Linux 2.6.14.2-r1 3857  149791 Carl...
The Linux Kernel.
Linux 2.6.13.4-r1 3857  149559 Luca...
The Linux Kernel.
Linux 2.6.13.2-r1 3857  56611 Jona...
The Linux Kernel.
Linux 2.6.13.1-r1 3857  56378 Luca...
The Linux Kernel.
Linux 2.6.12.2-r1 3857  50355 Luca...
The Linux Kernel.
Linux 2.6.11.9-r1 3857  98969 Luca...
The Linux Kernel.
Linux 2.6.11.8-r1 3857  109424 Jona...
The Linux Kernel.
Linux 2.6.11-r1 3857  99032 Luca...
The Linux Kernel.
Linux 2.6.10-r1 3857  65969 Luca...
The Linux Kernel.
Linux 2.6.9-r1 3857  278461 Luca...
The Linux Kernel.
Linux 2.6.8.1-r1 3857  35576 Luca...
The Linux Kernel.
Linux 2.6.7-r1 3857  22610 Luca...
The Linux Kernel.
Linux 2.6.6-r1 3857  21958 Luca...
The Linux Kernel.
Linux 2.4.26-r1 3857  22359 Luca...
The Linux Kernel.