/* Packet size value, the unit is 16 bytes */ #define DEFAULT_MIN_PACKET_SIZE_VALUE 4 #define MAX_PACKET_SIZE_VALUE_MTL 128 #define MAX_PACKET_SIZE_VALUE_LNL 256
/* * THC uses runtime auto suspend to dynamically switch between THC active LTR * and low power LTR to save CPU power. * Default value is 5000ms, that means if no touch event in this time, THC will * change to low power LTR mode.
*/ #define DEFAULT_AUTO_SUSPEND_DELAY_MS 5000
/** * struct quickspi_driver_data - Driver specific data for quickspi device * @max_packet_size_value: identify max packet size, unit is 16 bytes
*/ struct quickspi_driver_data {
u32 max_packet_size_value;
};
/** * struct quickspi_device - THC QuickSpi device struct * @dev: point to kernel device * @pdev: point to PCI device * @thc_hw: point to THC device * @hid_dev: point to hid device * @acpi_dev: point to ACPI device * @driver_data: point to quickspi specific driver data * @state: THC SPI device state * @mem_addr: MMIO memory address * @dev_desc: device descriptor for HIDSPI protocol * @input_report_hdr_addr: device input report header address * @input_report_bdy_addr: device input report body address * @output_report_bdy_addr: device output report address * @spi_freq_val: device supported max SPI frequnecy, in Hz * @spi_read_io_mode: device supported SPI read io mode * @spi_write_io_mode: device supported SPI write io mode * @spi_read_opcode: device read opcode * @spi_write_opcode: device write opcode * @limit_packet_size: 1 - limit read/write packet to 64Bytes * 0 - device no packet size limiation for read/write * @performance_limit: delay time, in ms. * if device has performance limitation, must give a delay * before write operation after a read operation. * @active_ltr_val: THC active LTR value * @low_power_ltr_val: THC low power LTR value * @report_descriptor: store a copy of device report descriptor * @input_buf: store a copy of latest input report data * @report_buf: store a copy of latest input/output report packet from set/get feature * @report_len: the length of input/output report packet * @reset_ack_wq: workqueue for waiting reset response from device * @reset_ack: indicate reset response received or not * @nondma_int_received_wq: workqueue for waiting THC non-DMA interrupt * @nondma_int_received: indicate THC non-DMA interrupt received or not * @report_desc_got_wq: workqueue for waiting device report descriptor * @report_desc_got: indicate device report descritor received or not * @set_power_on_wq: workqueue for waiting set power on response from device * @set_power_on: indicate set power on response received or not * @get_feature_cmpl_wq: workqueue for waiting get feature response from device * @get_feature_cmpl: indicate get feature received or not * @set_feature_cmpl_wq: workqueue for waiting set feature to device * @set_feature_cmpl: indicate set feature send complete or not
*/ struct quickspi_device { struct device *dev; struct pci_dev *pdev; struct thc_device *thc_hw; struct hid_device *hid_dev; struct acpi_device *acpi_dev; struct quickspi_driver_data *driver_data; enum quickspi_dev_state state;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.