From bbd1494580462fa35bdd2073dba3902fb53981bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Tue, 20 Mar 2007 20:58:35 -0400 Subject: firewire: Export GUID as sysfs attribute. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kristian Høgsberg Signed-off-by: Stefan Richter --- drivers/firewire/fw-device.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'drivers/firewire/fw-device.c') diff --git a/drivers/firewire/fw-device.c b/drivers/firewire/fw-device.c index 71bb9d1..2bf86aa 100644 --- a/drivers/firewire/fw-device.c +++ b/drivers/firewire/fw-device.c @@ -348,8 +348,7 @@ static struct device_attribute fw_unit_attributes[] = { }; static ssize_t -config_rom_show(struct device *dev, - struct device_attribute *attr, char *buf) +config_rom_show(struct device *dev, struct device_attribute *attr, char *buf) { struct fw_device *device = fw_device(dev); @@ -358,8 +357,20 @@ config_rom_show(struct device *dev, return device->config_rom_length * 4; } +static ssize_t +guid_show(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct fw_device *device = fw_device(dev); + u64 guid; + + guid = ((u64)device->config_rom[3] << 32) | device->config_rom[4]; + + return snprintf(buf, PAGE_SIZE, "0x%016llx\n", guid); +} + static struct device_attribute fw_device_attributes[] = { __ATTR_RO(config_rom), + __ATTR_RO(guid), __ATTR_NULL, }; -- cgit v1.1