1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2a54dc779SMichal Malý #ifndef __HID_LG4FF_H
3a54dc779SMichal Malý #define __HID_LG4FF_H
4a54dc779SMichal Malý
5a54dc779SMichal Malý #ifdef CONFIG_LOGIWHEELS_FF
6a54dc779SMichal Malý extern int lg4ff_no_autoswitch; /* From hid-lg.c */
7a54dc779SMichal Malý
8a54dc779SMichal Malý int lg4ff_adjust_input_event(struct hid_device *hid, struct hid_field *field,
92a552c30SMichal Malý struct hid_usage *usage, s32 value, struct lg_drv_data *drv_data);
10c832f86eSSimon Wood int lg4ff_raw_event(struct hid_device *hdev, struct hid_report *report,
11c832f86eSSimon Wood u8 *rd, int size, struct lg_drv_data *drv_data);
12a54dc779SMichal Malý int lg4ff_init(struct hid_device *hdev);
13a54dc779SMichal Malý int lg4ff_deinit(struct hid_device *hdev);
14a54dc779SMichal Malý #else
lg4ff_adjust_input_event(struct hid_device * hid,struct hid_field * field,struct hid_usage * usage,s32 value,struct lg_drv_data * drv_data)15a54dc779SMichal Malý static inline int lg4ff_adjust_input_event(struct hid_device *hid, struct hid_field *field,
162a552c30SMichal Malý struct hid_usage *usage, s32 value, struct lg_drv_data *drv_data) { return 0; }
lg4ff_raw_event(struct hid_device * hdev,struct hid_report * report,u8 * rd,int size,struct lg_drv_data * drv_data)17c832f86eSSimon Wood static inline int lg4ff_raw_event(struct hid_device *hdev, struct hid_report *report,
18c832f86eSSimon Wood u8 *rd, int size, struct lg_drv_data *drv_data) { return 0; }
lg4ff_init(struct hid_device * hdev)19a54dc779SMichal Malý static inline int lg4ff_init(struct hid_device *hdev) { return -1; }
lg4ff_deinit(struct hid_device * hdev)20a54dc779SMichal Malý static inline int lg4ff_deinit(struct hid_device *hdev) { return -1; }
21a54dc779SMichal Malý #endif
22a54dc779SMichal Malý
23a54dc779SMichal Malý #endif
24