Loading drivers/input/touchscreen/wm9713.c +22 −0 Original line number Diff line number Diff line Loading @@ -84,6 +84,15 @@ static int delay = 4; module_param(delay, int, 0); MODULE_PARM_DESC(delay, "Set adc sample delay."); /* * Set five_wire = 1 to use a 5 wire touchscreen. * * NOTE: Five wire mode does not allow for readback of pressure. */ static int five_wire; module_param(five_wire, int, 0); MODULE_PARM_DESC(five_wire, "Set to '1' to use 5-wire touchscreen."); /* * Set adc mask function. * Loading Loading @@ -162,6 +171,19 @@ static void wm9713_phy_init(struct wm97xx *wm) 64000 / rpu); } /* Five wire panel? */ if (five_wire) { dig3 |= WM9713_45W; dev_info(wm->dev, "setting 5-wire touchscreen mode."); if (pil) { dev_warn(wm->dev, "Pressure measurement not supported in 5 " "wire mode, disabling\n"); pil = 0; } } /* touchpanel pressure */ if (pil == 2) { dig3 |= WM9712_PIL; Loading include/linux/wm97xx.h +1 −0 Original line number Diff line number Diff line Loading @@ -100,6 +100,7 @@ #define WM9713_ADCSEL_Y 0x0004 /* Y measurement */ #define WM9713_ADCSEL_PRES 0x0008 /* Pressure measurement */ #define WM9713_COO 0x0001 /* enable coordinate mode */ #define WM9713_45W 0x1000 /* set for 5 wire panel */ #define WM9713_PDEN 0x0800 /* measure only when pen down */ #define WM9713_ADCSEL_MASK 0x00fe /* ADC selection mask */ #define WM9713_WAIT 0x0200 /* coordinate wait */ Loading Loading
drivers/input/touchscreen/wm9713.c +22 −0 Original line number Diff line number Diff line Loading @@ -84,6 +84,15 @@ static int delay = 4; module_param(delay, int, 0); MODULE_PARM_DESC(delay, "Set adc sample delay."); /* * Set five_wire = 1 to use a 5 wire touchscreen. * * NOTE: Five wire mode does not allow for readback of pressure. */ static int five_wire; module_param(five_wire, int, 0); MODULE_PARM_DESC(five_wire, "Set to '1' to use 5-wire touchscreen."); /* * Set adc mask function. * Loading Loading @@ -162,6 +171,19 @@ static void wm9713_phy_init(struct wm97xx *wm) 64000 / rpu); } /* Five wire panel? */ if (five_wire) { dig3 |= WM9713_45W; dev_info(wm->dev, "setting 5-wire touchscreen mode."); if (pil) { dev_warn(wm->dev, "Pressure measurement not supported in 5 " "wire mode, disabling\n"); pil = 0; } } /* touchpanel pressure */ if (pil == 2) { dig3 |= WM9712_PIL; Loading
include/linux/wm97xx.h +1 −0 Original line number Diff line number Diff line Loading @@ -100,6 +100,7 @@ #define WM9713_ADCSEL_Y 0x0004 /* Y measurement */ #define WM9713_ADCSEL_PRES 0x0008 /* Pressure measurement */ #define WM9713_COO 0x0001 /* enable coordinate mode */ #define WM9713_45W 0x1000 /* set for 5 wire panel */ #define WM9713_PDEN 0x0800 /* measure only when pen down */ #define WM9713_ADCSEL_MASK 0x00fe /* ADC selection mask */ #define WM9713_WAIT 0x0200 /* coordinate wait */ Loading