From: =?utf-8?q?Kristian_H=C3=B8gsberg?= Subject: [PATCH 3/3] firewire: Export GUID as sysfs attribute. Date: Tue, 20 Mar 2007 20:58:35 -0400 Signed-off-by: Kristian Høgsberg Signed-off-by: Stefan Richter --- drivers/firewire/fw-device.c | 15 +++++++++++++-- 1 files changed, 13 insertions(+), 2 deletions(-) diff --git a/drivers/firewire/fw-device.c b/drivers/firewire/fw-device.c index 4b8b6f7..fb38366 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, }; --