On Fri, Nov 11, 2016 at 01:28:19PM +0530, Mugunthan V N wrote: > ti,charge-delay will be deprecated as it represents number of > clock cycles and the DT entries are done in assumption of 3MHz > TSCADC clock, but clock can be set upto 24MHz. So driver add > support for ti,charge-delay-ns and do not drop support for > ti,charge-delay to support old dtbs and it will be assumed that > it is for 3MHz TSCADC clock and will be calculated as per current > clock speed. > > Signed-off-by: Mugunthan V N <mugunthanvnm@xxxxxx> Acked-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> > --- > drivers/input/touchscreen/ti_am335x_tsc.c | 31 +++++++++++++++++++++++-------- > 1 file changed, 23 insertions(+), 8 deletions(-) > > diff --git a/drivers/input/touchscreen/ti_am335x_tsc.c b/drivers/input/touchscreen/ti_am335x_tsc.c > index 7953381d939a..104b3640f728 100644 > --- a/drivers/input/touchscreen/ti_am335x_tsc.c > +++ b/drivers/input/touchscreen/ti_am335x_tsc.c > @@ -379,15 +379,30 @@ static int titsc_parse_dt(struct platform_device *pdev, > ts_dev->coordinate_readouts = 5; > } > > - err = of_property_read_u32(node, "ti,charge-delay", > + err = of_property_read_u32(node, "ti,charge-delay-ns", > &ts_dev->charge_delay); > - /* > - * If ti,charge-delay value is not specified, then use > - * CHARGEDLY_OPENDLY as the default value. > - */ > - if (err < 0) { > - ts_dev->charge_delay = CHARGEDLY_OPENDLY; > - dev_warn(&pdev->dev, "ti,charge-delay not specified\n"); > + if (err >= 0) { > + u64 charge_delay = ts_dev->charge_delay; > + > + charge_delay *= ADC_CLK; > + do_div(charge_delay, 1E9); > + ts_dev->charge_delay = (u32)charge_delay; > + } else { > + err = of_property_read_u32(node, "ti,charge-delay", > + &ts_dev->charge_delay); > + /* > + * If ti,charge-delay value is not specified, then use > + * CHARGEDLY_OPENDLY as the default value. > + */ > + if (err < 0) { > + ts_dev->charge_delay = CHARGEDLY_OPENDLY; > + dev_warn(&pdev->dev, "ti,charge-delay not specified\n"); > + } > + /* > + * ti,charge-delay is specified with referrence to 3MHz, > + * so convert it to in referrence to current clock > + */ > + ts_dev->charge_delay *= ADC_CLK / 3000000; > } > > return of_property_read_u32_array(node, "ti,wire-config", > -- > 2.11.0.rc0.7.gbe5a750 > -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html