For the record, this is required to have fast enough key presses with sun4i-keyboard (actually used on sun4i, sun5i and sun7i) on CWM recovery, an Android initramfs that allows easy flashing of the devices. With any lower sampling rate, close key presses are not distinguished and reported as one long press.
Le mercredi 08 octobre 2014 à 19:11 +0200, Paul Kocialkowski a écrit : > Signed-off-by: Paul Kocialkowski <[email protected]> > --- > drivers/input/keyboard/sun4i-keyboard.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/input/keyboard/sun4i-keyboard.c > b/drivers/input/keyboard/sun4i-keyboard.c > index 74869e1..fa3bd45 100644 > --- a/drivers/input/keyboard/sun4i-keyboard.c > +++ b/drivers/input/keyboard/sun4i-keyboard.c > @@ -194,7 +194,7 @@ static void sun4i_keyboard_resume(struct early_suspend *h) > printk("enter laterresume: sun4i_keyboard_resume. \n"); > #endif > > - > writel(FIRST_CONCERT_DLY|LEVELB_VOL|KEY_MODE_SELECT|LRADC_HOLD_EN|ADC_CHAN_SELECT|LRADC_SAMPLE_62HZ|LRADC_EN,KEY_BASSADDRESS > + LRADC_CTRL); > + > writel(FIRST_CONCERT_DLY|LEVELB_VOL|KEY_MODE_SELECT|LRADC_HOLD_EN|ADC_CHAN_SELECT|LRADC_SAMPLE_250HZ|LRADC_EN,KEY_BASSADDRESS > + LRADC_CTRL); > return ; > } > #else > @@ -391,7 +391,7 @@ static int __init sun4ikbd_init(void) > > #ifdef ONE_CHANNEL > > writel(LRADC_ADC0_DOWN_EN|LRADC_ADC0_UP_EN|LRADC_ADC0_DATA_EN,KEY_BASSADDRESS > + LRADC_INTC); > - > writel(FIRST_CONCERT_DLY|LEVELB_VOL|KEY_MODE_SELECT|LRADC_HOLD_EN|ADC_CHAN_SELECT|LRADC_SAMPLE_62HZ|LRADC_EN,KEY_BASSADDRESS > + LRADC_CTRL); > + > writel(FIRST_CONCERT_DLY|LEVELB_VOL|KEY_MODE_SELECT|LRADC_HOLD_EN|ADC_CHAN_SELECT|LRADC_SAMPLE_250HZ|LRADC_EN,KEY_BASSADDRESS > + LRADC_CTRL); > > //writel(FIRST_CONCERT_DLY|LEVELB_VOL|KEY_MODE_SELECT|ADC_CHAN_SELECT|LRADC_SAMPLE_62HZ|LRADC_EN,KEY_BASSADDRESS > + LRADC_CTRL); > > #else > -- > 2.1.0.rc1 >
signature.asc
Description: This is a digitally signed message part
