i2c-hid.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * HID over I2C protocol implementation
  3. *
  4. * Copyright (c) 2012 Benjamin Tissoires <benjamin.tissoires@gmail.com>
  5. * Copyright (c) 2012 Ecole Nationale de l'Aviation Civile, France
  6. *
  7. * This file is subject to the terms and conditions of the GNU General Public
  8. * License. See the file COPYING in the main directory of this archive for
  9. * more details.
  10. */
  11. #ifndef __LINUX_I2C_HID_H
  12. #define __LINUX_I2C_HID_H
  13. #include <linux/types.h>
  14. /**
  15. * struct i2chid_platform_data - used by hid over i2c implementation.
  16. * @hid_descriptor_address: i2c register where the HID descriptor is stored.
  17. *
  18. * Note that it is the responsibility of the platform driver (or the acpi 5.0
  19. * driver, or the flattened device tree) to setup the irq related to the gpio in
  20. * the struct i2c_board_info.
  21. * The platform driver should also setup the gpio according to the device:
  22. *
  23. * A typical example is the following:
  24. * irq = gpio_to_irq(intr_gpio);
  25. * hkdk4412_i2c_devs5[0].irq = irq; // store the irq in i2c_board_info
  26. * gpio_request(intr_gpio, "elan-irq");
  27. * s3c_gpio_setpull(intr_gpio, S3C_GPIO_PULL_UP);
  28. */
  29. struct i2c_hid_platform_data {
  30. u16 hid_descriptor_address;
  31. };
  32. #endif /* __LINUX_I2C_HID_H */