Re: [PATCH] hid: increase maximum global item tag report size to 256

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 3 Aug 2018, Song Hongyan wrote:

> From: "Song, Hongyan" <hongyan.song@xxxxxxxxx>
> 
> The maximum globale report size has changed from 32->...->96->128 in
> the past years.
> With the development usage of HID, the report_size max value 128 cannot
> satisfy all requirements.
> 
> There are applications need to expose intrinsic metadata to camera
> stabilizing applications such as 3DFE application. 3DFE intrinsic is
> designed to express environmental information about sensor that may
> dynamically change while the sensor is running (such data include
> noise spectral density, bias standard deviation …)
> 
> A sensor data field is SENSOR_VALUE_PAIR that consists of a PROPERTYKEY
> and PROPVARIANT pair. It need to report a unique PROPERTYKEY for each
> data field.
> 
> Take “Noise Spectral Density” as an example, it report count will be
> defined as below:
> "Size of Property key GUID(16 Byte) + property key index(4 Byte) +
> size of Noise Spectral Density value(4 Byte)"
> In this case, the data report max is totally 192(24Byte), which is larger
> than 128, while max size 128 blocked it as illegal length. So increase the
> report size to satisfy it and more demands in the future.
> 
> Signed-off-by: Song Hongyan <hongyan.song@xxxxxxxxx>
> ---
> V2: update the comments
> 
>  drivers/hid/hid-core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
> index 3942ee6..d9c1d12 100644
> --- a/drivers/hid/hid-core.c
> +++ b/drivers/hid/hid-core.c
> @@ -396,7 +396,7 @@ static int hid_parser_global(struct hid_parser *parser, struct hid_item *item)
>  
>  	case HID_GLOBAL_ITEM_TAG_REPORT_SIZE:
>  		parser->global.report_size = item_udata(item);
> -		if (parser->global.report_size > 128) {
> +		if (parser->global.report_size > 256) {
>  			hid_err(parser->device, "invalid report_size %d\n",
>  					parser->global.report_size);

Staged for 4.20. Thanks,

-- 
Jiri Kosina
SUSE Labs




[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux