Input: ucb1400_ts - enable ADC Filter
This patch enables ADC filtering on UCB1400 codec by default. The benefit from this change is mostly on some Colibri boards where the ADCSYNC pin of the UCB1400 codec isn't connected causing the touchscreen to jitter very badly. This change has no visible effect on boards where the ADCSYNC pin is connected. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Tested-by: Palo Revak <palo@bielyvlk.sk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
committed by
Dmitry Torokhov
parent
3b7307c2d6
commit
1700f5fde8
@ -345,6 +345,7 @@ static int ucb1400_ts_detect_irq(struct ucb1400_ts *ucb)
|
||||
static int ucb1400_ts_probe(struct platform_device *dev)
|
||||
{
|
||||
int error, x_res, y_res;
|
||||
u16 fcsr;
|
||||
struct ucb1400_ts *ucb = dev->dev.platform_data;
|
||||
|
||||
ucb->ts_idev = input_allocate_device();
|
||||
@ -382,6 +383,14 @@ static int ucb1400_ts_probe(struct platform_device *dev)
|
||||
ucb->ts_idev->evbit[0] = BIT_MASK(EV_ABS) | BIT_MASK(EV_KEY);
|
||||
ucb->ts_idev->keybit[BIT_WORD(BTN_TOUCH)] = BIT_MASK(BTN_TOUCH);
|
||||
|
||||
/*
|
||||
* Enable ADC filter to prevent horrible jitter on Colibri.
|
||||
* This also further reduces jitter on boards where ADCSYNC
|
||||
* pin is connected.
|
||||
*/
|
||||
fcsr = ucb1400_reg_read(ucb->ac97, UCB_FCSR);
|
||||
ucb1400_reg_write(ucb->ac97, UCB_FCSR, fcsr | UCB_FCSR_AVE);
|
||||
|
||||
ucb1400_adc_enable(ucb->ac97);
|
||||
x_res = ucb1400_ts_read_xres(ucb);
|
||||
y_res = ucb1400_ts_read_yres(ucb);
|
||||
|
Reference in New Issue
Block a user