13#ifndef ZEPHYR_INCLUDE_INPUT_INPUT_TOUCH_H_
14#define ZEPHYR_INCLUDE_INPUT_INPUT_TOUCH_H_
65#define INPUT_TOUCH_OUTPUT_DIM(node_id, dim, prop) \
66 COND_CODE_1(DT_NODE_HAS_PROP(node_id, display), \
67 (DT_PROP(DT_PHANDLE(node_id, display), dim)), \
68 (DT_PROP_OR(node_id, prop, 0)))
75#define INPUT_TOUCH_DT_COMMON_CONFIG_INIT(node_id) \
77 .screen_width = DT_PROP(node_id, screen_width), \
78 .screen_height = DT_PROP(node_id, screen_height), \
79 .inverted_x = DT_PROP(node_id, inverted_x), \
80 .inverted_y = DT_PROP(node_id, inverted_y), \
81 .swapped_x_y = DT_PROP(node_id, swapped_x_y), \
82 .output_width = INPUT_TOUCH_OUTPUT_DIM(node_id, width, output_width), \
83 .output_height = INPUT_TOUCH_OUTPUT_DIM(node_id, height, output_height), \
91#define INPUT_TOUCH_DT_INST_COMMON_CONFIG_INIT(inst) \
92 INPUT_TOUCH_DT_COMMON_CONFIG_INIT(DT_DRV_INST(inst))
99#define INPUT_TOUCH_STRUCT_CHECK(config) \
100 BUILD_ASSERT(offsetof(config, common) == 0, \
101 "struct input_touchscreen_common_config must be placed first");
void input_touchscreen_report_pos(const struct device *dev, uint32_t x, uint32_t y, k_timeout_t timeout)
Common utility for reporting touchscreen position events.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
Kernel timeout type.
Definition clock.h:65