All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20150417020048.GA27174@deathray>

diff --git a/a/1.txt b/N1/1.txt
index 0085309..8e475cd 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -5,7 +5,7 @@ On Fri, Apr 17, 2015 at 01:23:50AM +0200, Sebastian Hesselbarth wrote:
 > >>>On Thu, Apr 16, 2015 at 07:32:32AM +0300, Tero Kristo wrote:
 > >>>>On 04/15/2015 11:51 PM, Michael Welling wrote:
 > >>>>>On Wed, Apr 15, 2015 at 01:45:53PM -0700, Mike Turquette wrote:
-> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling-EkmVulN54Sk@public.gmane.org> wrote:
+> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling@ieee.org> wrote:
 > >>[...]
 > >>>>>>>There is still an issue with the si5351.
 > >>>>>>>
@@ -82,7 +82,7 @@ testing. I may have to solder a new chip on there.
 Could misconfiguration damage the chip?
 
 > 
-> >root@som3517-som200:~# cat /sys/kernel/debug/clk/clk_summary
+> >root at som3517-som200:~# cat /sys/kernel/debug/clk/clk_summary
 > >    clock                         enable_cnt  prepare_cnt        rate   accuracy   phase
 > >----------------------------------------------------------------------------------------
 > >  ref27                                    0            0    27000000          0 0
@@ -203,3 +203,10 @@ hackish utilities.
 
 > 
 > Sebastian
+-------------- next part --------------
+A non-text attachment was scrubbed...
+Name: clk-si5351.patch
+Type: text/x-diff
+Size: 10324 bytes
+Desc: not available
+URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150416/a90fd0ac/attachment.bin>
diff --git a/a/2.hdr b/a/2.hdr
deleted file mode 100644
index 98273ff..0000000
--- a/a/2.hdr
+++ /dev/null
@@ -1,2 +0,0 @@
-Content-Type: text/x-diff; charset=us-ascii
-Content-Disposition: attachment; filename="clk-si5351.patch"
diff --git a/a/2.txt b/a/2.txt
deleted file mode 100644
index dadc2b5..0000000
--- a/a/2.txt
+++ /dev/null
@@ -1,371 +0,0 @@
-diff --git a/drivers/clk/clk-si5351.c b/drivers/clk/clk-si5351.c
-index 3b2a66f..e0da91d 100644
---- a/drivers/clk/clk-si5351.c
-+++ b/drivers/clk/clk-si5351.c
-@@ -1120,6 +1120,7 @@ static int si5351_dt_parse(struct i2c_client *client,
- 	const __be32 *p;
- 	int num = 0;
- 	u32 val;
-+	int ret;
- 
- 	if (np == NULL)
- 		return 0;
-@@ -1129,11 +1130,21 @@ static int si5351_dt_parse(struct i2c_client *client,
- 		return -ENOMEM;
- 
- 	pdata->clk_xtal = of_clk_get(np, 0);
--	if (!IS_ERR(pdata->clk_xtal))
--		clk_put(pdata->clk_xtal);
--	pdata->clk_clkin = of_clk_get(np, 1);
--	if (!IS_ERR(pdata->clk_clkin))
--		clk_put(pdata->clk_clkin);
-+	if (IS_ERR(pdata->clk_xtal)) {
-+		dev_err(&client->dev,
-+			"xtal clock not speficied\n");
-+		return -ENODEV;
-+	}
-+
-+	if (variant == SI5351_VARIANT_C) {
-+		pdata->clk_clkin = of_clk_get(np, 1);
-+		if (IS_ERR(pdata->clk_clkin)) {
-+			dev_err(&client->dev,
-+				"clkin clock not speficied\n");
-+			ret = -ENODEV;
-+			goto err_put_clk_of;
-+		}
-+	}
- 
- 	/*
- 	 * property silabs,pll-source : <num src>, [<..>]
-@@ -1143,14 +1154,16 @@ static int si5351_dt_parse(struct i2c_client *client,
- 		if (num >= 2) {
- 			dev_err(&client->dev,
- 				"invalid pll %d on pll-source prop\n", num);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk_of;
- 		}
- 
- 		p = of_prop_next_u32(prop, p, &val);
- 		if (!p) {
- 			dev_err(&client->dev,
- 				"missing pll-source for pll %d\n", num);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk_of;
- 		}
- 
- 		switch (val) {
-@@ -1162,14 +1175,16 @@ static int si5351_dt_parse(struct i2c_client *client,
- 				dev_err(&client->dev,
- 					"invalid parent %d for pll %d\n",
- 					val, num);
--				return -EINVAL;
-+				ret = -EINVAL;
-+				goto err_put_clk_of;
- 			}
- 			pdata->pll_src[num] = SI5351_PLL_SRC_CLKIN;
- 			break;
- 		default:
- 			dev_err(&client->dev,
- 				 "invalid parent %d for pll %d\n", val, num);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk_of;
- 		}
- 	}
- 
-@@ -1178,13 +1193,15 @@ static int si5351_dt_parse(struct i2c_client *client,
- 		if (of_property_read_u32(child, "reg", &num)) {
- 			dev_err(&client->dev, "missing reg property of %s\n",
- 				child->name);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk_of;
- 		}
- 
- 		if (num >= 8 ||
- 		    (variant == SI5351_VARIANT_A3 && num >= 3)) {
- 			dev_err(&client->dev, "invalid clkout %d\n", num);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk_of;
- 		}
- 
- 		if (!of_property_read_u32(child, "silabs,multisynth-source",
-@@ -1202,7 +1219,8 @@ static int si5351_dt_parse(struct i2c_client *client,
- 				dev_err(&client->dev,
- 					"invalid parent %d for multisynth %d\n",
- 					val, num);
--				return -EINVAL;
-+				ret = -EINVAL;
-+				goto err_put_clk_of;
- 			}
- 		}
- 
-@@ -1225,7 +1243,8 @@ static int si5351_dt_parse(struct i2c_client *client,
- 					dev_err(&client->dev,
- 						"invalid parent %d for clkout %d\n",
- 						val, num);
--					return -EINVAL;
-+					ret = -EINVAL;
-+					goto err_put_clk_of;
- 				}
- 				pdata->clkout[num].clkout_src =
- 					SI5351_CLKOUT_SRC_CLKIN;
-@@ -1234,7 +1253,8 @@ static int si5351_dt_parse(struct i2c_client *client,
- 				dev_err(&client->dev,
- 					"invalid parent %d for clkout %d\n",
- 					val, num);
--				return -EINVAL;
-+				ret = -EINVAL;
-+				goto err_put_clk_of;
- 			}
- 		}
- 
-@@ -1251,7 +1271,8 @@ static int si5351_dt_parse(struct i2c_client *client,
- 				dev_err(&client->dev,
- 					"invalid drive strength %d for clkout %d\n",
- 					val, num);
--				return -EINVAL;
-+				ret = -EINVAL;
-+				goto err_put_clk_of;
- 			}
- 		}
- 
-@@ -1278,7 +1299,8 @@ static int si5351_dt_parse(struct i2c_client *client,
- 				dev_err(&client->dev,
- 					"invalid disable state %d for clkout %d\n",
- 					val, num);
--				return -EINVAL;
-+				ret = -EINVAL;
-+				goto err_put_clk_of;
- 			}
- 		}
- 
-@@ -1291,9 +1313,18 @@ static int si5351_dt_parse(struct i2c_client *client,
- 	client->dev.platform_data = pdata;
- 
- 	return 0;
-+
-+err_put_clk_of:
-+	if (!IS_ERR(pdata->clk_xtal))
-+		clk_put(pdata->clk_xtal);
-+	if (IS_ERR(pdata->clk_clkin))
-+		clk_put(pdata->clk_clkin);
-+
-+	return ret;
- }
- #else
--static int si5351_dt_parse(struct i2c_client *client, enum si5351_variant variant)
-+static int si5351_dt_parse(struct i2c_client *client,
-+		enum si5351_variant variant)
- {
- 	return 0;
- }
-@@ -1322,7 +1353,8 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 	drvdata = devm_kzalloc(&client->dev, sizeof(*drvdata), GFP_KERNEL);
- 	if (drvdata == NULL) {
- 		dev_err(&client->dev, "unable to allocate driver data\n");
--		return -ENOMEM;
-+		ret = -ENOMEM;
-+		goto err_put_clk;
- 	}
- 
- 	i2c_set_clientdata(client, drvdata);
-@@ -1334,7 +1366,8 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 	drvdata->regmap = devm_regmap_init_i2c(client, &si5351_regmap_config);
- 	if (IS_ERR(drvdata->regmap)) {
- 		dev_err(&client->dev, "failed to allocate register map\n");
--		return PTR_ERR(drvdata->regmap);
-+		ret = PTR_ERR(drvdata->regmap);
-+		goto err_put_clk;
- 	}
- 
- 	/* Disable interrupts */
-@@ -1351,7 +1384,7 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 			dev_err(&client->dev,
- 				"failed to reparent pll %d to %d\n",
- 				n, pdata->pll_src[n]);
--			return ret;
-+			goto err_put_clk;
- 		}
- 	}
- 
-@@ -1362,7 +1395,7 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 			dev_err(&client->dev,
- 				"failed to reparent multisynth %d to %d\n",
- 				n, pdata->clkout[n].multisynth_src);
--			return ret;
-+			goto err_put_clk;
- 		}
- 
- 		ret = _si5351_clkout_reparent(drvdata, n,
-@@ -1371,7 +1404,7 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 			dev_err(&client->dev,
- 				"failed to reparent clkout %d to %d\n",
- 				n, pdata->clkout[n].clkout_src);
--			return ret;
-+			goto err_put_clk;
- 		}
- 
- 		ret = _si5351_clkout_set_drive_strength(drvdata, n,
-@@ -1380,7 +1413,7 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 			dev_err(&client->dev,
- 				"failed set drive strength of clkout%d to %d\n",
- 				n, pdata->clkout[n].drive);
--			return ret;
-+			goto err_put_clk;
- 		}
- 
- 		ret = _si5351_clkout_set_disable_state(drvdata, n,
-@@ -1389,7 +1422,7 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 			dev_err(&client->dev,
- 				"failed set disable state of clkout%d to %d\n",
- 				n, pdata->clkout[n].disable_state);
--			return ret;
-+			goto err_put_clk;
- 		}
- 	}
- 
-@@ -1398,16 +1431,16 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 	init.name = si5351_input_names[0];
- 	init.ops = &si5351_xtal_ops;
- 	init.flags = 0;
--	if (!IS_ERR(drvdata->pxtal)) {
--		drvdata->pxtal_name = __clk_get_name(drvdata->pxtal);
--		init.parent_names = &drvdata->pxtal_name;
--		init.num_parents = 1;
--	}
-+	drvdata->pxtal_name = __clk_get_name(drvdata->pxtal);
-+	init.parent_names = &drvdata->pxtal_name;
-+	init.num_parents = 1;
-+
- 	drvdata->xtal.init = &init;
- 	clk = devm_clk_register(&client->dev, &drvdata->xtal);
- 	if (IS_ERR(clk)) {
- 		dev_err(&client->dev, "unable to register %s\n", init.name);
--		return PTR_ERR(clk);
-+		ret = PTR_ERR(clk);
-+		goto err_put_clk;
- 	}
- 
- 	/* register clkin input clock gate */
-@@ -1415,17 +1448,17 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 		memset(&init, 0, sizeof(init));
- 		init.name = si5351_input_names[1];
- 		init.ops = &si5351_clkin_ops;
--		if (!IS_ERR(drvdata->pclkin)) {
--			drvdata->pclkin_name = __clk_get_name(drvdata->pclkin);
--			init.parent_names = &drvdata->pclkin_name;
--			init.num_parents = 1;
--		}
-+		drvdata->pclkin_name = __clk_get_name(drvdata->pclkin);
-+		init.parent_names = &drvdata->pclkin_name;
-+		init.num_parents = 1;
-+
- 		drvdata->clkin.init = &init;
- 		clk = devm_clk_register(&client->dev, &drvdata->clkin);
- 		if (IS_ERR(clk)) {
- 			dev_err(&client->dev, "unable to register %s\n",
- 				init.name);
--			return PTR_ERR(clk);
-+			ret = PTR_ERR(clk);
-+			goto err_put_clk;
- 		}
- 	}
- 
-@@ -1447,7 +1480,8 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 	clk = devm_clk_register(&client->dev, &drvdata->pll[0].hw);
- 	if (IS_ERR(clk)) {
- 		dev_err(&client->dev, "unable to register %s\n", init.name);
--		return -EINVAL;
-+		ret = -EINVAL;
-+		goto err_put_clk;
- 	}
- 
- 	/* register PLLB or VXCO (Si5351B) */
-@@ -1471,7 +1505,8 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 	clk = devm_clk_register(&client->dev, &drvdata->pll[1].hw);
- 	if (IS_ERR(clk)) {
- 		dev_err(&client->dev, "unable to register %s\n", init.name);
--		return -EINVAL;
-+		ret = -EINVAL;
-+		goto err_put_clk;
- 	}
- 
- 	/* register clk multisync and clk out divider */
-@@ -1492,8 +1527,10 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 		num_clocks * sizeof(*drvdata->onecell.clks), GFP_KERNEL);
- 
- 	if (WARN_ON(!drvdata->msynth || !drvdata->clkout ||
--		    !drvdata->onecell.clks))
--		return -ENOMEM;
-+		    !drvdata->onecell.clks)) {
-+		ret = -ENOMEM;
-+		goto err_put_clk;
-+	}
- 
- 	for (n = 0; n < num_clocks; n++) {
- 		drvdata->msynth[n].num = n;
-@@ -1511,7 +1548,8 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 		if (IS_ERR(clk)) {
- 			dev_err(&client->dev, "unable to register %s\n",
- 				init.name);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk;
- 		}
- 	}
- 
-@@ -1538,7 +1576,8 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 		if (IS_ERR(clk)) {
- 			dev_err(&client->dev, "unable to register %s\n",
- 				init.name);
--			return -EINVAL;
-+			ret = -EINVAL;
-+			goto err_put_clk;
- 		}
- 		drvdata->onecell.clks[n] = clk;
- 
-@@ -1557,9 +1596,31 @@ static int si5351_i2c_probe(struct i2c_client *client,
- 				  &drvdata->onecell);
- 	if (ret) {
- 		dev_err(&client->dev, "unable to add clk provider\n");
--		return ret;
-+		goto err_put_clk;
-+	}
-+
-+	return 0;
-+
-+err_put_clk:
-+	if (pdata) {
-+		if (!IS_ERR(pdata->clk_xtal))
-+			clk_put(pdata->clk_xtal);
-+		if (!IS_ERR(pdata->clk_clkin))
-+			clk_put(pdata->clk_clkin);
- 	}
- 
-+	return ret;
-+}
-+
-+int si5351_i2c_remove(struct i2c_client *client)
-+{
-+	struct si5351_driver_data *drvdata = i2c_get_clientdata(client);
-+
-+	of_clk_del_provider(client->dev.of_node);
-+	clk_put(drvdata->pxtal);
-+	if (drvdata->variant == SI5351_VARIANT_C)
-+		clk_put(drvdata->pclkin);
-+
- 	return 0;
- }
- 
-@@ -1578,6 +1639,7 @@ static struct i2c_driver si5351_driver = {
- 		.of_match_table = of_match_ptr(si5351_dt_ids),
- 	},
- 	.probe = si5351_i2c_probe,
-+	.remove = si5351_i2c_remove,
- 	.id_table = si5351_i2c_ids,
- };
- module_i2c_driver(si5351_driver);
diff --git a/a/content_digest b/N1/content_digest
index 85c8a41..ca9cbde 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -8,28 +8,11 @@
  "ref\055301D7F.30708@gmail.com\0"
  "ref\020150416220918.GA6057@deathray\0"
  "ref\055304486.5020404@gmail.com\0"
- "ref\055304486.5020404-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org\0"
- "From\0Michael Welling <mwelling-EkmVulN54Sk@public.gmane.org>\0"
- "Subject\0Re: AM335x OMAP2 common clock external fixed-clock registration\0"
+ "From\0mwelling@ieee.org (Michael Welling)\0"
+ "Subject\0AM335x OMAP2 common clock external fixed-clock registration\0"
  "Date\0Thu, 16 Apr 2015 21:00:48 -0500\0"
- "To\0Sebastian Hesselbarth <sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>\0"
- "Cc\0Tero Kristo <t-kristo-l0cyMroinI0@public.gmane.org>"
-  Mike Turquette <mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
-  Stephen Boyd <sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
-  Linux OMAP Mailing List <linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
-  linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
-  Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
-  Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>
-  Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>
-  Ian Campbell <ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>
-  Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
-  Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>
-  devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
-  linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org <linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
-  Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
-  Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>
- " Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>\0"
- "\01:1\0"
+ "To\0linux-arm-kernel@lists.infradead.org\0"
+ "\00:1\0"
  "b\0"
  "On Fri, Apr 17, 2015 at 01:23:50AM +0200, Sebastian Hesselbarth wrote:\n"
  "> On 17.04.2015 00:09, Michael Welling wrote:\n"
@@ -38,7 +21,7 @@
  "> >>>On Thu, Apr 16, 2015 at 07:32:32AM +0300, Tero Kristo wrote:\n"
  "> >>>>On 04/15/2015 11:51 PM, Michael Welling wrote:\n"
  "> >>>>>On Wed, Apr 15, 2015 at 01:45:53PM -0700, Mike Turquette wrote:\n"
- "> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling-EkmVulN54Sk@public.gmane.org> wrote:\n"
+ "> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling@ieee.org> wrote:\n"
  "> >>[...]\n"
  "> >>>>>>>There is still an issue with the si5351.\n"
  "> >>>>>>>\n"
@@ -115,7 +98,7 @@
  "Could misconfiguration damage the chip?\n"
  "\n"
  "> \n"
- "> >root@som3517-som200:~# cat /sys/kernel/debug/clk/clk_summary\n"
+ "> >root at som3517-som200:~# cat /sys/kernel/debug/clk/clk_summary\n"
  "> >    clock                         enable_cnt  prepare_cnt        rate   accuracy   phase\n"
  "> >----------------------------------------------------------------------------------------\n"
  "> >  ref27                                    0            0    27000000          0 0\n"
@@ -235,380 +218,13 @@
  "hackish utilities.\n"
  "\n"
  "> \n"
- > Sebastian
- "\01:2\0"
- "fn\0clk-si5351.patch\0"
- "b\0"
- "diff --git a/drivers/clk/clk-si5351.c b/drivers/clk/clk-si5351.c\n"
- "index 3b2a66f..e0da91d 100644\n"
- "--- a/drivers/clk/clk-si5351.c\n"
- "+++ b/drivers/clk/clk-si5351.c\n"
- "@@ -1120,6 +1120,7 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \tconst __be32 *p;\n"
- " \tint num = 0;\n"
- " \tu32 val;\n"
- "+\tint ret;\n"
- " \n"
- " \tif (np == NULL)\n"
- " \t\treturn 0;\n"
- "@@ -1129,11 +1130,21 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\treturn -ENOMEM;\n"
- " \n"
- " \tpdata->clk_xtal = of_clk_get(np, 0);\n"
- "-\tif (!IS_ERR(pdata->clk_xtal))\n"
- "-\t\tclk_put(pdata->clk_xtal);\n"
- "-\tpdata->clk_clkin = of_clk_get(np, 1);\n"
- "-\tif (!IS_ERR(pdata->clk_clkin))\n"
- "-\t\tclk_put(pdata->clk_clkin);\n"
- "+\tif (IS_ERR(pdata->clk_xtal)) {\n"
- "+\t\tdev_err(&client->dev,\n"
- "+\t\t\t\"xtal clock not speficied\\n\");\n"
- "+\t\treturn -ENODEV;\n"
- "+\t}\n"
- "+\n"
- "+\tif (variant == SI5351_VARIANT_C) {\n"
- "+\t\tpdata->clk_clkin = of_clk_get(np, 1);\n"
- "+\t\tif (IS_ERR(pdata->clk_clkin)) {\n"
- "+\t\t\tdev_err(&client->dev,\n"
- "+\t\t\t\t\"clkin clock not speficied\\n\");\n"
- "+\t\t\tret = -ENODEV;\n"
- "+\t\t\tgoto err_put_clk_of;\n"
- "+\t\t}\n"
- "+\t}\n"
- " \n"
- " \t/*\n"
- " \t * property silabs,pll-source : <num src>, [<..>]\n"
- "@@ -1143,14 +1154,16 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\tif (num >= 2) {\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"invalid pll %d on pll-source prop\\n\", num);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk_of;\n"
- " \t\t}\n"
- " \n"
- " \t\tp = of_prop_next_u32(prop, p, &val);\n"
- " \t\tif (!p) {\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"missing pll-source for pll %d\\n\", num);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk_of;\n"
- " \t\t}\n"
- " \n"
- " \t\tswitch (val) {\n"
- "@@ -1162,14 +1175,16 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\t\"invalid parent %d for pll %d\\n\",\n"
- " \t\t\t\t\tval, num);\n"
- "-\t\t\t\treturn -EINVAL;\n"
- "+\t\t\t\tret = -EINVAL;\n"
- "+\t\t\t\tgoto err_put_clk_of;\n"
- " \t\t\t}\n"
- " \t\t\tpdata->pll_src[num] = SI5351_PLL_SRC_CLKIN;\n"
- " \t\t\tbreak;\n"
- " \t\tdefault:\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t \"invalid parent %d for pll %d\\n\", val, num);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk_of;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- "@@ -1178,13 +1193,15 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\tif (of_property_read_u32(child, \"reg\", &num)) {\n"
- " \t\t\tdev_err(&client->dev, \"missing reg property of %s\\n\",\n"
- " \t\t\t\tchild->name);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk_of;\n"
- " \t\t}\n"
- " \n"
- " \t\tif (num >= 8 ||\n"
- " \t\t    (variant == SI5351_VARIANT_A3 && num >= 3)) {\n"
- " \t\t\tdev_err(&client->dev, \"invalid clkout %d\\n\", num);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk_of;\n"
- " \t\t}\n"
- " \n"
- " \t\tif (!of_property_read_u32(child, \"silabs,multisynth-source\",\n"
- "@@ -1202,7 +1219,8 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\t\"invalid parent %d for multisynth %d\\n\",\n"
- " \t\t\t\t\tval, num);\n"
- "-\t\t\t\treturn -EINVAL;\n"
- "+\t\t\t\tret = -EINVAL;\n"
- "+\t\t\t\tgoto err_put_clk_of;\n"
- " \t\t\t}\n"
- " \t\t}\n"
- " \n"
- "@@ -1225,7 +1243,8 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\t\t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\t\t\"invalid parent %d for clkout %d\\n\",\n"
- " \t\t\t\t\t\tval, num);\n"
- "-\t\t\t\t\treturn -EINVAL;\n"
- "+\t\t\t\t\tret = -EINVAL;\n"
- "+\t\t\t\t\tgoto err_put_clk_of;\n"
- " \t\t\t\t}\n"
- " \t\t\t\tpdata->clkout[num].clkout_src =\n"
- " \t\t\t\t\tSI5351_CLKOUT_SRC_CLKIN;\n"
- "@@ -1234,7 +1253,8 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\t\"invalid parent %d for clkout %d\\n\",\n"
- " \t\t\t\t\tval, num);\n"
- "-\t\t\t\treturn -EINVAL;\n"
- "+\t\t\t\tret = -EINVAL;\n"
- "+\t\t\t\tgoto err_put_clk_of;\n"
- " \t\t\t}\n"
- " \t\t}\n"
- " \n"
- "@@ -1251,7 +1271,8 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\t\"invalid drive strength %d for clkout %d\\n\",\n"
- " \t\t\t\t\tval, num);\n"
- "-\t\t\t\treturn -EINVAL;\n"
- "+\t\t\t\tret = -EINVAL;\n"
- "+\t\t\t\tgoto err_put_clk_of;\n"
- " \t\t\t}\n"
- " \t\t}\n"
- " \n"
- "@@ -1278,7 +1299,8 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \t\t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\t\"invalid disable state %d for clkout %d\\n\",\n"
- " \t\t\t\t\tval, num);\n"
- "-\t\t\t\treturn -EINVAL;\n"
- "+\t\t\t\tret = -EINVAL;\n"
- "+\t\t\t\tgoto err_put_clk_of;\n"
- " \t\t\t}\n"
- " \t\t}\n"
- " \n"
- "@@ -1291,9 +1313,18 @@ static int si5351_dt_parse(struct i2c_client *client,\n"
- " \tclient->dev.platform_data = pdata;\n"
- " \n"
- " \treturn 0;\n"
- "+\n"
- "+err_put_clk_of:\n"
- "+\tif (!IS_ERR(pdata->clk_xtal))\n"
- "+\t\tclk_put(pdata->clk_xtal);\n"
- "+\tif (IS_ERR(pdata->clk_clkin))\n"
- "+\t\tclk_put(pdata->clk_clkin);\n"
- "+\n"
- "+\treturn ret;\n"
- " }\n"
- " #else\n"
- "-static int si5351_dt_parse(struct i2c_client *client, enum si5351_variant variant)\n"
- "+static int si5351_dt_parse(struct i2c_client *client,\n"
- "+\t\tenum si5351_variant variant)\n"
- " {\n"
- " \treturn 0;\n"
- " }\n"
- "@@ -1322,7 +1353,8 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \tdrvdata = devm_kzalloc(&client->dev, sizeof(*drvdata), GFP_KERNEL);\n"
- " \tif (drvdata == NULL) {\n"
- " \t\tdev_err(&client->dev, \"unable to allocate driver data\\n\");\n"
- "-\t\treturn -ENOMEM;\n"
- "+\t\tret = -ENOMEM;\n"
- "+\t\tgoto err_put_clk;\n"
- " \t}\n"
- " \n"
- " \ti2c_set_clientdata(client, drvdata);\n"
- "@@ -1334,7 +1366,8 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \tdrvdata->regmap = devm_regmap_init_i2c(client, &si5351_regmap_config);\n"
- " \tif (IS_ERR(drvdata->regmap)) {\n"
- " \t\tdev_err(&client->dev, \"failed to allocate register map\\n\");\n"
- "-\t\treturn PTR_ERR(drvdata->regmap);\n"
- "+\t\tret = PTR_ERR(drvdata->regmap);\n"
- "+\t\tgoto err_put_clk;\n"
- " \t}\n"
- " \n"
- " \t/* Disable interrupts */\n"
- "@@ -1351,7 +1384,7 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"failed to reparent pll %d to %d\\n\",\n"
- " \t\t\t\tn, pdata->pll_src[n]);\n"
- "-\t\t\treturn ret;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- "@@ -1362,7 +1395,7 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"failed to reparent multisynth %d to %d\\n\",\n"
- " \t\t\t\tn, pdata->clkout[n].multisynth_src);\n"
- "-\t\t\treturn ret;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \n"
- " \t\tret = _si5351_clkout_reparent(drvdata, n,\n"
- "@@ -1371,7 +1404,7 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"failed to reparent clkout %d to %d\\n\",\n"
- " \t\t\t\tn, pdata->clkout[n].clkout_src);\n"
- "-\t\t\treturn ret;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \n"
- " \t\tret = _si5351_clkout_set_drive_strength(drvdata, n,\n"
- "@@ -1380,7 +1413,7 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"failed set drive strength of clkout%d to %d\\n\",\n"
- " \t\t\t\tn, pdata->clkout[n].drive);\n"
- "-\t\t\treturn ret;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \n"
- " \t\tret = _si5351_clkout_set_disable_state(drvdata, n,\n"
- "@@ -1389,7 +1422,7 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\t\tdev_err(&client->dev,\n"
- " \t\t\t\t\"failed set disable state of clkout%d to %d\\n\",\n"
- " \t\t\t\tn, pdata->clkout[n].disable_state);\n"
- "-\t\t\treturn ret;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- "@@ -1398,16 +1431,16 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \tinit.name = si5351_input_names[0];\n"
- " \tinit.ops = &si5351_xtal_ops;\n"
- " \tinit.flags = 0;\n"
- "-\tif (!IS_ERR(drvdata->pxtal)) {\n"
- "-\t\tdrvdata->pxtal_name = __clk_get_name(drvdata->pxtal);\n"
- "-\t\tinit.parent_names = &drvdata->pxtal_name;\n"
- "-\t\tinit.num_parents = 1;\n"
- "-\t}\n"
- "+\tdrvdata->pxtal_name = __clk_get_name(drvdata->pxtal);\n"
- "+\tinit.parent_names = &drvdata->pxtal_name;\n"
- "+\tinit.num_parents = 1;\n"
- "+\n"
- " \tdrvdata->xtal.init = &init;\n"
- " \tclk = devm_clk_register(&client->dev, &drvdata->xtal);\n"
- " \tif (IS_ERR(clk)) {\n"
- " \t\tdev_err(&client->dev, \"unable to register %s\\n\", init.name);\n"
- "-\t\treturn PTR_ERR(clk);\n"
- "+\t\tret = PTR_ERR(clk);\n"
- "+\t\tgoto err_put_clk;\n"
- " \t}\n"
- " \n"
- " \t/* register clkin input clock gate */\n"
- "@@ -1415,17 +1448,17 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\tmemset(&init, 0, sizeof(init));\n"
- " \t\tinit.name = si5351_input_names[1];\n"
- " \t\tinit.ops = &si5351_clkin_ops;\n"
- "-\t\tif (!IS_ERR(drvdata->pclkin)) {\n"
- "-\t\t\tdrvdata->pclkin_name = __clk_get_name(drvdata->pclkin);\n"
- "-\t\t\tinit.parent_names = &drvdata->pclkin_name;\n"
- "-\t\t\tinit.num_parents = 1;\n"
- "-\t\t}\n"
- "+\t\tdrvdata->pclkin_name = __clk_get_name(drvdata->pclkin);\n"
- "+\t\tinit.parent_names = &drvdata->pclkin_name;\n"
- "+\t\tinit.num_parents = 1;\n"
- "+\n"
- " \t\tdrvdata->clkin.init = &init;\n"
- " \t\tclk = devm_clk_register(&client->dev, &drvdata->clkin);\n"
- " \t\tif (IS_ERR(clk)) {\n"
- " \t\t\tdev_err(&client->dev, \"unable to register %s\\n\",\n"
- " \t\t\t\tinit.name);\n"
- "-\t\t\treturn PTR_ERR(clk);\n"
- "+\t\t\tret = PTR_ERR(clk);\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- "@@ -1447,7 +1480,8 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \tclk = devm_clk_register(&client->dev, &drvdata->pll[0].hw);\n"
- " \tif (IS_ERR(clk)) {\n"
- " \t\tdev_err(&client->dev, \"unable to register %s\\n\", init.name);\n"
- "-\t\treturn -EINVAL;\n"
- "+\t\tret = -EINVAL;\n"
- "+\t\tgoto err_put_clk;\n"
- " \t}\n"
- " \n"
- " \t/* register PLLB or VXCO (Si5351B) */\n"
- "@@ -1471,7 +1505,8 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \tclk = devm_clk_register(&client->dev, &drvdata->pll[1].hw);\n"
- " \tif (IS_ERR(clk)) {\n"
- " \t\tdev_err(&client->dev, \"unable to register %s\\n\", init.name);\n"
- "-\t\treturn -EINVAL;\n"
- "+\t\tret = -EINVAL;\n"
- "+\t\tgoto err_put_clk;\n"
- " \t}\n"
- " \n"
- " \t/* register clk multisync and clk out divider */\n"
- "@@ -1492,8 +1527,10 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\tnum_clocks * sizeof(*drvdata->onecell.clks), GFP_KERNEL);\n"
- " \n"
- " \tif (WARN_ON(!drvdata->msynth || !drvdata->clkout ||\n"
- "-\t\t    !drvdata->onecell.clks))\n"
- "-\t\treturn -ENOMEM;\n"
- "+\t\t    !drvdata->onecell.clks)) {\n"
- "+\t\tret = -ENOMEM;\n"
- "+\t\tgoto err_put_clk;\n"
- "+\t}\n"
- " \n"
- " \tfor (n = 0; n < num_clocks; n++) {\n"
- " \t\tdrvdata->msynth[n].num = n;\n"
- "@@ -1511,7 +1548,8 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\tif (IS_ERR(clk)) {\n"
- " \t\t\tdev_err(&client->dev, \"unable to register %s\\n\",\n"
- " \t\t\t\tinit.name);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- "@@ -1538,7 +1576,8 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\tif (IS_ERR(clk)) {\n"
- " \t\t\tdev_err(&client->dev, \"unable to register %s\\n\",\n"
- " \t\t\t\tinit.name);\n"
- "-\t\t\treturn -EINVAL;\n"
- "+\t\t\tret = -EINVAL;\n"
- "+\t\t\tgoto err_put_clk;\n"
- " \t\t}\n"
- " \t\tdrvdata->onecell.clks[n] = clk;\n"
- " \n"
- "@@ -1557,9 +1596,31 @@ static int si5351_i2c_probe(struct i2c_client *client,\n"
- " \t\t\t\t  &drvdata->onecell);\n"
- " \tif (ret) {\n"
- " \t\tdev_err(&client->dev, \"unable to add clk provider\\n\");\n"
- "-\t\treturn ret;\n"
- "+\t\tgoto err_put_clk;\n"
- "+\t}\n"
- "+\n"
- "+\treturn 0;\n"
- "+\n"
- "+err_put_clk:\n"
- "+\tif (pdata) {\n"
- "+\t\tif (!IS_ERR(pdata->clk_xtal))\n"
- "+\t\t\tclk_put(pdata->clk_xtal);\n"
- "+\t\tif (!IS_ERR(pdata->clk_clkin))\n"
- "+\t\t\tclk_put(pdata->clk_clkin);\n"
- " \t}\n"
- " \n"
- "+\treturn ret;\n"
- "+}\n"
- "+\n"
- "+int si5351_i2c_remove(struct i2c_client *client)\n"
- "+{\n"
- "+\tstruct si5351_driver_data *drvdata = i2c_get_clientdata(client);\n"
- "+\n"
- "+\tof_clk_del_provider(client->dev.of_node);\n"
- "+\tclk_put(drvdata->pxtal);\n"
- "+\tif (drvdata->variant == SI5351_VARIANT_C)\n"
- "+\t\tclk_put(drvdata->pclkin);\n"
- "+\n"
- " \treturn 0;\n"
- " }\n"
- " \n"
- "@@ -1578,6 +1639,7 @@ static struct i2c_driver si5351_driver = {\n"
- " \t\t.of_match_table = of_match_ptr(si5351_dt_ids),\n"
- " \t},\n"
- " \t.probe = si5351_i2c_probe,\n"
- "+\t.remove = si5351_i2c_remove,\n"
- " \t.id_table = si5351_i2c_ids,\n"
- " };\n"
-  module_i2c_driver(si5351_driver);
+ "> Sebastian\n"
+ "-------------- next part --------------\n"
+ "A non-text attachment was scrubbed...\n"
+ "Name: clk-si5351.patch\n"
+ "Type: text/x-diff\n"
+ "Size: 10324 bytes\n"
+ "Desc: not available\n"
+ URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150416/a90fd0ac/attachment.bin>
 
-00a4322275eef8ac30a716cccd78c6ec3a90f9e372536be9f37f135bb920ce58
+c0541046cb94a148bf7a55f01fc99d25cd429da5c92f6e0bf8288737fcbd62b2

diff --git a/a/1.txt b/N2/1.txt
index 0085309..64f8f5a 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -5,7 +5,7 @@ On Fri, Apr 17, 2015 at 01:23:50AM +0200, Sebastian Hesselbarth wrote:
 > >>>On Thu, Apr 16, 2015 at 07:32:32AM +0300, Tero Kristo wrote:
 > >>>>On 04/15/2015 11:51 PM, Michael Welling wrote:
 > >>>>>On Wed, Apr 15, 2015 at 01:45:53PM -0700, Mike Turquette wrote:
-> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling-EkmVulN54Sk@public.gmane.org> wrote:
+> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling@ieee.org> wrote:
 > >>[...]
 > >>>>>>>There is still an issue with the si5351.
 > >>>>>>>
diff --git a/a/content_digest b/N2/content_digest
index 85c8a41..e45a8bb 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -8,27 +8,26 @@
  "ref\055301D7F.30708@gmail.com\0"
  "ref\020150416220918.GA6057@deathray\0"
  "ref\055304486.5020404@gmail.com\0"
- "ref\055304486.5020404-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org\0"
- "From\0Michael Welling <mwelling-EkmVulN54Sk@public.gmane.org>\0"
+ "From\0Michael Welling <mwelling@ieee.org>\0"
  "Subject\0Re: AM335x OMAP2 common clock external fixed-clock registration\0"
  "Date\0Thu, 16 Apr 2015 21:00:48 -0500\0"
- "To\0Sebastian Hesselbarth <sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>\0"
- "Cc\0Tero Kristo <t-kristo-l0cyMroinI0@public.gmane.org>"
-  Mike Turquette <mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
-  Stephen Boyd <sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
-  Linux OMAP Mailing List <linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
-  linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
-  Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
-  Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>
-  Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>
-  Ian Campbell <ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>
-  Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
-  Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>
-  devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
-  linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org <linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
-  Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
-  Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>
- " Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>\0"
+ "To\0Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>\0"
+ "Cc\0Tero Kristo <t-kristo@ti.com>"
+  Mike Turquette <mturquette@linaro.org>
+  Stephen Boyd <sboyd@codeaurora.org>
+  Linux OMAP Mailing List <linux-omap@vger.kernel.org>
+  linux-kernel@vger.kernel.org <linux-kernel@vger.kernel.org>
+  Rob Herring <robh+dt@kernel.org>
+  Pawel Moll <pawel.moll@arm.com>
+  Mark Rutland <mark.rutland@arm.com>
+  Ian Campbell <ijc+devicetree@hellion.org.uk>
+  Kumar Gala <galak@codeaurora.org>
+  Russell King <linux@arm.linux.org.uk>
+  devicetree <devicetree@vger.kernel.org>
+  linux-arm-kernel@lists.infradead.org <linux-arm-kernel@lists.infradead.org>
+  Tony Lindgren <tony@atomide.com>
+  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+ " Daniel Mack <daniel@zonque.org>\0"
  "\01:1\0"
  "b\0"
  "On Fri, Apr 17, 2015 at 01:23:50AM +0200, Sebastian Hesselbarth wrote:\n"
@@ -38,7 +37,7 @@
  "> >>>On Thu, Apr 16, 2015 at 07:32:32AM +0300, Tero Kristo wrote:\n"
  "> >>>>On 04/15/2015 11:51 PM, Michael Welling wrote:\n"
  "> >>>>>On Wed, Apr 15, 2015 at 01:45:53PM -0700, Mike Turquette wrote:\n"
- "> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling-EkmVulN54Sk@public.gmane.org> wrote:\n"
+ "> >>>>>>On Wed, Apr 15, 2015 at 12:47 PM, Michael Welling <mwelling@ieee.org> wrote:\n"
  "> >>[...]\n"
  "> >>>>>>>There is still an issue with the si5351.\n"
  "> >>>>>>>\n"
@@ -611,4 +610,4 @@
  " };\n"
   module_i2c_driver(si5351_driver);
 
-00a4322275eef8ac30a716cccd78c6ec3a90f9e372536be9f37f135bb920ce58
+975df46ce5941439cae4f0fcdc0e3a1c55139cad46721d397189eaa19ffdc81e

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.