Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: [PATCH] ACPI/device_sysfs: Add sysfs support for _HRV hardware revision | Date | Wed, 27 Apr 2016 23:21:37 +0200 |
| |
On Wednesday, April 27, 2016 04:19:45 PM Dall, Betty wrote: > On 04/26/2016 02:39 PM, Rafael J. Wysocki wrote: > > On Wednesday, April 13, 2016 08:48:14 AM Betty Dall wrote: > >> The ACPI _HRV object on the device is used to supply Linux with > >> the device's hardware revision. This is an optional object. Add > >> sysfs support for the _HRV object if it exists on the device. > >> > >> Signed-off-by: Betty Dall <betty.dall@hpe.com> > >> --- > >> drivers/acpi/device_sysfs.c | 24 ++++++++++++++++++++++++ > >> 1 file changed, 24 insertions(+) > >> > >> diff --git a/drivers/acpi/device_sysfs.c b/drivers/acpi/device_sysfs.c > >> index b9afb47..bf12dbe 100644 > >> --- a/drivers/acpi/device_sysfs.c > >> +++ b/drivers/acpi/device_sysfs.c > >> @@ -473,6 +473,21 @@ acpi_device_sun_show(struct device *dev, struct device_attribute *attr, > >> } > >> static DEVICE_ATTR(sun, 0444, acpi_device_sun_show, NULL); > >> > >> +static ssize_t > >> +acpi_device_hrv_show(struct device *dev, struct device_attribute *attr, > >> + char *buf) { > >> + struct acpi_device *acpi_dev = to_acpi_device(dev); > >> + acpi_status status; > >> + unsigned long long hrv; > >> + > >> + status = acpi_evaluate_integer(acpi_dev->handle, "_HRV", NULL, &hrv); > >> + if (ACPI_FAILURE(status)) > >> + return -ENODEV; > > > > Actually, this should be -EIO I think. > > > > Thanks, > > Rafael > > Hi Rafael, > > I picked -ENODEV because the _SUN and _STA show functions use -ENODEV > for a return value when the acpi_evaluate_integer() fails.
Which isn't the best choice.
> I checked in the sysfs code what the return value is used for and any > negative value is treated the same, that is, the sysfs code is not > looking specifically for -EIO.
But doesn't it pass the return value up the call chain?
> Do you still want me to change it to -EIO?
I may, depending on the answer to the question above.
Thanks, Rafael
| |