Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1576252 > unrolled thread

[PATCH v3 1/3] clk: zte: add i2s clocks for zx296718

Started byBaoyou Xie <baoyou.xie@linaro.org>
First post2017-02-08 04:10 +0100
Last post2017-02-09 23:50 +0100
Articles 8 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v3 1/3] clk: zte: add i2s clocks for zx296718 Baoyou Xie <baoyou.xie@linaro.org> - 2017-02-08 04:10 +0100
    [PATCH v3 3/3] ASoC: zx-i2s: introduce pclk for zx2967 family Baoyou Xie <baoyou.xie@linaro.org> - 2017-02-08 04:40 +0100
      Re: [PATCH v3 3/3] ASoC: zx-i2s: introduce pclk for zx2967 family Shawn Guo <shawnguo@kernel.org> - 2017-02-08 15:40 +0100
    [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family Baoyou Xie <baoyou.xie@linaro.org> - 2017-02-08 04:40 +0100
      Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family Rob Herring <robh@kernel.org> - 2017-02-09 02:00 +0100
        Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family Shawn Guo <shawnguo@kernel.org> - 2017-02-09 02:50 +0100
          Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family Mark Brown <broonie@kernel.org> - 2017-02-09 13:10 +0100
            Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family Rob Herring <robh@kernel.org> - 2017-02-09 23:50 +0100

#1576252 — [PATCH v3 1/3] clk: zte: add i2s clocks for zx296718

FromBaoyou Xie <baoyou.xie@linaro.org>
Date2017-02-08 04:10 +0100
Subject[PATCH v3 1/3] clk: zte: add i2s clocks for zx296718
Message-ID<t8qNQ-33A-15@gated-at.bofh.it>
The i2s related clock support is missing from the existing zx296718
clock driver. This patch adds it, so that the upstream ZX I2S driver
can work out.

Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
---
 drivers/clk/zte/clk-zx296718.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/clk/zte/clk-zx296718.c b/drivers/clk/zte/clk-zx296718.c
index ad5d1df..f106d40 100644
--- a/drivers/clk/zte/clk-zx296718.c
+++ b/drivers/clk/zte/clk-zx296718.c
@@ -941,6 +941,10 @@ static struct zx_clk_gate audio_gate_clk[] = {
 	GATE(AUDIO_SPDIF1_WCLK, "spdif1_wclk", "spdif1_wclk_div", AUDIO_SPDIF1_CLK, 9, CLK_SET_RATE_PARENT, 0),
 	GATE(AUDIO_TDM_WCLK, "tdm_wclk", "tdm_wclk_div", AUDIO_TDM_CLK, 17, CLK_SET_RATE_PARENT, 0),
 	GATE(AUDIO_TS_PCLK, "tempsensor_pclk", "clk49m5", AUDIO_TS_CLK, 1, 0, 0),
+	GATE(AUDIO_I2S0_PCLK, "i2s0_pclk", "clk49m5", AUDIO_I2S0_CLK, 8, 0, 0),
+	GATE(AUDIO_I2S1_PCLK, "i2s1_pclk", "clk49m5", AUDIO_I2S1_CLK, 8, 0, 0),
+	GATE(AUDIO_I2S2_PCLK, "i2s2_pclk", "clk49m5", AUDIO_I2S2_CLK, 8, 0, 0),
+	GATE(AUDIO_I2S3_PCLK, "i2s3_pclk", "clk49m5", AUDIO_I2S3_CLK, 8, 0, 0),
 };
 
 static struct clk_hw_onecell_data audio_hw_onecell_data = {
-- 
2.7.4

[toc] | [next] | [standalone]


#1576263 — [PATCH v3 3/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromBaoyou Xie <baoyou.xie@linaro.org>
Date2017-02-08 04:40 +0100
Subject[PATCH v3 3/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t8rgR-3hA-1@gated-at.bofh.it>
In reply to#1576252
The pclk is necessary for zx2967 I2S controller. the driver
currently doesn't handle it. This is something we need to fix.

In turn, the driver supports zx296718's I2S controller.

By the way, this patch also change the clock name from tx to wclk
to make it clear.

Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
---
 sound/soc/zte/zx-i2s.c | 37 ++++++++++++++++++++++++++++---------
 1 file changed, 28 insertions(+), 9 deletions(-)

diff --git a/sound/soc/zte/zx-i2s.c b/sound/soc/zte/zx-i2s.c
index ed7a56d..2d486ea 100644
--- a/sound/soc/zte/zx-i2s.c
+++ b/sound/soc/zte/zx-i2s.c
@@ -95,7 +95,7 @@
 struct zx_i2s_info {
 	struct snd_dmaengine_dai_dma_data	dma_playback;
 	struct snd_dmaengine_dai_dma_data	dma_capture;
-	struct clk				*dai_clk;
+	struct clk				*dai_wclk, *dai_pclk;
 	void __iomem				*reg_base;
 	int					master;
 	resource_size_t				mapbase;
@@ -275,8 +275,9 @@ static int zx_i2s_hw_params(struct snd_pcm_substream *substream,
 	writel_relaxed(val, i2s->reg_base + ZX_I2S_TIMING_CTRL);
 
 	if (i2s->master)
-		ret = clk_set_rate(i2s->dai_clk,
-				   params_rate(params) * ch_num * CLK_RAT);
+		ret = clk_set_rate(i2s->dai_wclk,
+				params_rate(params) * ch_num * CLK_RAT);
+
 	return ret;
 }
 
@@ -328,8 +329,19 @@ static int zx_i2s_startup(struct snd_pcm_substream *substream,
 			  struct snd_soc_dai *dai)
 {
 	struct zx_i2s_info *zx_i2s = dev_get_drvdata(dai->dev);
+	int ret;
+
+	ret = clk_prepare_enable(zx_i2s->dai_wclk);
+	if (ret)
+		return ret;
+
+	ret = clk_prepare_enable(zx_i2s->dai_pclk);
+	if (ret) {
+		clk_disable_unprepare(zx_i2s->dai_wclk);
+		return ret;
+	}
 
-	return clk_prepare_enable(zx_i2s->dai_clk);
+	return ret;
 }
 
 static void zx_i2s_shutdown(struct snd_pcm_substream *substream,
@@ -337,7 +349,8 @@ static void zx_i2s_shutdown(struct snd_pcm_substream *substream,
 {
 	struct zx_i2s_info *zx_i2s = dev_get_drvdata(dai->dev);
 
-	clk_disable_unprepare(zx_i2s->dai_clk);
+	clk_disable_unprepare(zx_i2s->dai_wclk);
+	clk_disable_unprepare(zx_i2s->dai_pclk);
 }
 
 static struct snd_soc_dai_ops zx_i2s_dai_ops = {
@@ -381,10 +394,16 @@ static int zx_i2s_probe(struct platform_device *pdev)
 	if (!zx_i2s)
 		return -ENOMEM;
 
-	zx_i2s->dai_clk = devm_clk_get(&pdev->dev, "tx");
-	if (IS_ERR(zx_i2s->dai_clk)) {
-		dev_err(&pdev->dev, "Fail to get clk\n");
-		return PTR_ERR(zx_i2s->dai_clk);
+	zx_i2s->dai_wclk = devm_clk_get(&pdev->dev, "wclk");
+	if (IS_ERR(zx_i2s->dai_wclk)) {
+		dev_err(&pdev->dev, "Fail to get wclk\n");
+		return PTR_ERR(zx_i2s->dai_wclk);
+	}
+
+	zx_i2s->dai_pclk = devm_clk_get(&pdev->dev, "pclk");
+	if (IS_ERR(zx_i2s->dai_pclk)) {
+		dev_info(&pdev->dev, "have no pclk\n");
+		zx_i2s->dai_pclk = NULL;
 	}
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-- 
2.7.4

[toc] | [prev] | [next] | [standalone]


#1576623 — Re: [PATCH v3 3/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromShawn Guo <shawnguo@kernel.org>
Date2017-02-08 15:40 +0100
SubjectRe: [PATCH v3 3/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t8Bzz-1u7-17@gated-at.bofh.it>
In reply to#1576263
On Wed, Feb 08, 2017 at 11:02:35AM +0800, Baoyou Xie wrote:
> The pclk is necessary for zx2967 I2S controller. the driver
> currently doesn't handle it. This is something we need to fix.
> 
> In turn, the driver supports zx296718's I2S controller.
> 
> By the way, this patch also change the clock name from tx to wclk
> to make it clear.
> 
> Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
> ---
>  sound/soc/zte/zx-i2s.c | 37 ++++++++++++++++++++++++++++---------
>  1 file changed, 28 insertions(+), 9 deletions(-)
> 
> diff --git a/sound/soc/zte/zx-i2s.c b/sound/soc/zte/zx-i2s.c
> index ed7a56d..2d486ea 100644
> --- a/sound/soc/zte/zx-i2s.c
> +++ b/sound/soc/zte/zx-i2s.c
> @@ -95,7 +95,7 @@
>  struct zx_i2s_info {
>  	struct snd_dmaengine_dai_dma_data	dma_playback;
>  	struct snd_dmaengine_dai_dma_data	dma_capture;
> -	struct clk				*dai_clk;
> +	struct clk				*dai_wclk, *dai_pclk;

It's better to have them on two lines, I would say.

>  	void __iomem				*reg_base;
>  	int					master;
>  	resource_size_t				mapbase;
> @@ -275,8 +275,9 @@ static int zx_i2s_hw_params(struct snd_pcm_substream *substream,
>  	writel_relaxed(val, i2s->reg_base + ZX_I2S_TIMING_CTRL);
>  
>  	if (i2s->master)
> -		ret = clk_set_rate(i2s->dai_clk,
> -				   params_rate(params) * ch_num * CLK_RAT);
> +		ret = clk_set_rate(i2s->dai_wclk,
> +				params_rate(params) * ch_num * CLK_RAT);
> +
>  	return ret;
>  }
>  
> @@ -328,8 +329,19 @@ static int zx_i2s_startup(struct snd_pcm_substream *substream,
>  			  struct snd_soc_dai *dai)
>  {
>  	struct zx_i2s_info *zx_i2s = dev_get_drvdata(dai->dev);
> +	int ret;
> +
> +	ret = clk_prepare_enable(zx_i2s->dai_wclk);
> +	if (ret)
> +		return ret;
> +
> +	ret = clk_prepare_enable(zx_i2s->dai_pclk);
> +	if (ret) {
> +		clk_disable_unprepare(zx_i2s->dai_wclk);
> +		return ret;
> +	}
>  
> -	return clk_prepare_enable(zx_i2s->dai_clk);
> +	return ret;
>  }
>  
>  static void zx_i2s_shutdown(struct snd_pcm_substream *substream,
> @@ -337,7 +349,8 @@ static void zx_i2s_shutdown(struct snd_pcm_substream *substream,
>  {
>  	struct zx_i2s_info *zx_i2s = dev_get_drvdata(dai->dev);
>  
> -	clk_disable_unprepare(zx_i2s->dai_clk);
> +	clk_disable_unprepare(zx_i2s->dai_wclk);
> +	clk_disable_unprepare(zx_i2s->dai_pclk);
>  }
>  
>  static struct snd_soc_dai_ops zx_i2s_dai_ops = {
> @@ -381,10 +394,16 @@ static int zx_i2s_probe(struct platform_device *pdev)
>  	if (!zx_i2s)
>  		return -ENOMEM;
>  
> -	zx_i2s->dai_clk = devm_clk_get(&pdev->dev, "tx");
> -	if (IS_ERR(zx_i2s->dai_clk)) {
> -		dev_err(&pdev->dev, "Fail to get clk\n");
> -		return PTR_ERR(zx_i2s->dai_clk);
> +	zx_i2s->dai_wclk = devm_clk_get(&pdev->dev, "wclk");
> +	if (IS_ERR(zx_i2s->dai_wclk)) {
> +		dev_err(&pdev->dev, "Fail to get wclk\n");
> +		return PTR_ERR(zx_i2s->dai_wclk);
> +	}
> +
> +	zx_i2s->dai_pclk = devm_clk_get(&pdev->dev, "pclk");
> +	if (IS_ERR(zx_i2s->dai_pclk)) {
> +		dev_info(&pdev->dev, "have no pclk\n");
> +		zx_i2s->dai_pclk = NULL;

The 'pclk' is actually required instead of optional.  Since we haven't
got any in-tree DTB with I2S device yet, there is no DT compatibility to
maintain.  So it should be good to make 'pclk' required right now.

Shawn

>  	}
>  
>  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> -- 
> 2.7.4
> 

[toc] | [prev] | [next] | [standalone]


#1576264 — [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromBaoyou Xie <baoyou.xie@linaro.org>
Date2017-02-08 04:40 +0100
Subject[PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t8rgR-3hA-11@gated-at.bofh.it>
In reply to#1576252
ZTE's zx2967 I2S controller driver introduces pclk, this
patch documents this fact.

Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
---
 Documentation/devicetree/bindings/sound/zte,zx-i2s.txt | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt b/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt
index 7e5aa6f..77390c0 100644
--- a/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt
+++ b/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt
@@ -4,7 +4,7 @@ Required properties:
  - compatible : Must be "zte,zx296702-i2s"
  - reg : Must contain I2S core's registers location and length
  - clocks : Pairs of phandle and specifier referencing the controller's clocks.
- - clock-names: "tx" for the clock to the I2S interface.
+ - clock-names: "wclk" for the wclk, "pclk" for the pclk to the I2S interface.
  - dmas: Pairs of phandle and specifier for the DMA channel that is used by
    the core. The core expects two dma channels for transmit.
  - dma-names : Must be "tx" and "rx"
@@ -15,13 +15,17 @@ please check:
 	* clock/clock-bindings.txt
 	* dma/dma.txt
 
+Please note that ZTE ZX296702 I2S controller driver is compatible for zx296702
+and zx296718, so compatible string might be set as follow:
+	"zte,zx296718-i2s", "zte,zx296702-i2s"
+
 Example:
 	i2s0: i2s0@0b005000 {
 		#sound-dai-cells = <0>;
-		compatible = "zte,zx296702-i2s";
+		compatible = "zte,zx296718-i2s", "zte,zx296702-i2s";
 		reg = <0x0b005000 0x1000>;
-		clocks = <&lsp0clk ZX296702_I2S0_DIV>;
-		clock-names = "tx";
+		clocks = <&audiocrm AUDIO_I2S0_WCLK>, <&audiocrm AUDIO_I2S0_PCLK>;
+		clock-names = "wclk", "pclk";
 		interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
 		dmas = <&dma 5>, <&dma 6>;
 		dma-names = "tx", "rx";
-- 
2.7.4

[toc] | [prev] | [next] | [standalone]


#1577234 — Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromRob Herring <robh@kernel.org>
Date2017-02-09 02:00 +0100
SubjectRe: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t8LfA-7rl-5@gated-at.bofh.it>
In reply to#1576264
On Wed, Feb 08, 2017 at 11:02:34AM +0800, Baoyou Xie wrote:
> ZTE's zx2967 I2S controller driver introduces pclk, this
> patch documents this fact.

Now we have the same subject for patches 2 and 3.

Personally, I'd prefer "dt-bindings: sound: blah...", but not enough to 
argue with Mark about it. If that is not the prefix, then it should at 
least have "binding" in the subject.

> Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
> ---
>  Documentation/devicetree/bindings/sound/zte,zx-i2s.txt | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt b/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt
> index 7e5aa6f..77390c0 100644
> --- a/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt
> +++ b/Documentation/devicetree/bindings/sound/zte,zx-i2s.txt
> @@ -4,7 +4,7 @@ Required properties:
>   - compatible : Must be "zte,zx296702-i2s"
>   - reg : Must contain I2S core's registers location and length
>   - clocks : Pairs of phandle and specifier referencing the controller's clocks.
> - - clock-names: "tx" for the clock to the I2S interface.
> + - clock-names: "wclk" for the wclk, "pclk" for the pclk to the I2S interface.
>   - dmas: Pairs of phandle and specifier for the DMA channel that is used by
>     the core. The core expects two dma channels for transmit.
>   - dma-names : Must be "tx" and "rx"
> @@ -15,13 +15,17 @@ please check:
>  	* clock/clock-bindings.txt
>  	* dma/dma.txt
>  
> +Please note that ZTE ZX296702 I2S controller driver is compatible for zx296702
> +and zx296718, so compatible string might be set as follow:
> +	"zte,zx296718-i2s", "zte,zx296702-i2s"

Drop this and just make compatible doc above like this:

   - compatible : Must be one of:
	"zte,zx296718-i2s", "zte,zx296702-i2s"
	"zte,zx296702-i2s"

> +
>  Example:
>  	i2s0: i2s0@0b005000 {

BTW, this should be "i2s@0b005000". No trailing 0 on i2s and no leading 
0 on unit-address.

>  		#sound-dai-cells = <0>;
> -		compatible = "zte,zx296702-i2s";
> +		compatible = "zte,zx296718-i2s", "zte,zx296702-i2s";
>  		reg = <0x0b005000 0x1000>;
> -		clocks = <&lsp0clk ZX296702_I2S0_DIV>;
> -		clock-names = "tx";
> +		clocks = <&audiocrm AUDIO_I2S0_WCLK>, <&audiocrm AUDIO_I2S0_PCLK>;
> +		clock-names = "wclk", "pclk";
>  		interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
>  		dmas = <&dma 5>, <&dma 6>;
>  		dma-names = "tx", "rx";
> -- 
> 2.7.4
> 

[toc] | [prev] | [next] | [standalone]


#1577249 — Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromShawn Guo <shawnguo@kernel.org>
Date2017-02-09 02:50 +0100
SubjectRe: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t8M1X-7XZ-3@gated-at.bofh.it>
In reply to#1577234
On Wed, Feb 08, 2017 at 06:52:07PM -0600, Rob Herring wrote:
> On Wed, Feb 08, 2017 at 11:02:34AM +0800, Baoyou Xie wrote:
> > ZTE's zx2967 I2S controller driver introduces pclk, this
> > patch documents this fact.
> 
> Now we have the same subject for patches 2 and 3.
> 
> Personally, I'd prefer "dt-bindings: sound: blah...", but not enough to 
> argue with Mark about it. If that is not the prefix, then it should at 
> least have "binding" in the subject.

+1

The prefix of sound bindings is quite unique from other subsystems.
Looking at the prefix of Documentation/devicetree/bindings/sound/
commits, I'm always confused whether it's a pure binding commit
or just submitted as part of the driver patch.  I feel that we
kinda lose the point of having a prefix.

Just my 2 cents.

Shawn

[toc] | [prev] | [next] | [standalone]


#1577514 — Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromMark Brown <broonie@kernel.org>
Date2017-02-09 13:10 +0100
SubjectRe: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t8VHX-5Z8-9@gated-at.bofh.it>
In reply to#1577249

[Multipart message — attachments visible in raw view] — view raw

On Thu, Feb 09, 2017 at 09:48:09AM +0800, Shawn Guo wrote:
> On Wed, Feb 08, 2017 at 06:52:07PM -0600, Rob Herring wrote:

> > Personally, I'd prefer "dt-bindings: sound: blah...", but not enough to 
> > argue with Mark about it. If that is not the prefix, then it should at 
> > least have "binding" in the subject.

> +1

> The prefix of sound bindings is quite unique from other subsystems.
> Looking at the prefix of Documentation/devicetree/bindings/sound/
> commits, I'm always confused whether it's a pure binding commit
> or just submitted as part of the driver patch.  I feel that we
> kinda lose the point of having a prefix.

That's really not what's happening reliably - other subsystems also seem
to have a bunch of things prefixed for the subsystem and the DT specific
prefixes are all over the shop, people seem to be making them up at
random.  If DT binding review were something that reliably and
consistently happened and didn't affect the subsystem I'd perhaps buy it
but for run of the mill stuff it seems like getting things reviewed in
the subsystem is more important.

[toc] | [prev] | [next] | [standalone]


#1578006 — Re: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family

FromRob Herring <robh@kernel.org>
Date2017-02-09 23:50 +0100
SubjectRe: [PATCH v3 2/3] ASoC: zx-i2s: introduce pclk for zx2967 family
Message-ID<t95Hk-3CN-17@gated-at.bofh.it>
In reply to#1577514
On Thu, Feb 9, 2017 at 6:06 AM, Mark Brown <broonie@kernel.org> wrote:
> On Thu, Feb 09, 2017 at 09:48:09AM +0800, Shawn Guo wrote:
>> On Wed, Feb 08, 2017 at 06:52:07PM -0600, Rob Herring wrote:
>
>> > Personally, I'd prefer "dt-bindings: sound: blah...", but not enough to
>> > argue with Mark about it. If that is not the prefix, then it should at
>> > least have "binding" in the subject.
>
>> +1
>
>> The prefix of sound bindings is quite unique from other subsystems.
>> Looking at the prefix of Documentation/devicetree/bindings/sound/
>> commits, I'm always confused whether it's a pure binding commit
>> or just submitted as part of the driver patch.  I feel that we
>> kinda lose the point of having a prefix.
>
> That's really not what's happening reliably - other subsystems also seem
> to have a bunch of things prefixed for the subsystem and the DT specific
> prefixes are all over the shop, people seem to be making them up at
> random.

I'm getting more picky about the subject and splitting bindings to a
separate patch, but generally only when I have other comments. And
I've had to get some maintainers to stop combining commits as they
apply them.

Maybe get_maintainers.pl could spit out the desired prefix and
checkpatch check it. Evidently, running "git log --oneline" is too
hard.

> If DT binding review were something that reliably and
> consistently happened and didn't affect the subsystem I'd perhaps buy it
> but for run of the mill stuff it seems like getting things reviewed in
> the subsystem is more important.

I review everything that gets sent to the DT list unless maintainers
apply it first. I'll still comment afterwards if there's anything
significant (or I missed that it was applied :)).

Rob

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web