12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /*
- * Driver for simulating a mouse on GPIO lines.
- *
- * Copyright (C) 2007 Atmel Corporation
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
- #ifndef _GPIO_MOUSE_H
- #define _GPIO_MOUSE_H
- #define GPIO_MOUSE_POLARITY_ACT_HIGH 0x00
- #define GPIO_MOUSE_POLARITY_ACT_LOW 0x01
- #define GPIO_MOUSE_PIN_UP 0
- #define GPIO_MOUSE_PIN_DOWN 1
- #define GPIO_MOUSE_PIN_LEFT 2
- #define GPIO_MOUSE_PIN_RIGHT 3
- #define GPIO_MOUSE_PIN_BLEFT 4
- #define GPIO_MOUSE_PIN_BMIDDLE 5
- #define GPIO_MOUSE_PIN_BRIGHT 6
- #define GPIO_MOUSE_PIN_MAX 7
- /**
- * struct gpio_mouse_platform_data
- * @scan_ms: integer in ms specifying the scan periode.
- * @polarity: Pin polarity, active high or low.
- * @up: GPIO line for up value.
- * @down: GPIO line for down value.
- * @left: GPIO line for left value.
- * @right: GPIO line for right value.
- * @bleft: GPIO line for left button.
- * @bmiddle: GPIO line for middle button.
- * @bright: GPIO line for right button.
- *
- * This struct must be added to the platform_device in the board code.
- * It is used by the gpio_mouse driver to setup GPIO lines and to
- * calculate mouse movement.
- */
- struct gpio_mouse_platform_data {
- int scan_ms;
- int polarity;
- union {
- struct {
- int up;
- int down;
- int left;
- int right;
- int bleft;
- int bmiddle;
- int bright;
- };
- int pins[GPIO_MOUSE_PIN_MAX];
- };
- };
- #endif /* _GPIO_MOUSE_H */
|