Re: [PATCH v4] HID: add KEY_CAMERA_FOCUS event in HID

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

 



On Thu, Feb 16, 2023 at 04:48:30PM +0800, Qi Feng wrote:
> From: fengqi <fengqi@xxxxxxxxxx>
> 
> Our HID device need KEY_CAMERA_FOCUS event to control camera,
> but this event is non-existent in current HID driver.
> So we add this event in hid-input.c.
> 
> Signed-off-by: fengqi <fengqi@xxxxxxxxxx>
> 
> ---
> changes in v4:
> 
> -add HID_UP_CAMERA in HID usage tables , Then add the mapping under HID_UP_CAMERA
> -modify the commit log of patch
> -Link to v3:https://lore.kernel.org/linux-input/9a85b268c7636ef2e4e3bbbe318561ba2842a591.1676536357.git.fengqi@xxxxxxxxxx/T/#u
> -Link to v2:https://lore.kernel.org/linux-input/CACOZ=ZU0zgRmoRu8X5bMUzUrXA9x-qoDJqrQroUs=+qKR58MQA@xxxxxxxxxxxxxx/T/#t
> -Link to v1:https://lore.kernel.org/linux-input/CACOZ=ZWB3grJKn7wAZEZ0BDyN7KJF4VWUTNs-mPxeoW_oiR7=g@xxxxxxxxxxxxxx/T/#t
> ---
>  drivers/hid/hid-input.c | 10 ++++++++++
>  include/linux/hid.h     |  1 +
>  2 files changed, 11 insertions(+)
> 
> diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
> index 77c8c49852b5..c6098ae2fac7 100644
> --- a/drivers/hid/hid-input.c
> +++ b/drivers/hid/hid-input.c
> @@ -1225,6 +1225,16 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel
>  			return;
>  		}
>  		goto unknown;
> +	case HID_UP_CAMERA:
> +		switch (usage->hid & HID_USAGE) {
> +		case 0x020:
> +			map_key_clear(KEY_CAMERA_FOCUS);	break;
> +		case 0x021:
> +			map_key_clear(KEY_CAMERA);		break;
> +		default:
> +			goto ignore;
> +		}
> +		break;
>  
>  	case HID_UP_HPVENDOR:	/* Reported on a Dutch layout HP5308 */
>  		set_bit(EV_REP, input->evbit);
> diff --git a/include/linux/hid.h b/include/linux/hid.h
> index 8677ae38599e..88793b77bd63 100644
> --- a/include/linux/hid.h
> +++ b/include/linux/hid.h
> @@ -155,6 +155,7 @@ struct hid_item {
>  #define HID_UP_DIGITIZER	0x000d0000
>  #define HID_UP_PID		0x000f0000
>  #define HID_UP_BATTERY		0x00850000
> +#define HID_UP_CAMERA		0x00900000
>  #define HID_UP_HPVENDOR         0xff7f0000
>  #define HID_UP_HPVENDOR2        0xff010000
>  #define HID_UP_MSVENDOR		0xff000000
> -- 
> 2.39.0
> 

Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>



[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