mirror of
https://github.com/torvalds/linux.git
synced 2025-04-12 16:47:42 +00:00

Fully implement QuickI2C driver probe/remove callbacks, interrupt handler, integrate HIDI2C protocol, enumerate HID device and register HID device. Co-developed-by: Xinpeng Sun <xinpeng.sun@intel.com> Signed-off-by: Xinpeng Sun <xinpeng.sun@intel.com> Signed-off-by: Even Xu <even.xu@intel.com> Tested-by: Rui Zhang <rui1.zhang@intel.com> Tested-by: Mark Pearson <mpearson-lenovo@squebb.ca> Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca> Tested-by: Aaron Ma <aaron.ma@canonical.com> Signed-off-by: Jiri Kosina <jkosina@suse.com>
21 lines
761 B
C
21 lines
761 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/* Copyright (c) 2024 Intel Corporation */
|
|
|
|
#ifndef _QUICKI2C_PROTOCOL_H_
|
|
#define _QUICKI2C_PROTOCOL_H_
|
|
|
|
#include <linux/hid-over-i2c.h>
|
|
|
|
struct quicki2c_device;
|
|
|
|
int quicki2c_set_power(struct quicki2c_device *qcdev, enum hidi2c_power_state power_state);
|
|
int quicki2c_get_report(struct quicki2c_device *qcdev, u8 report_type,
|
|
unsigned int reportnum, void *buf, u32 buf_len);
|
|
int quicki2c_set_report(struct quicki2c_device *qcdev, u8 report_type,
|
|
unsigned int reportnum, void *buf, u32 buf_len);
|
|
int quicki2c_get_device_descriptor(struct quicki2c_device *qcdev);
|
|
int quicki2c_get_report_descriptor(struct quicki2c_device *qcdev);
|
|
int quicki2c_reset(struct quicki2c_device *qcdev);
|
|
|
|
#endif /* _QUICKI2C_PROTOCOL_H_ */
|