From: "Heiko Stübner" <heiko@sntech.de>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Henrik Rydberg <rydberg@euromail.se>,
linux-input@vger.kernel.org,
Rob Herring <rob.herring@calxeda.com>,
Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Stephen Warren <swarren@wwwdotorg.org>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
devicetree@vger.kernel.org
Subject: Re: [PATCH] input: zforce: add regulator handling
Date: Fri, 23 May 2014 09:51:43 +0200 [thread overview]
Message-ID: <6176359.OyJRL3GZkq@phil> (raw)
In-Reply-To: <60795928.lIAcBxC0Ao@phil>
Hi Dmitry,
Am Dienstag, 22. April 2014, 21:19:57 schrieb Heiko Stübner:
> From: Heiko Stuebner <heiko.stuebner@bq.com>
>
> It's possible that the controller has an individually switchable power
> supply. Therefore add support to control a supplying regulator.
>
> As this is not always the case, the regulator is requested as optional.
>
> Signed-off-by: Heiko Stuebner <heiko.stuebner@bq.com>
ping?
Thanks
Heiko
> ---
> .../bindings/input/touchscreen/zforce_ts.txt | 4 +++
> drivers/input/touchscreen/zforce_ts.c | 30
> ++++++++++++++++++++++ 2 files changed, 34 insertions(+)
>
> diff --git
> a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> b/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt index
> 2faf1f1..80c37df 100644
> --- a/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> +++ b/Documentation/devicetree/bindings/input/touchscreen/zforce_ts.txt
> @@ -9,6 +9,9 @@ Required properties:
> - x-size: horizontal resolution of touchscreen
> - y-size: vertical resolution of touchscreen
>
> +Optional properties:
> +- vdd-supply: Regulator controlling the controller supply
> +
> Example:
>
> i2c@00000000 {
> @@ -18,6 +21,7 @@ Example:
> compatible = "neonode,zforce";
> reg = <0x50>;
> interrupts = <2 0>;
> + vdd-supply = <®_zforce_vdd>;
>
> gpios = <&gpio5 6 0>, /* INT */
> <&gpio5 9 0>; /* RST */
> diff --git a/drivers/input/touchscreen/zforce_ts.c
> b/drivers/input/touchscreen/zforce_ts.c index 01d30ce..39ca962 100644
> --- a/drivers/input/touchscreen/zforce_ts.c
> +++ b/drivers/input/touchscreen/zforce_ts.c
> @@ -29,6 +29,8 @@
> #include <linux/sysfs.h>
> #include <linux/input/mt.h>
> #include <linux/platform_data/zforce_ts.h>
> +#include <linux/regulator/consumer.h>
> +#include <linux/delay.h>
> #include <linux/of.h>
> #include <linux/of_gpio.h>
>
> @@ -117,6 +119,8 @@ struct zforce_ts {
> const struct zforce_ts_platdata *pdata;
> char phys[32];
>
> + struct regulator *reg_vdd;
> +
> bool suspending;
> bool suspended;
> bool boot_complete;
> @@ -690,6 +694,11 @@ static void zforce_reset(void *data)
> struct zforce_ts *ts = data;
>
> gpio_set_value(ts->pdata->gpio_rst, 0);
> +
> + udelay(10);
> +
> + if (!IS_ERR(ts->reg_vdd))
> + regulator_disable(ts->reg_vdd);
> }
>
> static struct zforce_ts_platdata *zforce_parse_dt(struct device *dev)
> @@ -765,10 +774,31 @@ static int zforce_probe(struct i2c_client *client,
> return ret;
> }
>
> + ts->reg_vdd = devm_regulator_get_optional(&client->dev, "vdd");
> + if (IS_ERR(ts->reg_vdd) && PTR_ERR(ts->reg_vdd) == -EPROBE_DEFER)
> + return PTR_ERR(ts->reg_vdd);
> +
> + if (!IS_ERR(ts->reg_vdd)) {
> + ret = regulator_enable(ts->reg_vdd);
> + if (ret)
> + return ret;
> +
> + /*
> + * according to datasheet add 100us grace time after regular
> + * regulator enable delay.
> + */
> + udelay(100);
> + }
> +
> ret = devm_add_action(&client->dev, zforce_reset, ts);
> if (ret) {
> dev_err(&client->dev, "failed to register reset action, %d\n",
> ret);
> +
> + /* hereafter the regulator will be disabled by the action */
> + if (!IS_ERR(ts->reg_vdd))
> + regulator_disable(ts->reg_vdd);
> +
> return ret;
> }
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2014-05-23 7:51 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-09 21:19 [PATCH 0/3] Input: add dt support to zforce driver Heiko Stübner
2014-01-09 21:21 ` [PATCH 1/3] dt-bindings: bindings for zforce touchscreens Heiko Stübner
2014-01-09 21:21 ` [PATCH 2/3] Input: zforce: Use internal pdata pointer instead of dev_get_platdata Heiko Stübner
2014-01-09 21:22 ` [PATCH 3/3] Input: zforce: add devicetree support Heiko Stübner
2014-01-28 6:45 ` [PATCH 0/3] Input: add dt support to zforce driver Dmitry Torokhov
2014-04-22 19:19 ` [PATCH] input: zforce: add regulator handling Heiko Stübner
2014-05-23 7:51 ` Heiko Stübner [this message]
2014-07-21 15:20 ` [PATCH RESEND] " Heiko Stübner
2014-07-21 17:42 ` Dmitry Torokhov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6176359.OyJRL3GZkq@phil \
--to=heiko@sntech.de \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=ijc+devicetree@hellion.org.uk \
--cc=linux-input@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=pawel.moll@arm.com \
--cc=rob.herring@calxeda.com \
--cc=rydberg@euromail.se \
--cc=swarren@wwwdotorg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.