Commit 70f62e52 authored by Junjie Cao's avatar Junjie Cao Committed by Dmitry Torokhov
Browse files

Input: ti_am335x_tsc - clamp coordinate_readouts to DT maximum (6)



DT binding (ti,am3359-tsc.yaml) sets ti,coordinate-readouts to a
maximum of 6. The MFD parent also enforces that
(readouts * 2 + 2) + adc_channels <= 16 and fails probe if this
is violated, so the touchscreen subdriver will not even probe
in those cases.

Clamp coordinate_readouts > 6 to 6 in the subdriver to align with the
binding and keep behavior sane if invalid platform data bypasses schema
checks. Keep the existing default to 5 for non-positive values.

No functional change with valid DT.

Signed-off-by: default avatarJunjie Cao <junjie.cao@intel.com>
Link: https://patch.msgid.link/20251117032358.891822-1-junjie.cao@intel.com


Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent a311c777
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -389,6 +389,10 @@ static int titsc_parse_dt(struct platform_device *pdev,
		dev_warn(&pdev->dev,
			 "invalid co-ordinate readouts, resetting it to 5\n");
		ts_dev->coordinate_readouts = 5;
	} else if (ts_dev->coordinate_readouts > 6) {
		dev_warn(&pdev->dev,
			 "co-ordinate readouts too large, limiting to 6\n");
		ts_dev->coordinate_readouts = 6;
	}

	err = of_property_read_u32(node, "ti,charge-delay",