123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /*
- * include/linux/input/ad714x.h
- *
- * AD714x is very flexible, it can be used as buttons, scrollwheel,
- * slider, touchpad at the same time. That depends on the boards.
- * The platform_data for the device's "struct device" holds this
- * information.
- *
- * Copyright 2009 Analog Devices Inc.
- *
- * Licensed under the GPL-2 or later.
- */
- #ifndef __LINUX_INPUT_AD714X_H__
- #define __LINUX_INPUT_AD714X_H__
- #define STAGE_NUM 12
- #define STAGE_CFGREG_NUM 8
- #define SYS_CFGREG_NUM 8
- /* board information which need be initialized in arch/mach... */
- struct ad714x_slider_plat {
- int start_stage;
- int end_stage;
- int max_coord;
- };
- struct ad714x_wheel_plat {
- int start_stage;
- int end_stage;
- int max_coord;
- };
- struct ad714x_touchpad_plat {
- int x_start_stage;
- int x_end_stage;
- int x_max_coord;
- int y_start_stage;
- int y_end_stage;
- int y_max_coord;
- };
- struct ad714x_button_plat {
- int keycode;
- unsigned short l_mask;
- unsigned short h_mask;
- };
- struct ad714x_platform_data {
- int slider_num;
- int wheel_num;
- int touchpad_num;
- int button_num;
- struct ad714x_slider_plat *slider;
- struct ad714x_wheel_plat *wheel;
- struct ad714x_touchpad_plat *touchpad;
- struct ad714x_button_plat *button;
- unsigned short stage_cfg_reg[STAGE_NUM][STAGE_CFGREG_NUM];
- unsigned short sys_cfg_reg[SYS_CFGREG_NUM];
- };
- #endif
|