All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] clk: keystone: changes for 5.3 v2
@ 2019-06-12 11:56 ` Tero Kristo
  0 siblings, 0 replies; 8+ messages in thread
From: Tero Kristo @ 2019-06-12 11:56 UTC (permalink / raw)
  To: linux-clk, Stephen Boyd, Santosh Shilimkar, Michael Turquette
  Cc: linux-arm-kernel

Hi Stephen, Mike, Santosh,

Here's a 2nd take of the pull request for the clock changes for keystone 
SoC for 5.3. The only change compared to the v1 is to add the required 
drivers/firmware change in. This avoids the nasty dependency between the 
pull requests between the clock driver and firmware driver.

-Tero

---

The following changes since commit a188339ca5a396acc588e5851ed7e19f66b0ebd9:

   Linux 5.2-rc1 (2019-05-19 15:47:09 -0700)

are available in the git repository at:

   git://git.kernel.org/pub/scm/linux/kernel/git/kristo/linux 
tags/keystone-clk-for-5.3-v2

for you to fetch changes up to 81f4458c9c6998fcd37c427d16d76d4dba65d015:

   firmware: ti_sci: extend clock identifiers from u8 to u32 (2019-06-12 
14:45:00 +0300)

----------------------------------------------------------------
Keystone clk changes for 5.3 merge window.

- Add support for 32 bit clock IDs for sci-clks, this is needed
   for the new J721e SoC which has a few devices that have more than
   255 clocks associated to them.
- Clock probing done from DT by default instead of firmware side.
   Scanning clocks from DT is much faster than firmware, and also we
   can omit unnecessary clocks which saves even more time. This has been
   done in the interest of saving boot time.
- Remove the device tree node path from the registered sci-clk names.
   This mainly makes the debugfs interface more readable.
- Also contains a single drivers/firmware change which needs to go in
   via this pull-request; to support the 32bit clock IDs.

----------------------------------------------------------------
Tero Kristo (5):
       clk: keystone: sci-clk: cut down the clock name length
       clk: keystone: sci-clk: split out the fw clock parsing to own 
function
       clk: keystone: sci-clk: probe clocks from DT instead of firmware
       clk: keystone: sci-clk: extend clock IDs to 32 bits
       firmware: ti_sci: extend clock identifiers from u8 to u32

  drivers/clk/keystone/Kconfig           |  11 ++
  drivers/clk/keystone/sci-clk.c         | 239 
+++++++++++++++++++++++++++------
  drivers/firmware/ti_sci.c              | 115 +++++++++++-----
  drivers/firmware/ti_sci.h              |  63 +++++++--
  include/linux/soc/ti/ti_sci_protocol.h |  28 ++--
  5 files changed, 362 insertions(+), 94 deletions(-)
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [GIT PULL] clk: keystone: changes for 5.3 v2
@ 2019-06-12 11:56 ` Tero Kristo
  0 siblings, 0 replies; 8+ messages in thread
From: Tero Kristo @ 2019-06-12 11:56 UTC (permalink / raw)
  To: linux-clk, Stephen Boyd, Santosh Shilimkar, Michael Turquette
  Cc: linux-arm-kernel

Hi Stephen, Mike, Santosh,

Here's a 2nd take of the pull request for the clock changes for keystone 
SoC for 5.3. The only change compared to the v1 is to add the required 
drivers/firmware change in. This avoids the nasty dependency between the 
pull requests between the clock driver and firmware driver.

-Tero

---

The following changes since commit a188339ca5a396acc588e5851ed7e19f66b0ebd9:

   Linux 5.2-rc1 (2019-05-19 15:47:09 -0700)

are available in the git repository at:

   git://git.kernel.org/pub/scm/linux/kernel/git/kristo/linux 
tags/keystone-clk-for-5.3-v2

for you to fetch changes up to 81f4458c9c6998fcd37c427d16d76d4dba65d015:

   firmware: ti_sci: extend clock identifiers from u8 to u32 (2019-06-12 
14:45:00 +0300)

----------------------------------------------------------------
Keystone clk changes for 5.3 merge window.

- Add support for 32 bit clock IDs for sci-clks, this is needed
   for the new J721e SoC which has a few devices that have more than
   255 clocks associated to them.
- Clock probing done from DT by default instead of firmware side.
   Scanning clocks from DT is much faster than firmware, and also we
   can omit unnecessary clocks which saves even more time. This has been
   done in the interest of saving boot time.
- Remove the device tree node path from the registered sci-clk names.
   This mainly makes the debugfs interface more readable.
- Also contains a single drivers/firmware change which needs to go in
   via this pull-request; to support the 32bit clock IDs.

----------------------------------------------------------------
Tero Kristo (5):
       clk: keystone: sci-clk: cut down the clock name length
       clk: keystone: sci-clk: split out the fw clock parsing to own 
function
       clk: keystone: sci-clk: probe clocks from DT instead of firmware
       clk: keystone: sci-clk: extend clock IDs to 32 bits
       firmware: ti_sci: extend clock identifiers from u8 to u32

  drivers/clk/keystone/Kconfig           |  11 ++
  drivers/clk/keystone/sci-clk.c         | 239 
+++++++++++++++++++++++++++------
  drivers/firmware/ti_sci.c              | 115 +++++++++++-----
  drivers/firmware/ti_sci.h              |  63 +++++++--
  include/linux/soc/ti/ti_sci_protocol.h |  28 ++--
  5 files changed, 362 insertions(+), 94 deletions(-)
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] clk: keystone: changes for 5.3 v2
  2019-06-12 11:56 ` Tero Kristo
@ 2019-06-25  1:17   ` Stephen Boyd
  -1 siblings, 0 replies; 8+ messages in thread
From: Stephen Boyd @ 2019-06-25  1:17 UTC (permalink / raw)
  To: Michael Turquette, Santosh Shilimkar, Tero Kristo, linux-clk
  Cc: linux-arm-kernel

Quoting Tero Kristo (2019-06-12 04:56:15)
> Hi Stephen, Mike, Santosh,
> 
> Here's a 2nd take of the pull request for the clock changes for keystone 
> SoC for 5.3. The only change compared to the v1 is to add the required 
> drivers/firmware change in. This avoids the nasty dependency between the 
> pull requests between the clock driver and firmware driver.
> 
> -Tero
> 
> ---

Thanks. Pulled into clk-next. I guess we should increase the size of the
number of parents that can exist to be more than a u8? We're close to
getting there with the new way of specifying clk parents, so maybe we
should expand it to an unsigned int, but then we may need to optimize
finding parents when searching through all the parents of a clk.

Also, there isn't any quantification of how much better it is to scan DT
for all the clks that are used and only register those ones. It would be
nice to understand how much better it is to do that sort of scan vs.
just populating all clks at boot time. It may be useful to make the code
generic because NXP folks also want to populate clks from DT so maybe we
should provide this from the core framework somehow to ask providers to
register a particular clk or not. I haven't thought about it at all, but
it may come up that we totally rewrite this code in the future to be
shared outside of the TI clk driver.

FYI: I had to apply this patch on top to make sparse happy.

diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
index b417cef35769..92b77d38dd1f 100644
--- a/drivers/firmware/ti_sci.c
+++ b/drivers/firmware/ti_sci.c
@@ -2402,12 +2402,13 @@ devm_ti_sci_get_of_resource(const struct ti_sci_handle *handle,
 	if (!res)
 		return ERR_PTR(-ENOMEM);
 
-	res->sets = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
+	ret = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
 						    sizeof(u32));
-	if (res->sets < 0) {
+	if (ret < 0) {
 		dev_err(dev, "%s resource type ids not available\n", of_prop);
-		return ERR_PTR(res->sets);
+		return ERR_PTR(ret);
 	}
+	res->sets = ret;
 
 	res->desc = devm_kcalloc(dev, res->sets, sizeof(*res->desc),
 				 GFP_KERNEL);


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] clk: keystone: changes for 5.3 v2
@ 2019-06-25  1:17   ` Stephen Boyd
  0 siblings, 0 replies; 8+ messages in thread
From: Stephen Boyd @ 2019-06-25  1:17 UTC (permalink / raw)
  To: Michael Turquette, Santosh Shilimkar, Tero Kristo, linux-clk
  Cc: linux-arm-kernel

Quoting Tero Kristo (2019-06-12 04:56:15)
> Hi Stephen, Mike, Santosh,
> 
> Here's a 2nd take of the pull request for the clock changes for keystone 
> SoC for 5.3. The only change compared to the v1 is to add the required 
> drivers/firmware change in. This avoids the nasty dependency between the 
> pull requests between the clock driver and firmware driver.
> 
> -Tero
> 
> ---

Thanks. Pulled into clk-next. I guess we should increase the size of the
number of parents that can exist to be more than a u8? We're close to
getting there with the new way of specifying clk parents, so maybe we
should expand it to an unsigned int, but then we may need to optimize
finding parents when searching through all the parents of a clk.

Also, there isn't any quantification of how much better it is to scan DT
for all the clks that are used and only register those ones. It would be
nice to understand how much better it is to do that sort of scan vs.
just populating all clks at boot time. It may be useful to make the code
generic because NXP folks also want to populate clks from DT so maybe we
should provide this from the core framework somehow to ask providers to
register a particular clk or not. I haven't thought about it at all, but
it may come up that we totally rewrite this code in the future to be
shared outside of the TI clk driver.

FYI: I had to apply this patch on top to make sparse happy.

diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
index b417cef35769..92b77d38dd1f 100644
--- a/drivers/firmware/ti_sci.c
+++ b/drivers/firmware/ti_sci.c
@@ -2402,12 +2402,13 @@ devm_ti_sci_get_of_resource(const struct ti_sci_handle *handle,
 	if (!res)
 		return ERR_PTR(-ENOMEM);
 
-	res->sets = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
+	ret = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
 						    sizeof(u32));
-	if (res->sets < 0) {
+	if (ret < 0) {
 		dev_err(dev, "%s resource type ids not available\n", of_prop);
-		return ERR_PTR(res->sets);
+		return ERR_PTR(ret);
 	}
+	res->sets = ret;
 
 	res->desc = devm_kcalloc(dev, res->sets, sizeof(*res->desc),
 				 GFP_KERNEL);


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] clk: keystone: changes for 5.3 v2
  2019-06-25  1:17   ` Stephen Boyd
@ 2019-06-25 10:33     ` Tero Kristo
  -1 siblings, 0 replies; 8+ messages in thread
From: Tero Kristo @ 2019-06-25 10:33 UTC (permalink / raw)
  To: Stephen Boyd, Michael Turquette, Santosh Shilimkar, linux-clk
  Cc: linux-arm-kernel

On 25/06/2019 04:17, Stephen Boyd wrote:
> Quoting Tero Kristo (2019-06-12 04:56:15)
>> Hi Stephen, Mike, Santosh,
>>
>> Here's a 2nd take of the pull request for the clock changes for keystone
>> SoC for 5.3. The only change compared to the v1 is to add the required
>> drivers/firmware change in. This avoids the nasty dependency between the
>> pull requests between the clock driver and firmware driver.
>>
>> -Tero
>>
>> ---
> 
> Thanks. Pulled into clk-next. I guess we should increase the size of the
> number of parents that can exist to be more than a u8? We're close to
> getting there with the new way of specifying clk parents, so maybe we
> should expand it to an unsigned int, but then we may need to optimize
> finding parents when searching through all the parents of a clk.

For now, this is not an issue with TI SoC:s at least, I think we only 
have like 64 parents at max for muxes.

> Also, there isn't any quantification of how much better it is to scan DT
> for all the clks that are used and only register those ones. It would be
> nice to understand how much better it is to do that sort of scan vs.
> just populating all clks at boot time.

I haven't done measurements lately, but it provides pretty drastic 
improvement. On am65x for example, it cuts the scan time from bit more 
than 1 second to couple of hundred milliseconds. I don't have 
measurements for the new j721e SoC, but I would believe the improvement 
is even more with that one.

> It may be useful to make the code
> generic because NXP folks also want to populate clks from DT so maybe we
> should provide this from the core framework somehow to ask providers to
> register a particular clk or not. I haven't thought about it at all, but
> it may come up that we totally rewrite this code in the future to be
> shared outside of the TI clk driver.

It might also be worth thinking whether some sort of lazy clock probe 
would be possible... now we register everything at one go, but would it 
be possible to only register / reparent clocks once they are actually 
requested by some driver?

> 
> FYI: I had to apply this patch on top to make sparse happy.

Ok looks good to me, thanks.

-Tero

> 
> diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
> index b417cef35769..92b77d38dd1f 100644
> --- a/drivers/firmware/ti_sci.c
> +++ b/drivers/firmware/ti_sci.c
> @@ -2402,12 +2402,13 @@ devm_ti_sci_get_of_resource(const struct ti_sci_handle *handle,
>   	if (!res)
>   		return ERR_PTR(-ENOMEM);
>   
> -	res->sets = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
> +	ret = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
>   						    sizeof(u32));
> -	if (res->sets < 0) {
> +	if (ret < 0) {
>   		dev_err(dev, "%s resource type ids not available\n", of_prop);
> -		return ERR_PTR(res->sets);
> +		return ERR_PTR(ret);
>   	}
> +	res->sets = ret;
>   
>   	res->desc = devm_kcalloc(dev, res->sets, sizeof(*res->desc),
>   				 GFP_KERNEL);
> 

--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] clk: keystone: changes for 5.3 v2
@ 2019-06-25 10:33     ` Tero Kristo
  0 siblings, 0 replies; 8+ messages in thread
From: Tero Kristo @ 2019-06-25 10:33 UTC (permalink / raw)
  To: Stephen Boyd, Michael Turquette, Santosh Shilimkar, linux-clk
  Cc: linux-arm-kernel

On 25/06/2019 04:17, Stephen Boyd wrote:
> Quoting Tero Kristo (2019-06-12 04:56:15)
>> Hi Stephen, Mike, Santosh,
>>
>> Here's a 2nd take of the pull request for the clock changes for keystone
>> SoC for 5.3. The only change compared to the v1 is to add the required
>> drivers/firmware change in. This avoids the nasty dependency between the
>> pull requests between the clock driver and firmware driver.
>>
>> -Tero
>>
>> ---
> 
> Thanks. Pulled into clk-next. I guess we should increase the size of the
> number of parents that can exist to be more than a u8? We're close to
> getting there with the new way of specifying clk parents, so maybe we
> should expand it to an unsigned int, but then we may need to optimize
> finding parents when searching through all the parents of a clk.

For now, this is not an issue with TI SoC:s at least, I think we only 
have like 64 parents at max for muxes.

> Also, there isn't any quantification of how much better it is to scan DT
> for all the clks that are used and only register those ones. It would be
> nice to understand how much better it is to do that sort of scan vs.
> just populating all clks at boot time.

I haven't done measurements lately, but it provides pretty drastic 
improvement. On am65x for example, it cuts the scan time from bit more 
than 1 second to couple of hundred milliseconds. I don't have 
measurements for the new j721e SoC, but I would believe the improvement 
is even more with that one.

> It may be useful to make the code
> generic because NXP folks also want to populate clks from DT so maybe we
> should provide this from the core framework somehow to ask providers to
> register a particular clk or not. I haven't thought about it at all, but
> it may come up that we totally rewrite this code in the future to be
> shared outside of the TI clk driver.

It might also be worth thinking whether some sort of lazy clock probe 
would be possible... now we register everything at one go, but would it 
be possible to only register / reparent clocks once they are actually 
requested by some driver?

> 
> FYI: I had to apply this patch on top to make sparse happy.

Ok looks good to me, thanks.

-Tero

> 
> diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
> index b417cef35769..92b77d38dd1f 100644
> --- a/drivers/firmware/ti_sci.c
> +++ b/drivers/firmware/ti_sci.c
> @@ -2402,12 +2402,13 @@ devm_ti_sci_get_of_resource(const struct ti_sci_handle *handle,
>   	if (!res)
>   		return ERR_PTR(-ENOMEM);
>   
> -	res->sets = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
> +	ret = of_property_count_elems_of_size(dev_of_node(dev), of_prop,
>   						    sizeof(u32));
> -	if (res->sets < 0) {
> +	if (ret < 0) {
>   		dev_err(dev, "%s resource type ids not available\n", of_prop);
> -		return ERR_PTR(res->sets);
> +		return ERR_PTR(ret);
>   	}
> +	res->sets = ret;
>   
>   	res->desc = devm_kcalloc(dev, res->sets, sizeof(*res->desc),
>   				 GFP_KERNEL);
> 

--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] clk: keystone: changes for 5.3 v2
  2019-06-25 10:33     ` Tero Kristo
@ 2019-06-25 18:55       ` Stephen Boyd
  -1 siblings, 0 replies; 8+ messages in thread
From: Stephen Boyd @ 2019-06-25 18:55 UTC (permalink / raw)
  To: Michael Turquette, Santosh Shilimkar, Tero Kristo, linux-clk
  Cc: linux-arm-kernel

Quoting Tero Kristo (2019-06-25 03:33:50)
> On 25/06/2019 04:17, Stephen Boyd wrote:
> > Quoting Tero Kristo (2019-06-12 04:56:15)
> >> Hi Stephen, Mike, Santosh,
> >>
> >> Here's a 2nd take of the pull request for the clock changes for keystone
> >> SoC for 5.3. The only change compared to the v1 is to add the required
> >> drivers/firmware change in. This avoids the nasty dependency between the
> >> pull requests between the clock driver and firmware driver.
> >>
> >> -Tero
> > 
> > Thanks. Pulled into clk-next. I guess we should increase the size of the
> > number of parents that can exist to be more than a u8? We're close to
> > getting there with the new way of specifying clk parents, so maybe we
> > should expand it to an unsigned int, but then we may need to optimize
> > finding parents when searching through all the parents of a clk.
> 
> For now, this is not an issue with TI SoC:s at least, I think we only 
> have like 64 parents at max for muxes.

Ok. It doesn't sound like a priority then.

> 
> > Also, there isn't any quantification of how much better it is to scan DT
> > for all the clks that are used and only register those ones. It would be
> > nice to understand how much better it is to do that sort of scan vs.
> > just populating all clks at boot time.
> 
> I haven't done measurements lately, but it provides pretty drastic 
> improvement. On am65x for example, it cuts the scan time from bit more 
> than 1 second to couple of hundred milliseconds. I don't have 
> measurements for the new j721e SoC, but I would believe the improvement 
> is even more with that one.

Cool. Thanks for the numbers.

> 
> > It may be useful to make the code
> > generic because NXP folks also want to populate clks from DT so maybe we
> > should provide this from the core framework somehow to ask providers to
> > register a particular clk or not. I haven't thought about it at all, but
> > it may come up that we totally rewrite this code in the future to be
> > shared outside of the TI clk driver.
> 
> It might also be worth thinking whether some sort of lazy clock probe 
> would be possible... now we register everything at one go, but would it 
> be possible to only register / reparent clocks once they are actually 
> requested by some driver?

Sure. Ideally the optimization isn't vendor driver specific.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] clk: keystone: changes for 5.3 v2
@ 2019-06-25 18:55       ` Stephen Boyd
  0 siblings, 0 replies; 8+ messages in thread
From: Stephen Boyd @ 2019-06-25 18:55 UTC (permalink / raw)
  To: Michael Turquette, Santosh Shilimkar, Tero Kristo, linux-clk
  Cc: linux-arm-kernel

Quoting Tero Kristo (2019-06-25 03:33:50)
> On 25/06/2019 04:17, Stephen Boyd wrote:
> > Quoting Tero Kristo (2019-06-12 04:56:15)
> >> Hi Stephen, Mike, Santosh,
> >>
> >> Here's a 2nd take of the pull request for the clock changes for keystone
> >> SoC for 5.3. The only change compared to the v1 is to add the required
> >> drivers/firmware change in. This avoids the nasty dependency between the
> >> pull requests between the clock driver and firmware driver.
> >>
> >> -Tero
> > 
> > Thanks. Pulled into clk-next. I guess we should increase the size of the
> > number of parents that can exist to be more than a u8? We're close to
> > getting there with the new way of specifying clk parents, so maybe we
> > should expand it to an unsigned int, but then we may need to optimize
> > finding parents when searching through all the parents of a clk.
> 
> For now, this is not an issue with TI SoC:s at least, I think we only 
> have like 64 parents at max for muxes.

Ok. It doesn't sound like a priority then.

> 
> > Also, there isn't any quantification of how much better it is to scan DT
> > for all the clks that are used and only register those ones. It would be
> > nice to understand how much better it is to do that sort of scan vs.
> > just populating all clks at boot time.
> 
> I haven't done measurements lately, but it provides pretty drastic 
> improvement. On am65x for example, it cuts the scan time from bit more 
> than 1 second to couple of hundred milliseconds. I don't have 
> measurements for the new j721e SoC, but I would believe the improvement 
> is even more with that one.

Cool. Thanks for the numbers.

> 
> > It may be useful to make the code
> > generic because NXP folks also want to populate clks from DT so maybe we
> > should provide this from the core framework somehow to ask providers to
> > register a particular clk or not. I haven't thought about it at all, but
> > it may come up that we totally rewrite this code in the future to be
> > shared outside of the TI clk driver.
> 
> It might also be worth thinking whether some sort of lazy clock probe 
> would be possible... now we register everything at one go, but would it 
> be possible to only register / reparent clocks once they are actually 
> requested by some driver?

Sure. Ideally the optimization isn't vendor driver specific.


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-06-25 18:55 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-12 11:56 [GIT PULL] clk: keystone: changes for 5.3 v2 Tero Kristo
2019-06-12 11:56 ` Tero Kristo
2019-06-25  1:17 ` Stephen Boyd
2019-06-25  1:17   ` Stephen Boyd
2019-06-25 10:33   ` Tero Kristo
2019-06-25 10:33     ` Tero Kristo
2019-06-25 18:55     ` Stephen Boyd
2019-06-25 18:55       ` Stephen Boyd

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.