// =========================================================================== // cyio.h // Copyright (C) 2008-2010 Bookeen - All rights reserved // =========================================================================== // Key events #define CYEVENT_KEY_ENTER 'e' #define CYEVENT_KEY_RIGHT 'r' #define CYEVENT_KEY_DOWN 'd' #define CYEVENT_KEY_LEFT 'l' #define CYEVENT_KEY_UP 'u' #define CYEVENT_KEY_F1 '1' #define CYEVENT_KEY_F2 '2' #define CYEVENT_KEY_F3 '3' #define CYEVENT_KEY_F4 '4' #define CYEVENT_KEY_OFF 'o' #define CYEVENT_KEY_DSLP 'S' #define CYEVENT_KEY_VOLP '+' #define CYEVENT_KEY_VOLN '-' #define CYEVENT_KEY_REPEAT_FLAG 0x80 #define CYEVENT_KEY_REPEAT_END '0' // Physical events #define CYEVENT_USB_IN 'p' #define CYEVENT_USB_OUT 'q' #define CYEVENT_AC_IN 'a' #define CYEVENT_AC_OUT 'b' #define CYEVENT_ACN_IN 'j' #define CYEVENT_ACN_OUT 'k' #define CYEVENT_SD_IN 's' #define CYEVENT_SD_OUT 't' #define CYEVENT_SDN_IN 'u' #define CYEVENT_SDN_OUT 'v' #define CYEVENT_SPECIAL 0xFE // G-Sensor events #define CYEVENT_ORIENTATIONCHANGED 'O' #define CYEVENT_G_ROT000 'A' #define CYEVENT_G_ROT090 'B' #define CYEVENT_G_ROT180 'C' #define CYEVENT_G_ROT270 'D' #define CYEVENT_TOGGLE_GSENSOR 'G' // Logical events // CYEVENT_KEY_OFF + CYEVENT_KEY_VOLN #define CYEVENT_FACTORY_OFF 'x' #define CYEVENT_SUSPEND_SCREEN 'y' #define CYEVENT_SUSPEND_DEVICE 'z' /* Normaly no more used... */ //#define CYIO_KERNEL_2_6 1 // =========================================================================== /* Non directly CyIO related values, but used for the Accelerometer */ #define G_SENSOR_ON '1' #define G_SENSOR_OFF '0' #define G_SENSOR_CAL 'C' enum { CYGSENSOR_STATUS_ENABLED = 0, /** The accelerometer is enabled */ CYGSENSOR_STATUS_DISABLED = 1, /** The accelerometer is disabled */ CYGSENSOR_STATUS_NOTCALIB = 2, /** Not calibrated, or invalid calibration data */ CYGSENSOR_STATUS_CALIBRATED = 3, /** This status should never been read, but it could help to debug */ CYGSENSOR_STATUS_UNKNOWN = 4, /** This status should never been read, but it could help to debug */ CYGSENSOR_STATUS_CHIPDETECTED = 5, /** This status should never been read, used to say if we correctly detected the I²C accelerometer Chip */ CYGSENSOR_STATUS_CRITICALERROR = 6, /** If we are in this status, the G-Sensor is non working: possible cause, defective chip */ CYGSENSOR_STATUS_SUSPENDED = 7, /** The GSENSOR was on, the device go to deepsleep, so we go in this state. */ }; #define SET_IOCTL(c, v) ((c << 8) | (v & 0xFF)) #define CYIO_CTL_LED_CMD SET_IOCTL('C', 'l') #define CYIO_CTL_USB_STATUS SET_IOCTL('C', 'u') #define CYIO_CTL_SD_STATUS SET_IOCTL('C', 's') #define CYIO_CTL_PWRLED_CHANGE 0x002 #define CYIO_CTL_WFILED_CHANGE 0x020 #define CYIO_CTL_BTHLED_CHANGE 0x200 #define CYIO_CTL_PWRLED_SETON (CYIO_CTL_PWRLED_CHANGE | 0x001) #define CYIO_CTL_WFILED_SETON (CYIO_CTL_WFILED_CHANGE | 0x010) #define CYIO_CTL_BTHLED_SETON (CYIO_CTL_BTHLED_CHANGE | 0x100) #define CYIO_CTL_PWRLED_SETOFF (CYIO_CTL_PWRLED_CHANGE | 0x000) #define CYIO_CTL_WFILED_SETOFF (CYIO_CTL_WFILED_CHANGE | 0x000) #define CYIO_CTL_BTHLED_SETOFF (CYIO_CTL_BTHLED_CHANGE | 0x000) // =========================================================================== /* Exported function of CyIO */ void Cyio_ResetTimer(void); int Cyio_PushEvent(char eventId, char unique); // ===========================================================================