Skip to contentSkip to conversation

add access to ACPI docking station UID

PATCH In review Ilya A. Volynets-Evenbakh 2 participants 2 messages Feb 19, 2007 – Mar 10, 2007 ACPI

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 add access to ACPI docking station UID

It is useful to know whether your laptop is docked or not, but it is even more useful to know which docking station it's docked to. Attached patch adds "uid" file to sysfs. Tested on Dell Latitude D600 with D/Dock.
Patch is against official 2.6.20 release.

Signature · 3 lines
Ilya A. Volynets-Evenbakh
Total Knowledge. CTO
http://www.total-knowledge.com
drivers/acpi/dock.c +24 -0
@@ -659,6 +659,23 @@
 }
 DEVICE_ATTR(undock, S_IWUSR, NULL, write_undock);
 
+/*
+ * show_dock_uid - read method for "uid" file in sysfs
+ */
+static ssize_t show_dock_uid(struct device *dev,
+			     struct device_attribute *attr, char *buf)
+{
+	unsigned long lbuf;
+	acpi_status status = acpi_evaluate_integer(dock_station->handle, "_UID", 0, &lbuf);
+	if(ACPI_FAILURE(status)) {
+	    return 0;
+	}
+	return snprintf(buf, PAGE_SIZE, "%lx\n", lbuf);
+}
+DEVICE_ATTR(uid, S_IRUGO, show_dock_uid, NULL);
+
+
+
 /**
  * dock_add - add a new dock station
  * @handle: the dock station handle
@@ -707,6 +724,13 @@
 		kfree(dock_station);
 		return ret;
 	}
+	ret = device_create_file(&dock_device.dev, &dev_attr_uid);
+	if (ret) {
+		printk("Error %d adding sysfs file\n", ret);
+		platform_device_unregister(&dock_device);
+		kfree(dock_station);
+		return ret;
+	}
 
 	/* Find dependent devices */
 	acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
reviewer
#1 lore raw

Applied to acpi-test

thanks,
-Len

Quoted 6 lines · Ilya A. Volynets-Evenbakh

It is useful to know whether your laptop is docked or not, but it is even more useful to know which docking station it's docked to. Attached patch adds "uid" file to sysfs. Tested on Dell Latitude D600 with D/Dock.
Patch is against official 2.6.20 release.