diff for duplicates of <74CDBE0F657A3D45AFBB94109FB122FF04B3279BEB@HQMAIL01.nvidia.com>
diff --git a/a/1.txt b/N1/1.txt
index 74f2abd..776126b 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,5 +1,5 @@
Linus Walleij wrote at Monday, August 29, 2011 5:09 AM:
-> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> wrote:
+> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren@nvidia.com> wrote:
>
> > diff --git a/drivers/of/of_pinmux.c b/drivers/of/of_pinmux.c
>
diff --git a/a/content_digest b/N1/content_digest
index 394beab..b4a5db4 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -8,10 +8,7 @@
"ref\0CACRpkdaTiWEtgjVOhUKeXhpiESvrWyz97p5j_PHe3MvEM4UaCw\@mail.gmail.com\0"
]
[
- "ref\0CACRpkdaTiWEtgjVOhUKeXhpiESvrWyz97p5j_PHe3MvEM4UaCw-JsoAwUIsXosN+BqQ9rBEUg\@public.gmane.org\0"
-]
-[
- "From\0Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA\@public.gmane.org>\0"
+ "From\0Stephen Warren <swarren\@nvidia.com>\0"
]
[
"Subject\0RE: [PATCH v3 10/13] of: add a generic pinmux helper\0"
@@ -20,23 +17,23 @@
"Date\0Mon, 29 Aug 2011 14:46:00 -0700\0"
]
[
- "To\0Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A\@public.gmane.org>\0"
+ "To\0Linus Walleij <linus.walleij\@linaro.org>\0"
]
[
- "Cc\0Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ\@public.gmane.org>",
- " Colin Cross <ccross-z5hGa2qSFaRBDgjK7y7TUQ\@public.gmane.org>",
- " Erik Gilling <konkers-z5hGa2qSFaRBDgjK7y7TUQ\@public.gmane.org>",
- " Olof Johansson <olof-nZhT3qVonbNeoWH0uzbU5w\@public.gmane.org>",
- " Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ\@public.gmane.org>",
- " Arnd Bergmann <arnd-r2nGTMty4D4\@public.gmane.org>",
- " devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ\@public.gmane.org <devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ\@public.gmane.org>",
- " linux-tegra-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org <linux-tegra-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org>",
- " linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r\@public.gmane.org <linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r\@public.gmane.org>",
- " linux-kernel-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org <linux-kernel-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org>",
- " Belisko Marek <marek.belisko-Re5JQEeQqe8AvxtiuMwx3w\@public.gmane.org>",
- " Jamie Iles <jamie-wmLquQDDieKakBO8gow8eQ\@public.gmane.org>",
- " Shawn Guo <shawn.guo-KZfg59tc24xl57MIdRCFDg\@public.gmane.org>",
- " Sergei Shtylyov <sshtylyov-Igf4POYTYCDQT0dZR+AlfA\@public.gmane.org>\0"
+ "Cc\0Grant Likely <grant.likely\@secretlab.ca>",
+ " Colin Cross <ccross\@android.com>",
+ " Erik Gilling <konkers\@android.com>",
+ " Olof Johansson <olof\@lixom.net>",
+ " Russell King <linux\@arm.linux.org.uk>",
+ " Arnd Bergmann <arnd\@arndb.de>",
+ " devicetree-discuss\@lists.ozlabs.org <devicetree-discuss\@lists.ozlabs.org>",
+ " linux-tegra\@vger.kernel.org <linux-tegra\@vger.kernel.org>",
+ " linux-arm-kernel\@lists.infradead.org <linux-arm-kernel\@lists.infradead.org>",
+ " linux-kernel\@vger.kernel.org <linux-kernel\@vger.kernel.org>",
+ " Belisko Marek <marek.belisko\@gmail.com>",
+ " Jamie Iles <jamie\@jamieiles.com>",
+ " Shawn Guo <shawn.guo\@freescale.com>",
+ " Sergei Shtylyov <sshtylyov\@mvista.com>\0"
]
[
"\0000:1\0"
@@ -46,7 +43,7 @@
]
[
"Linus Walleij wrote at Monday, August 29, 2011 5:09 AM:\n",
- "> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA\@public.gmane.org> wrote:\n",
+ "> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren\@nvidia.com> wrote:\n",
"> \n",
"> > diff --git a/drivers/of/of_pinmux.c b/drivers/of/of_pinmux.c\n",
"> \n",
@@ -186,4 +183,4 @@
"nvpublic"
]
-94c136132bf39dd17f6692c3d88421570924c772dd81f2aeb441b59a27ef244e
+23daf34bd896db29276ff21158b691a018ef2e23135d90da0735f75dcf4ef6d7
diff --git a/a/1.txt b/N2/1.txt
index 74f2abd..7e13b42 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -1,55 +1,55 @@
Linus Walleij wrote at Monday, August 29, 2011 5:09 AM:
-> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> wrote:
+> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren@nvidia.com> wrote:
>
> > diff --git a/drivers/of/of_pinmux.c b/drivers/of/of_pinmux.c
>
> > +int of_pinmux_parse(const struct of_pinmux_ctrl *ctrl,
-> > + struct of_pinmux_cfg *cfg)
+> > + ? ? ? ? ? ? ? ? ? struct of_pinmux_cfg *cfg)
>
> OK...
>
> > +{
-> > + struct device_node *np;
+> > + ? ? ? struct device_node *np;
> > +
-> > + if (!ctrl || !ctrl->dev || !ctrl->node || !ctrl->configure)
-> > + return -EINVAL;
+> > + ? ? ? if (!ctrl || !ctrl->dev || !ctrl->node || !ctrl->configure)
+> > + ? ? ? ? ? ? ? return -EINVAL;
> > +
-> > + for_each_child_of_node(ctrl->node, np) {
-> > + int ret;
-> > + bool hadpins = 0;
-> > + struct of_iter_string_prop iter;
+> > + ? ? ? for_each_child_of_node(ctrl->node, np) {
+> > + ? ? ? ? ? ? ? int ret;
+> > + ? ? ? ? ? ? ? bool hadpins = 0;
+> > + ? ? ? ? ? ? ? struct of_iter_string_prop iter;
> > +
-> > + cfg->node = np;
+> > + ? ? ? ? ? ? ? cfg->node = np;
> > +
-> > + ret = of_property_read_string(np, "function",
-> > + &cfg->function);
-> > + if (ret < 0) {
-> > + dev_err(ctrl->dev, "no function for node %s\n",
-> > + np->name);
-> > + continue;
-> > + }
+> > + ? ? ? ? ? ? ? ret = of_property_read_string(np, "function",
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? &cfg->function);
+> > + ? ? ? ? ? ? ? if (ret < 0) {
+> > + ? ? ? ? ? ? ? ? ? ? ? dev_err(ctrl->dev, "no function for node %s\n",
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? np->name);
+> > + ? ? ? ? ? ? ? ? ? ? ? continue;
+> > + ? ? ? ? ? ? ? }
>
> I buy this part.
>
> > +
-> > + cfg->flags &= 0;
+> > + ? ? ? ? ? ? ? cfg->flags &= 0;
> > +
-> > + if (of_find_property(np, "pull-up", NULL))
-> > + cfg->flags |= OF_PINMUX_PULL_UP;
-> > + if (of_find_property(np, "pull-down", NULL))
-> > + cfg->flags |= OF_PINMUX_PULL_DOWN;
+> > + ? ? ? ? ? ? ? if (of_find_property(np, "pull-up", NULL))
+> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags |= OF_PINMUX_PULL_UP;
+> > + ? ? ? ? ? ? ? if (of_find_property(np, "pull-down", NULL))
+> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags |= OF_PINMUX_PULL_DOWN;
> > +
-> > + if ((cfg->flags & OF_PINMUX_PULL_MASK) ==
-> > + OF_PINMUX_PULL_MASK) {
-> > + dev_warn(ctrl->dev, "node %s has both "
-> > + "pull-up and pull-down properties - "
-> > + "defaulting to no pull\n",
-> > + np->name);
-> > + cfg->flags &= ~OF_PINMUX_PULL_MASK;
-> > + }
+> > + ? ? ? ? ? ? ? if ((cfg->flags & OF_PINMUX_PULL_MASK) ==
+> > + ? ? ? ? ? ? ? ? ? OF_PINMUX_PULL_MASK) {
+> > + ? ? ? ? ? ? ? ? ? ? ? dev_warn(ctrl->dev, "node %s has both "
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?"pull-up and pull-down properties - "
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?"defaulting to no pull\n",
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?np->name);
+> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags &= ~OF_PINMUX_PULL_MASK;
+> > + ? ? ? ? ? ? ? }
> > +
-> > + if (of_find_property(np, "tristate", NULL))
-> > + cfg->flags |= OF_PINMUX_TRISTATE;
+> > + ? ? ? ? ? ? ? if (of_find_property(np, "tristate", NULL))
+> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags |= OF_PINMUX_TRISTATE;
>
> But what does this stuff has to do with pinmux?
>
@@ -58,26 +58,26 @@ Linus Walleij wrote at Monday, August 29, 2011 5:09 AM:
> If a broader, generic term is to be used, I'd prefer "pin control"
> which sort of nails the thing.
>
-> > + for_each_string_property_value(iter, np, "pins") {
-> > + hadpins = 1;
+> > + ? ? ? ? ? ? ? for_each_string_property_value(iter, np, "pins") {
+> > + ? ? ? ? ? ? ? ? ? ? ? hadpins = 1;
> > +
-> > + cfg->pin = iter.value;
+> > + ? ? ? ? ? ? ? ? ? ? ? cfg->pin = iter.value;
> > +
-> > + dev_dbg(ctrl->dev,
-> > + "configure pin %s func=%s flags=0x%lx\n",
-> > + cfg->pin, cfg->function, cfg->flags);
-> > + if (ctrl->configure(ctrl, cfg))
-> > + dev_warn(ctrl->dev,
-> > + "failed to configure pin %s\n",
-> > + cfg->pin);
-> > + }
+> > + ? ? ? ? ? ? ? ? ? ? ? dev_dbg(ctrl->dev,
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "configure pin %s func=%s flags=0x%lx\n",
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cfg->pin, cfg->function, cfg->flags);
+> > + ? ? ? ? ? ? ? ? ? ? ? if (ctrl->configure(ctrl, cfg))
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? dev_warn(ctrl->dev,
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?"failed to configure pin %s\n",
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cfg->pin);
+> > + ? ? ? ? ? ? ? }
> > +
-> > + if (!hadpins)
-> > + dev_warn(ctrl->dev, "no pins for node %s\n",
-> > + np->name);
-> > + }
+> > + ? ? ? ? ? ? ? if (!hadpins)
+> > + ? ? ? ? ? ? ? ? ? ? ? dev_warn(ctrl->dev, "no pins for node %s\n",
+> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?np->name);
+> > + ? ? ? }
> > +
-> > + return 0;
+> > + ? ? ? return 0;
> > +}
> > +EXPORT_SYMBOL_GPL(of_pinmux_parse);
>
@@ -90,10 +90,10 @@ select for each pingroup, so it's not just pinctrl either.
> > + * struct of_pinmux_cfg - configuration state for a single pinmux entry.
> > + *
> > + * @function: the name of the function that the pinmux entry should be
-> > + * configured to.
+> > + * ? ? configured to.
> > + * @pin: the device_node of the pinmux entry that should be configured.
-> > + * Platform specific properties that aren't in the generic binding may be
-> > + * obtained from this device node.
+> > + * ? ? Platform specific properties that aren't in the generic binding may be
+> > + * ? ? obtained from this device node.
> > + * @flags: flags for common pinmux options such as pull and tristate.
>
> I don't think these things has anything to do with pinmux at all.
@@ -102,10 +102,10 @@ select for each pingroup, so it's not just pinctrl either.
>
> > + */
> > +struct of_pinmux_cfg {
-> > + struct device_node *node;
-> > + const char *pin;
-> > + const char *function;
-> > + unsigned long flags;
+> > + ? ? ? struct device_node ? ? ?*node;
+> > + ? ? ? const char ? ? ? ? ? ? ?*pin;
+> > + ? ? ? const char ? ? ? ? ? ? ?*function;
+> > + ? ? ? unsigned long ? ? ? ? ? flags;
> > +};
>
> The current pinctrl patch set would probably want an unsigned
diff --git a/a/content_digest b/N2/content_digest
index 394beab..b032afc 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -8,35 +8,16 @@
"ref\0CACRpkdaTiWEtgjVOhUKeXhpiESvrWyz97p5j_PHe3MvEM4UaCw\@mail.gmail.com\0"
]
[
- "ref\0CACRpkdaTiWEtgjVOhUKeXhpiESvrWyz97p5j_PHe3MvEM4UaCw-JsoAwUIsXosN+BqQ9rBEUg\@public.gmane.org\0"
+ "From\0swarren\@nvidia.com (Stephen Warren)\0"
]
[
- "From\0Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA\@public.gmane.org>\0"
-]
-[
- "Subject\0RE: [PATCH v3 10/13] of: add a generic pinmux helper\0"
+ "Subject\0[PATCH v3 10/13] of: add a generic pinmux helper\0"
]
[
"Date\0Mon, 29 Aug 2011 14:46:00 -0700\0"
]
[
- "To\0Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A\@public.gmane.org>\0"
-]
-[
- "Cc\0Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ\@public.gmane.org>",
- " Colin Cross <ccross-z5hGa2qSFaRBDgjK7y7TUQ\@public.gmane.org>",
- " Erik Gilling <konkers-z5hGa2qSFaRBDgjK7y7TUQ\@public.gmane.org>",
- " Olof Johansson <olof-nZhT3qVonbNeoWH0uzbU5w\@public.gmane.org>",
- " Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ\@public.gmane.org>",
- " Arnd Bergmann <arnd-r2nGTMty4D4\@public.gmane.org>",
- " devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ\@public.gmane.org <devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ\@public.gmane.org>",
- " linux-tegra-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org <linux-tegra-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org>",
- " linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r\@public.gmane.org <linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r\@public.gmane.org>",
- " linux-kernel-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org <linux-kernel-u79uwXL29TY76Z2rM5mHXA\@public.gmane.org>",
- " Belisko Marek <marek.belisko-Re5JQEeQqe8AvxtiuMwx3w\@public.gmane.org>",
- " Jamie Iles <jamie-wmLquQDDieKakBO8gow8eQ\@public.gmane.org>",
- " Shawn Guo <shawn.guo-KZfg59tc24xl57MIdRCFDg\@public.gmane.org>",
- " Sergei Shtylyov <sshtylyov-Igf4POYTYCDQT0dZR+AlfA\@public.gmane.org>\0"
+ "To\0linux-arm-kernel\@lists.infradead.org\0"
]
[
"\0000:1\0"
@@ -46,57 +27,57 @@
]
[
"Linus Walleij wrote at Monday, August 29, 2011 5:09 AM:\n",
- "> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA\@public.gmane.org> wrote:\n",
+ "> On Fri, Aug 26, 2011 at 1:43 AM, Stephen Warren <swarren\@nvidia.com> wrote:\n",
"> \n",
"> > diff --git a/drivers/of/of_pinmux.c b/drivers/of/of_pinmux.c\n",
"> \n",
"> > +int of_pinmux_parse(const struct of_pinmux_ctrl *ctrl,\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 struct of_pinmux_cfg *cfg)\n",
+ "> > + ? ? ? ? ? ? ? ? ? struct of_pinmux_cfg *cfg)\n",
"> \n",
"> OK...\n",
"> \n",
"> > +{\n",
- "> > + \302\240 \302\240 \302\240 struct device_node *np;\n",
+ "> > + ? ? ? struct device_node *np;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 if (!ctrl || !ctrl->dev || !ctrl->node || !ctrl->configure)\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 return -EINVAL;\n",
+ "> > + ? ? ? if (!ctrl || !ctrl->dev || !ctrl->node || !ctrl->configure)\n",
+ "> > + ? ? ? ? ? ? ? return -EINVAL;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 for_each_child_of_node(ctrl->node, np) {\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 int ret;\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 bool hadpins = 0;\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 struct of_iter_string_prop iter;\n",
+ "> > + ? ? ? for_each_child_of_node(ctrl->node, np) {\n",
+ "> > + ? ? ? ? ? ? ? int ret;\n",
+ "> > + ? ? ? ? ? ? ? bool hadpins = 0;\n",
+ "> > + ? ? ? ? ? ? ? struct of_iter_string_prop iter;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->node = np;\n",
+ "> > + ? ? ? ? ? ? ? cfg->node = np;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 ret = of_property_read_string(np, \"function\",\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 &cfg->function);\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (ret < 0) {\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 dev_err(ctrl->dev, \"no function for node %s\\n\",\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 np->name);\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 continue;\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 }\n",
+ "> > + ? ? ? ? ? ? ? ret = of_property_read_string(np, \"function\",\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? &cfg->function);\n",
+ "> > + ? ? ? ? ? ? ? if (ret < 0) {\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? dev_err(ctrl->dev, \"no function for node %s\\n\",\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? np->name);\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? continue;\n",
+ "> > + ? ? ? ? ? ? ? }\n",
"> \n",
"> I buy this part.\n",
"> \n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->flags &= 0;\n",
+ "> > + ? ? ? ? ? ? ? cfg->flags &= 0;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (of_find_property(np, \"pull-up\", NULL))\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->flags |= OF_PINMUX_PULL_UP;\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (of_find_property(np, \"pull-down\", NULL))\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->flags |= OF_PINMUX_PULL_DOWN;\n",
+ "> > + ? ? ? ? ? ? ? if (of_find_property(np, \"pull-up\", NULL))\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags |= OF_PINMUX_PULL_UP;\n",
+ "> > + ? ? ? ? ? ? ? if (of_find_property(np, \"pull-down\", NULL))\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags |= OF_PINMUX_PULL_DOWN;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if ((cfg->flags & OF_PINMUX_PULL_MASK) ==\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 OF_PINMUX_PULL_MASK) {\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 dev_warn(ctrl->dev, \"node %s has both \"\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\"pull-up and pull-down properties - \"\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\"defaulting to no pull\\n\",\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240np->name);\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->flags &= ~OF_PINMUX_PULL_MASK;\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 }\n",
+ "> > + ? ? ? ? ? ? ? if ((cfg->flags & OF_PINMUX_PULL_MASK) ==\n",
+ "> > + ? ? ? ? ? ? ? ? ? OF_PINMUX_PULL_MASK) {\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? dev_warn(ctrl->dev, \"node %s has both \"\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\"pull-up and pull-down properties - \"\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\"defaulting to no pull\\n\",\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?np->name);\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags &= ~OF_PINMUX_PULL_MASK;\n",
+ "> > + ? ? ? ? ? ? ? }\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (of_find_property(np, \"tristate\", NULL))\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->flags |= OF_PINMUX_TRISTATE;\n",
+ "> > + ? ? ? ? ? ? ? if (of_find_property(np, \"tristate\", NULL))\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? cfg->flags |= OF_PINMUX_TRISTATE;\n",
"> \n",
"> But what does this stuff has to do with pinmux?\n",
"> \n",
@@ -105,26 +86,26 @@
"> If a broader, generic term is to be used, I'd prefer \"pin control\"\n",
"> which sort of nails the thing.\n",
"> \n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 for_each_string_property_value(iter, np, \"pins\") {\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 hadpins = 1;\n",
+ "> > + ? ? ? ? ? ? ? for_each_string_property_value(iter, np, \"pins\") {\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? hadpins = 1;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->pin = iter.value;\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? cfg->pin = iter.value;\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 dev_dbg(ctrl->dev,\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \"configure pin %s func=%s flags=0x%lx\\n\",\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 cfg->pin, cfg->function, cfg->flags);\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (ctrl->configure(ctrl, cfg))\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 dev_warn(ctrl->dev,\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\"failed to configure pin %s\\n\",\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240cfg->pin);\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 }\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? dev_dbg(ctrl->dev,\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? \"configure pin %s func=%s flags=0x%lx\\n\",\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cfg->pin, cfg->function, cfg->flags);\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? if (ctrl->configure(ctrl, cfg))\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? dev_warn(ctrl->dev,\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\"failed to configure pin %s\\n\",\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cfg->pin);\n",
+ "> > + ? ? ? ? ? ? ? }\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (!hadpins)\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 dev_warn(ctrl->dev, \"no pins for node %s\\n\",\n",
- "> > + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240np->name);\n",
- "> > + \302\240 \302\240 \302\240 }\n",
+ "> > + ? ? ? ? ? ? ? if (!hadpins)\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? dev_warn(ctrl->dev, \"no pins for node %s\\n\",\n",
+ "> > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?np->name);\n",
+ "> > + ? ? ? }\n",
"> > +\n",
- "> > + \302\240 \302\240 \302\240 return 0;\n",
+ "> > + ? ? ? return 0;\n",
"> > +}\n",
"> > +EXPORT_SYMBOL_GPL(of_pinmux_parse);\n",
"> \n",
@@ -137,10 +118,10 @@
"> > + * struct of_pinmux_cfg - configuration state for a single pinmux entry.\n",
"> > + *\n",
"> > + * \@function: the name of the function that the pinmux entry should be\n",
- "> > + * \302\240 \302\240 configured to.\n",
+ "> > + * ? ? configured to.\n",
"> > + * \@pin: the device_node of the pinmux entry that should be configured.\n",
- "> > + * \302\240 \302\240 Platform specific properties that aren't in the generic binding may be\n",
- "> > + * \302\240 \302\240 obtained from this device node.\n",
+ "> > + * ? ? Platform specific properties that aren't in the generic binding may be\n",
+ "> > + * ? ? obtained from this device node.\n",
"> > + * \@flags: flags for common pinmux options such as pull and tristate.\n",
"> \n",
"> I don't think these things has anything to do with pinmux at all.\n",
@@ -149,10 +130,10 @@
"> \n",
"> > + */\n",
"> > +struct of_pinmux_cfg {\n",
- "> > + \302\240 \302\240 \302\240 struct device_node \302\240 \302\240 \302\240*node;\n",
- "> > + \302\240 \302\240 \302\240 const char \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240*pin;\n",
- "> > + \302\240 \302\240 \302\240 const char \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240*function;\n",
- "> > + \302\240 \302\240 \302\240 unsigned long \302\240 \302\240 \302\240 \302\240 \302\240 flags;\n",
+ "> > + ? ? ? struct device_node ? ? ?*node;\n",
+ "> > + ? ? ? const char ? ? ? ? ? ? ?*pin;\n",
+ "> > + ? ? ? const char ? ? ? ? ? ? ?*function;\n",
+ "> > + ? ? ? unsigned long ? ? ? ? ? flags;\n",
"> > +};\n",
"> \n",
"> The current pinctrl patch set would probably want an unsigned\n",
@@ -186,4 +167,4 @@
"nvpublic"
]
-94c136132bf39dd17f6692c3d88421570924c772dd81f2aeb441b59a27ef244e
+ebce1d700dcb72b50426b11ab77cd7efd71ef5d8e9d1b3fbb674bfdb4ea6e195
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.