Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1532771 > unrolled thread
| Started by | Dmitry Torokhov <dmitry.torokhov@gmail.com> |
|---|---|
| First post | 2016-11-29 22:10 +0100 |
| Last post | 2016-11-29 22:10 +0100 |
| Articles | 1 — 1 participant |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH v2 2/3] Input: ti_am335x_tsc: Add support for ti,charge-delay-ns Dmitry Torokhov <dmitry.torokhov@gmail.com> - 2016-11-29 22:10 +0100
| From | Dmitry Torokhov <dmitry.torokhov@gmail.com> |
|---|---|
| Date | 2016-11-29 22:10 +0100 |
| Subject | Re: [PATCH v2 2/3] Input: ti_am335x_tsc: Add support for ti,charge-delay-ns |
| Message-ID | <sIXP4-5gZ-3@gated-at.bofh.it> |
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@ti.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
> ---
> 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
Back to top | Article view | linux.kernel
csiph-web