Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 14d21785 authored by Len Brown's avatar Len Brown
Browse files

Pull dock into release branch

parents 03feb052 62a6d7fd
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@
#include <linux/notifier.h>
#include <linux/platform_device.h>
#include <linux/jiffies.h>
#include <linux/stddef.h>
#include <acpi/acpi_bus.h>
#include <acpi/acpi_drivers.h>

@@ -667,6 +668,23 @@ static ssize_t write_undock(struct device *dev, struct device_attribute *attr,
}
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", NULL, &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
@@ -715,6 +733,13 @@ static int dock_add(acpi_handle handle)
		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,