77 lines
1.8 KiB
C
Executable File
77 lines
1.8 KiB
C
Executable File
#ifndef SUNXI_KEYBOARD_H
|
|
#define SUNXI_KEYBOARD_H
|
|
|
|
#define INPUT_DEV_NAME ("sunxi-keyboard")
|
|
|
|
#define KEY_MAX_CNT (13)
|
|
|
|
#define LRADC_CTRL (0x00)
|
|
#define LRADC_INTC (0x04)
|
|
#define LRADC_INT_STA (0x08)
|
|
#define LRADC_DATA0 (0x0c)
|
|
#define LRADC_DATA1 (0x10)
|
|
|
|
#define FIRST_CONCERT_DLY (0<<24)
|
|
#define CHAN (0x0)
|
|
#define ADC_CHAN_SELECT (CHAN<<22)
|
|
#define LRADC_KEY_MODE (0)
|
|
#define KEY_MODE_SELECT (LRADC_KEY_MODE<<12)
|
|
#define LEVELB_VOL (0<<4)
|
|
#define LRADC_HOLD_EN (1<<6)
|
|
#define LRADC_SAMPLE_32HZ (3<<2)
|
|
#define LRADC_SAMPLE_62HZ (2<<2)
|
|
#define LRADC_SAMPLE_125HZ (1<<2)
|
|
#define LRADC_SAMPLE_250HZ (0<<2)
|
|
#define LRADC_EN (1<<0)
|
|
|
|
#define LRADC_ADC1_UP_EN (1<<12)
|
|
#define LRADC_ADC1_DOWN_EN (1<<9)
|
|
#define LRADC_ADC1_DATA_EN (1<<8)
|
|
|
|
#define LRADC_ADC0_UP_EN (1<<4)
|
|
#define LRADC_ADC0_DOWN_EN (1<<1)
|
|
#define LRADC_ADC0_DATA_EN (1<<0)
|
|
|
|
#define LRADC_ADC1_UPPEND (1<<12)
|
|
#define LRADC_ADC1_DOWNPEND (1<<9)
|
|
#define LRADC_ADC1_DATAPEND (1<<8)
|
|
|
|
|
|
#define LRADC_ADC0_UPPEND (1<<4)
|
|
#define LRADC_ADC0_DOWNPEND (1<<1)
|
|
#define LRADC_ADC0_DATAPEND (1<<0)
|
|
|
|
#define ONE_CHANNEL
|
|
#define MODE_0V2
|
|
|
|
#ifdef MODE_0V2
|
|
/* standard of key maping
|
|
* 0.2V mode
|
|
*/
|
|
#define REPORT_KEY_LOW_LIMIT_COUNT (1)
|
|
|
|
#endif
|
|
|
|
struct sunxi_adc_disc {
|
|
u32 measure;
|
|
u32 resol;
|
|
};
|
|
|
|
enum key_mode {
|
|
CONCERT_DLY_SET = (1<<0),
|
|
ADC_CHAN_SET = (1<<1),
|
|
KEY_MODE_SET = (1<<2),
|
|
LRADC_HOLD_SET = (1<<3),
|
|
LEVELB_VOL_SET = (1<<4),
|
|
LRADC_SAMPLE_SET = (1<<5),
|
|
LRADC_EN_SET = (1<<6),
|
|
};
|
|
|
|
enum int_mode {
|
|
ADC0_DOWN_INT_SET = (1<<0),
|
|
ADC0_UP_INT_SET = (1<<1),
|
|
ADC0_DATA_INT_SET = (1<<2),
|
|
};
|
|
|
|
#endif
|