diff options
Diffstat (limited to 'drivers/input/touchscreen/elants_i2c.c')
| -rw-r--r-- | drivers/input/touchscreen/elants_i2c.c | 5 | 
1 files changed, 2 insertions, 3 deletions
| diff --git a/drivers/input/touchscreen/elants_i2c.c b/drivers/input/touchscreen/elants_i2c.c index 4c2b579f6c8b..5f7706febcb0 100644 --- a/drivers/input/touchscreen/elants_i2c.c +++ b/drivers/input/touchscreen/elants_i2c.c @@ -1441,7 +1441,7 @@ static int elants_i2c_probe(struct i2c_client *client,  	touchscreen_parse_properties(ts->input, true, &ts->prop); -	if (ts->chip_id == EKTF3624) { +	if (ts->chip_id == EKTF3624 && ts->phy_x && ts->phy_y) {  		/* calculate resolution from size */  		ts->x_res = DIV_ROUND_CLOSEST(ts->prop.max_x, ts->phy_x);  		ts->y_res = DIV_ROUND_CLOSEST(ts->prop.max_y, ts->phy_y); @@ -1449,8 +1449,7 @@ static int elants_i2c_probe(struct i2c_client *client,  	input_abs_set_res(ts->input, ABS_MT_POSITION_X, ts->x_res);  	input_abs_set_res(ts->input, ABS_MT_POSITION_Y, ts->y_res); -	if (ts->major_res > 0) -		input_abs_set_res(ts->input, ABS_MT_TOUCH_MAJOR, ts->major_res); +	input_abs_set_res(ts->input, ABS_MT_TOUCH_MAJOR, ts->major_res);  	error = input_mt_init_slots(ts->input, MAX_CONTACT_NUM,  				    INPUT_MT_DIRECT | INPUT_MT_DROP_UNUSED); | 
