Message ID | 1478169814-24120-1-git-send-email-joyce.ooi@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, 2016-11-03 at 18:43 +0800, Ooi, Joyce wrote: > Sensitivity Percent Relative is added for ambient light sensor as it > is > used based on HID Sensor Usages specifications. The same patch is submitted by Song Hongyan <hongyan.song@intel.com> . We may need new IIO ABI to specify relative percent hyst. Thanks, Srinivas > > Other changes include adding HID_USAGE_SENSOR_LIGHT_ILLUM and > HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE for ambient light and pressure > sensor respectively to be in sync with HID Sensor Usages > specifications. > > Signed-off-by: Ooi, Joyce <joyce.ooi@intel.com> > --- > drivers/iio/light/hid-sensor-als.c | 10 ++++++++++ > drivers/iio/pressure/hid-sensor-press.c | 10 ++++++++++ > include/linux/hid-sensor-ids.h | 1 + > 3 files changed, 21 insertions(+) > > diff --git a/drivers/iio/light/hid-sensor-als.c > b/drivers/iio/light/hid-sensor-als.c > index 8bb1f90..6f3ca18 100644 > --- a/drivers/iio/light/hid-sensor-als.c > +++ b/drivers/iio/light/hid-sensor-als.c > @@ -252,6 +252,16 @@ static int als_parse_report(struct > platform_device *pdev, > st->common_attributes.sensitivity.index, > st- > >common_attributes.sensitivity.report_id); > } > + if (st->common_attributes.sensitivity.index < 0) { > + sensor_hub_input_get_attribute_info(hsdev, > + HID_FEATURE_REPORT, usage_id, > + HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY > _REL_PCT | > + HID_USAGE_SENSOR_LIGHT_ILLUM, > + &st->common_attributes.sensitivity); > + dev_dbg(&pdev->dev, "Sensitivity index:report > %d:%d\n", > + st->common_attributes.sensitivity.index, > + st- > >common_attributes.sensitivity.report_id); > + } > return ret; > } > > diff --git a/drivers/iio/pressure/hid-sensor-press.c > b/drivers/iio/pressure/hid-sensor-press.c > index 6848d8c..4cbbf88 100644 > --- a/drivers/iio/pressure/hid-sensor-press.c > +++ b/drivers/iio/pressure/hid-sensor-press.c > @@ -249,6 +249,16 @@ static int press_parse_report(struct > platform_device *pdev, > st->common_attributes.sensitivity.index, > st- > >common_attributes.sensitivity.report_id); > } > + if (st->common_attributes.sensitivity.index < 0) { > + sensor_hub_input_get_attribute_info(hsdev, > + HID_FEATURE_REPORT, usage_id, > + HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY > _ABS | > + HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE, > + &st->common_attributes.sensitivity); > + dev_dbg(&pdev->dev, "Sensitivity index:report > %d:%d\n", > + st->common_attributes.sensitivity.index, > + st- > >common_attributes.sensitivity.report_id); > + } > return ret; > } > > diff --git a/include/linux/hid-sensor-ids.h b/include/linux/hid- > sensor-ids.h > index f2ee90a..755f5e2 100644 > --- a/include/linux/hid-sensor-ids.h > +++ b/include/linux/hid-sensor-ids.h > @@ -141,6 +141,7 @@ > /* Per data field properties */ > #define HID_USAGE_SENSOR_DATA_MOD_NONE > 0x00 > #define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_ABS > 0x1000 > +#define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_REL_PCT > 0xE000 > > /* Power state enumerations */ > #define HID_USAGE_SENSOR_PROP_POWER_STATE_UNDEFINED_ENUM 0x20 > 0850 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 03/11/16 13:35, Srinivas Pandruvada wrote: > On Thu, 2016-11-03 at 18:43 +0800, Ooi, Joyce wrote: >> Sensitivity Percent Relative is added for ambient light sensor as it >> is >> used based on HID Sensor Usages specifications. > The same patch is submitted by Song Hongyan <hongyan.song@intel.com> > . We may need new IIO ABI to specify relative percent hyst. It is a particularly 'hideous' way of reporting something - particularly as we head towards very low values. Ah well. Yes, would need some additional ABI. We do already have ratio attributes so maybe - hysteresis_ratio or something like that. Ugly though. Ah well. Jonathan > > Thanks, > Srinivas > >> >> Other changes include adding HID_USAGE_SENSOR_LIGHT_ILLUM and >> HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE for ambient light and pressure >> sensor respectively to be in sync with HID Sensor Usages >> specifications. >> >> Signed-off-by: Ooi, Joyce <joyce.ooi@intel.com> >> --- >> drivers/iio/light/hid-sensor-als.c | 10 ++++++++++ >> drivers/iio/pressure/hid-sensor-press.c | 10 ++++++++++ >> include/linux/hid-sensor-ids.h | 1 + >> 3 files changed, 21 insertions(+) >> >> diff --git a/drivers/iio/light/hid-sensor-als.c >> b/drivers/iio/light/hid-sensor-als.c >> index 8bb1f90..6f3ca18 100644 >> --- a/drivers/iio/light/hid-sensor-als.c >> +++ b/drivers/iio/light/hid-sensor-als.c >> @@ -252,6 +252,16 @@ static int als_parse_report(struct >> platform_device *pdev, >> st->common_attributes.sensitivity.index, >> st- >>> common_attributes.sensitivity.report_id); >> } >> + if (st->common_attributes.sensitivity.index < 0) { >> + sensor_hub_input_get_attribute_info(hsdev, >> + HID_FEATURE_REPORT, usage_id, >> + HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY >> _REL_PCT | >> + HID_USAGE_SENSOR_LIGHT_ILLUM, >> + &st->common_attributes.sensitivity); >> + dev_dbg(&pdev->dev, "Sensitivity index:report >> %d:%d\n", >> + st->common_attributes.sensitivity.index, >> + st- >>> common_attributes.sensitivity.report_id); >> + } >> return ret; >> } >> >> diff --git a/drivers/iio/pressure/hid-sensor-press.c >> b/drivers/iio/pressure/hid-sensor-press.c >> index 6848d8c..4cbbf88 100644 >> --- a/drivers/iio/pressure/hid-sensor-press.c >> +++ b/drivers/iio/pressure/hid-sensor-press.c >> @@ -249,6 +249,16 @@ static int press_parse_report(struct >> platform_device *pdev, >> st->common_attributes.sensitivity.index, >> st- >>> common_attributes.sensitivity.report_id); >> } >> + if (st->common_attributes.sensitivity.index < 0) { >> + sensor_hub_input_get_attribute_info(hsdev, >> + HID_FEATURE_REPORT, usage_id, >> + HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY >> _ABS | >> + HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE, >> + &st->common_attributes.sensitivity); >> + dev_dbg(&pdev->dev, "Sensitivity index:report >> %d:%d\n", >> + st->common_attributes.sensitivity.index, >> + st- >>> common_attributes.sensitivity.report_id); >> + } >> return ret; >> } >> >> diff --git a/include/linux/hid-sensor-ids.h b/include/linux/hid- >> sensor-ids.h >> index f2ee90a..755f5e2 100644 >> --- a/include/linux/hid-sensor-ids.h >> +++ b/include/linux/hid-sensor-ids.h >> @@ -141,6 +141,7 @@ >> /* Per data field properties */ >> #define HID_USAGE_SENSOR_DATA_MOD_NONE >> 0x00 >> #define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_ABS >> 0x1000 >> +#define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_REL_PCT >> 0xE000 >> >> /* Power state enumerations */ >> #define HID_USAGE_SENSOR_PROP_POWER_STATE_UNDEFINED_ENUM 0x20 >> 0850 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/iio/light/hid-sensor-als.c b/drivers/iio/light/hid-sensor-als.c index 8bb1f90..6f3ca18 100644 --- a/drivers/iio/light/hid-sensor-als.c +++ b/drivers/iio/light/hid-sensor-als.c @@ -252,6 +252,16 @@ static int als_parse_report(struct platform_device *pdev, st->common_attributes.sensitivity.index, st->common_attributes.sensitivity.report_id); } + if (st->common_attributes.sensitivity.index < 0) { + sensor_hub_input_get_attribute_info(hsdev, + HID_FEATURE_REPORT, usage_id, + HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_REL_PCT | + HID_USAGE_SENSOR_LIGHT_ILLUM, + &st->common_attributes.sensitivity); + dev_dbg(&pdev->dev, "Sensitivity index:report %d:%d\n", + st->common_attributes.sensitivity.index, + st->common_attributes.sensitivity.report_id); + } return ret; } diff --git a/drivers/iio/pressure/hid-sensor-press.c b/drivers/iio/pressure/hid-sensor-press.c index 6848d8c..4cbbf88 100644 --- a/drivers/iio/pressure/hid-sensor-press.c +++ b/drivers/iio/pressure/hid-sensor-press.c @@ -249,6 +249,16 @@ static int press_parse_report(struct platform_device *pdev, st->common_attributes.sensitivity.index, st->common_attributes.sensitivity.report_id); } + if (st->common_attributes.sensitivity.index < 0) { + sensor_hub_input_get_attribute_info(hsdev, + HID_FEATURE_REPORT, usage_id, + HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_ABS | + HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE, + &st->common_attributes.sensitivity); + dev_dbg(&pdev->dev, "Sensitivity index:report %d:%d\n", + st->common_attributes.sensitivity.index, + st->common_attributes.sensitivity.report_id); + } return ret; } diff --git a/include/linux/hid-sensor-ids.h b/include/linux/hid-sensor-ids.h index f2ee90a..755f5e2 100644 --- a/include/linux/hid-sensor-ids.h +++ b/include/linux/hid-sensor-ids.h @@ -141,6 +141,7 @@ /* Per data field properties */ #define HID_USAGE_SENSOR_DATA_MOD_NONE 0x00 #define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_ABS 0x1000 +#define HID_USAGE_SENSOR_DATA_MOD_CHANGE_SENSITIVITY_REL_PCT 0xE000 /* Power state enumerations */ #define HID_USAGE_SENSOR_PROP_POWER_STATE_UNDEFINED_ENUM 0x200850
Sensitivity Percent Relative is added for ambient light sensor as it is used based on HID Sensor Usages specifications. Other changes include adding HID_USAGE_SENSOR_LIGHT_ILLUM and HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE for ambient light and pressure sensor respectively to be in sync with HID Sensor Usages specifications. Signed-off-by: Ooi, Joyce <joyce.ooi@intel.com> --- drivers/iio/light/hid-sensor-als.c | 10 ++++++++++ drivers/iio/pressure/hid-sensor-press.c | 10 ++++++++++ include/linux/hid-sensor-ids.h | 1 + 3 files changed, 21 insertions(+)