Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
at nocache-cleanup 32 lines 966 B view raw
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2#ifndef __HID_PIDFF_H 3#define __HID_PIDFF_H 4 5#include <linux/hid.h> 6 7/* HID PIDFF quirks */ 8 9/* Delay field (0xA7) missing. Skip it during set effect report upload */ 10#define HID_PIDFF_QUIRK_MISSING_DELAY BIT(0) 11 12/* Missing Paramter block offset (0x23). Skip it during SET_CONDITION upload */ 13#define HID_PIDFF_QUIRK_MISSING_PBO BIT(1) 14 15/* Initialise device control field even if logical_minimum != 1 */ 16#define HID_PIDFF_QUIRK_PERMISSIVE_CONTROL BIT(2) 17 18/* Use fixed 0x4000 direction during SET_EFFECT report upload */ 19#define HID_PIDFF_QUIRK_FIX_CONDITIONAL_DIRECTION BIT(3) 20 21/* Force all periodic effects to be uploaded as SINE */ 22#define HID_PIDFF_QUIRK_PERIODIC_SINE_ONLY BIT(4) 23 24#ifdef CONFIG_HID_PID 25int hid_pidff_init(struct hid_device *hid); 26int hid_pidff_init_with_quirks(struct hid_device *hid, u32 initial_quirks); 27#else 28#define hid_pidff_init NULL 29#define hid_pidff_init_with_quirks NULL 30#endif 31 32#endif