Loading Documentation/devicetree/bindings/input/touchscreen/synaptics_dsx_i2c.txt +3 −0 Original line number Diff line number Diff line Loading @@ -61,6 +61,9 @@ These properties are defined only when synaptics,detect-device property is defin - synaptics,key-codes : Virtual key code mappings to be used when device supports 2D buttons and sends coordinates instead of key codes. - synaptics,bypass-sensor-coords-check : Bypass the comparison of sensor coordinates range read from DT and touch controller. Used when some touch panels in the field are unprogrammed and misprogrammed. Example: i2c@f9927000 { Loading drivers/input/touchscreen/synaptics_dsx/synaptics_dsx_core.c +25 −1 Original line number Diff line number Diff line Loading @@ -2604,9 +2604,33 @@ static int synaptics_rmi4_parse_dt_children(struct device *dev, rmi4_pdata->package_id, rmi->package_id); /* * Iterate over next child if package * does not match * id does not match */ continue; } else if (of_property_read_bool(child, "synaptics,bypass-sensor-coords-check")) { /* * Some unprogrammed panels from touch vendor * and wrongly programmed panels from factory * may return incorrect sensor coordinate range * when their query registers are read, but * they normally work fine in field. In such * a scenario, driver can bypass the comparison * of coordinate range read from sensor and read * from DT and continue normal operation. */ dev_info(dev, "%s Synaptics package id matches %d %d," "but bypassing the comparison of sensor" "coordinates.\n", __func__, rmi4_pdata->package_id, rmi->package_id); dev_info(dev, "Pmax_x Pmax_y = %d:%d\n", rmi4_pdata->panel_maxx, rmi4_pdata->panel_maxy); dev_info(dev, "Smax_x Smax_y = %d:%d\n", rmi4_data->sensor_max_x, rmi4_data->sensor_max_y); } else { /* * If package id read from DT matches the Loading Loading
Documentation/devicetree/bindings/input/touchscreen/synaptics_dsx_i2c.txt +3 −0 Original line number Diff line number Diff line Loading @@ -61,6 +61,9 @@ These properties are defined only when synaptics,detect-device property is defin - synaptics,key-codes : Virtual key code mappings to be used when device supports 2D buttons and sends coordinates instead of key codes. - synaptics,bypass-sensor-coords-check : Bypass the comparison of sensor coordinates range read from DT and touch controller. Used when some touch panels in the field are unprogrammed and misprogrammed. Example: i2c@f9927000 { Loading
drivers/input/touchscreen/synaptics_dsx/synaptics_dsx_core.c +25 −1 Original line number Diff line number Diff line Loading @@ -2604,9 +2604,33 @@ static int synaptics_rmi4_parse_dt_children(struct device *dev, rmi4_pdata->package_id, rmi->package_id); /* * Iterate over next child if package * does not match * id does not match */ continue; } else if (of_property_read_bool(child, "synaptics,bypass-sensor-coords-check")) { /* * Some unprogrammed panels from touch vendor * and wrongly programmed panels from factory * may return incorrect sensor coordinate range * when their query registers are read, but * they normally work fine in field. In such * a scenario, driver can bypass the comparison * of coordinate range read from sensor and read * from DT and continue normal operation. */ dev_info(dev, "%s Synaptics package id matches %d %d," "but bypassing the comparison of sensor" "coordinates.\n", __func__, rmi4_pdata->package_id, rmi->package_id); dev_info(dev, "Pmax_x Pmax_y = %d:%d\n", rmi4_pdata->panel_maxx, rmi4_pdata->panel_maxy); dev_info(dev, "Smax_x Smax_y = %d:%d\n", rmi4_data->sensor_max_x, rmi4_data->sensor_max_y); } else { /* * If package id read from DT matches the Loading