X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=drivers%2Fplatform%2Fchromeos_ec-fw.c;h=d2c0da23854f242136077c0a31fec2f798a340d6;hb=5ebb098d669b9a1d3b55cd73f39a45a94352c413;hp=7b34c984c34ce100ebb7bd420836e86c5821c660;hpb=d4fe1e6205ccbe9d886832ebd229133fee439418;p=cascardo%2Flinux.git diff --git a/drivers/platform/chromeos_ec-fw.c b/drivers/platform/chromeos_ec-fw.c index 7b34c984c34c..d2c0da23854f 100644 --- a/drivers/platform/chromeos_ec-fw.c +++ b/drivers/platform/chromeos_ec-fw.c @@ -80,23 +80,39 @@ static ssize_t ec_dev_usb_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { - int err; - err = chromeos_set_dev_usb(); - if (err) - return err; - return count; + int err; + err = chromeos_set_dev_usb(); + if (err) + return err; + return count; +} + +static ssize_t ec_vbnv_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) +{ + return chromeos_vbc_write(buf, count); +} + +static ssize_t ec_vbnv_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return chromeos_vbc_read(buf, 16); } static DEVICE_ATTR(fw_version, S_IRUGO, ec_fw_version_show, NULL); static DEVICE_ATTR(build_info, S_IRUGO, ec_build_info_show, NULL); static DEVICE_ATTR(chip_info, S_IRUGO, ec_chip_info_show, NULL); static DEVICE_ATTR(dev_usb, S_IWUGO, NULL, ec_dev_usb_store); +static DEVICE_ATTR(vbnv, S_IRUGO | S_IWUGO, ec_vbnv_show, ec_vbnv_store); static struct attribute *ec_fw_attrs[] = { &dev_attr_fw_version.attr, &dev_attr_build_info.attr, &dev_attr_chip_info.attr, &dev_attr_dev_usb.attr, + &dev_attr_vbnv.attr, NULL };