linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage
@ 2020-06-15 13:53 Charles Keepax
  2020-06-15 13:53 ` [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error Charles Keepax
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Charles Keepax @ 2020-06-15 13:53 UTC (permalink / raw)
  To: lee.jones; +Cc: s.nawrocki, linux-kernel, patches

BUG_ON macros are generally frowned upon when the issue isn't super
critical, the kernel can certainly carry on with the 32k clock on the
CODEC in a bad state so change the BUG_ON to a WARN_ON.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
---

No changes since v1.

Thanks,
Charles

 drivers/mfd/arizona-core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
index f73cf76d1373d..19e0bc3c0683e 100644
--- a/drivers/mfd/arizona-core.c
+++ b/drivers/mfd/arizona-core.c
@@ -80,7 +80,7 @@ int arizona_clk32k_disable(struct arizona *arizona)
 {
 	mutex_lock(&arizona->clk_lock);
 
-	BUG_ON(arizona->clk32k_ref <= 0);
+	WARN_ON(arizona->clk32k_ref <= 0);
 
 	arizona->clk32k_ref--;
 
-- 
2.11.0


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

* [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error
  2020-06-15 13:53 [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Charles Keepax
@ 2020-06-15 13:53 ` Charles Keepax
  2020-06-16  8:00   ` Lee Jones
  2020-06-15 13:53 ` [PATCH v2 3/4] mfd: madera: Remove unused forward declaration of madera_codec_pdata Charles Keepax
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 8+ messages in thread
From: Charles Keepax @ 2020-06-15 13:53 UTC (permalink / raw)
  To: lee.jones; +Cc: s.nawrocki, linux-kernel, patches

Whilst it doesn't matter if the internal 32k clock register settings
are cleaned up on exit, as the part will be turned off losing any
settings, hence the driver hasn't historially bothered. The external
clock should however be cleaned up, as it could cause clocks to be
left on, and will at best generate a warning on unbind.

Add clean up on both the probe error path and unbind for the 32k
clock.

Fixes: cdd8da8cc66b ("mfd: arizona: Add gating of external MCLKn clocks")
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
---

No changes since v1.

Thanks,
Charles

 drivers/mfd/arizona-core.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
index 19e0bc3c0683e..000cb82023e35 100644
--- a/drivers/mfd/arizona-core.c
+++ b/drivers/mfd/arizona-core.c
@@ -1426,6 +1426,15 @@ int arizona_dev_init(struct arizona *arizona)
 	arizona_irq_exit(arizona);
 err_pm:
 	pm_runtime_disable(arizona->dev);
+
+	switch (arizona->pdata.clk32k_src) {
+	case ARIZONA_32KZ_MCLK1:
+	case ARIZONA_32KZ_MCLK2:
+		arizona_clk32k_disable(arizona);
+		break;
+	default:
+		break;
+	}
 err_reset:
 	arizona_enable_reset(arizona);
 	regulator_disable(arizona->dcvdd);
@@ -1448,6 +1457,15 @@ int arizona_dev_exit(struct arizona *arizona)
 	regulator_disable(arizona->dcvdd);
 	regulator_put(arizona->dcvdd);
 
+	switch (arizona->pdata.clk32k_src) {
+	case ARIZONA_32KZ_MCLK1:
+	case ARIZONA_32KZ_MCLK2:
+		arizona_clk32k_disable(arizona);
+		break;
+	default:
+		break;
+	}
+
 	mfd_remove_devices(arizona->dev);
 	arizona_free_irq(arizona, ARIZONA_IRQ_UNDERCLOCKED, arizona);
 	arizona_free_irq(arizona, ARIZONA_IRQ_OVERCLOCKED, arizona);
-- 
2.11.0


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

* [PATCH v2 3/4] mfd: madera: Remove unused forward declaration of madera_codec_pdata
  2020-06-15 13:53 [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Charles Keepax
  2020-06-15 13:53 ` [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error Charles Keepax
@ 2020-06-15 13:53 ` Charles Keepax
  2020-06-16  8:01   ` Lee Jones
  2020-06-15 13:53 ` [PATCH v2 4/4] mfd: madera: Fix minor formatting issues Charles Keepax
  2020-06-16  8:01 ` [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Lee Jones
  3 siblings, 1 reply; 8+ messages in thread
From: Charles Keepax @ 2020-06-15 13:53 UTC (permalink / raw)
  To: lee.jones; +Cc: s.nawrocki, linux-kernel, patches

This forward declaration is redundant since the header including the
full data structure is included.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
---

New since v1 of the series.

Thanks,
Charles

 include/linux/mfd/madera/pdata.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/include/linux/mfd/madera/pdata.h b/include/linux/mfd/madera/pdata.h
index fa9595dd42ba5..601cbbc10370c 100644
--- a/include/linux/mfd/madera/pdata.h
+++ b/include/linux/mfd/madera/pdata.h
@@ -21,7 +21,6 @@
 
 struct gpio_desc;
 struct pinctrl_map;
-struct madera_codec_pdata;
 
 /**
  * struct madera_pdata - Configuration data for Madera devices
-- 
2.11.0


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

* [PATCH v2 4/4] mfd: madera: Fix minor formatting issues
  2020-06-15 13:53 [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Charles Keepax
  2020-06-15 13:53 ` [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error Charles Keepax
  2020-06-15 13:53 ` [PATCH v2 3/4] mfd: madera: Remove unused forward declaration of madera_codec_pdata Charles Keepax
@ 2020-06-15 13:53 ` Charles Keepax
  2020-06-16  8:02   ` Lee Jones
  2020-06-16  8:01 ` [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Lee Jones
  3 siblings, 1 reply; 8+ messages in thread
From: Charles Keepax @ 2020-06-15 13:53 UTC (permalink / raw)
  To: lee.jones; +Cc: s.nawrocki, linux-kernel, patches

The mfd_cell structures inconsistently use commas on single entries in
the table, make this consistent by always using a comma. Also remove an
extra blank line.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
---

Changes since v1:
 - Added some additional commit description.
 - Move the removing and unused forward declaration into a new patch.

Thanks,
Charles

 drivers/mfd/madera-core.c | 12 ++++++------
 drivers/mfd/madera-i2c.c  |  1 -
 2 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/mfd/madera-core.c b/drivers/mfd/madera-core.c
index 7e0835cb062b1..4724c1a01a39f 100644
--- a/drivers/mfd/madera-core.c
+++ b/drivers/mfd/madera-core.c
@@ -44,7 +44,7 @@ static const char * const madera_core_supplies[] = {
 };
 
 static const struct mfd_cell madera_ldo1_devs[] = {
-	{ .name = "madera-ldo1" },
+	{ .name = "madera-ldo1", },
 };
 
 static const char * const cs47l15_supplies[] = {
@@ -55,8 +55,8 @@ static const char * const cs47l15_supplies[] = {
 
 static const struct mfd_cell cs47l15_devs[] = {
 	{ .name = "madera-pinctrl", },
-	{ .name = "madera-irq" },
-	{ .name = "madera-gpio" },
+	{ .name = "madera-irq", },
+	{ .name = "madera-gpio", },
 	{
 		.name = "madera-extcon",
 		.parent_supplies = cs47l15_supplies,
@@ -108,7 +108,7 @@ static const char * const cs47l85_supplies[] = {
 static const struct mfd_cell cs47l85_devs[] = {
 	{ .name = "madera-pinctrl", },
 	{ .name = "madera-irq", },
-	{ .name = "madera-micsupp" },
+	{ .name = "madera-micsupp", },
 	{ .name = "madera-gpio", },
 	{
 		.name = "madera-extcon",
@@ -155,10 +155,10 @@ static const char * const cs47l92_supplies[] = {
 };
 
 static const struct mfd_cell cs47l92_devs[] = {
-	{ .name = "madera-pinctrl" },
+	{ .name = "madera-pinctrl", },
 	{ .name = "madera-irq", },
 	{ .name = "madera-micsupp", },
-	{ .name = "madera-gpio" },
+	{ .name = "madera-gpio", },
 	{
 		.name = "madera-extcon",
 		.parent_supplies = cs47l92_supplies,
diff --git a/drivers/mfd/madera-i2c.c b/drivers/mfd/madera-i2c.c
index 6b965eb034b6c..7df5b9ba58554 100644
--- a/drivers/mfd/madera-i2c.c
+++ b/drivers/mfd/madera-i2c.c
@@ -88,7 +88,6 @@ static int madera_i2c_probe(struct i2c_client *i2c,
 	if (!madera)
 		return -ENOMEM;
 
-
 	madera->regmap = devm_regmap_init_i2c(i2c, regmap_16bit_config);
 	if (IS_ERR(madera->regmap)) {
 		ret = PTR_ERR(madera->regmap);
-- 
2.11.0


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

* Re: [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error
  2020-06-15 13:53 ` [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error Charles Keepax
@ 2020-06-16  8:00   ` Lee Jones
  0 siblings, 0 replies; 8+ messages in thread
From: Lee Jones @ 2020-06-16  8:00 UTC (permalink / raw)
  To: Charles Keepax; +Cc: s.nawrocki, linux-kernel, patches

On Mon, 15 Jun 2020, Charles Keepax wrote:

> Whilst it doesn't matter if the internal 32k clock register settings
> are cleaned up on exit, as the part will be turned off losing any
> settings, hence the driver hasn't historially bothered. The external
> clock should however be cleaned up, as it could cause clocks to be
> left on, and will at best generate a warning on unbind.
> 
> Add clean up on both the probe error path and unbind for the 32k
> clock.
> 
> Fixes: cdd8da8cc66b ("mfd: arizona: Add gating of external MCLKn clocks")
> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
> ---
> 
> No changes since v1.
> 
> Thanks,
> Charles
> 
>  drivers/mfd/arizona-core.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)

Applied, thanks.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* Re: [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage
  2020-06-15 13:53 [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Charles Keepax
                   ` (2 preceding siblings ...)
  2020-06-15 13:53 ` [PATCH v2 4/4] mfd: madera: Fix minor formatting issues Charles Keepax
@ 2020-06-16  8:01 ` Lee Jones
  3 siblings, 0 replies; 8+ messages in thread
From: Lee Jones @ 2020-06-16  8:01 UTC (permalink / raw)
  To: Charles Keepax; +Cc: s.nawrocki, linux-kernel, patches

On Mon, 15 Jun 2020, Charles Keepax wrote:

> BUG_ON macros are generally frowned upon when the issue isn't super
> critical, the kernel can certainly carry on with the 32k clock on the
> CODEC in a bad state so change the BUG_ON to a WARN_ON.
> 
> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
> ---
> 
> No changes since v1.
> 
> Thanks,
> Charles
> 
>  drivers/mfd/arizona-core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* Re: [PATCH v2 3/4] mfd: madera: Remove unused forward declaration of madera_codec_pdata
  2020-06-15 13:53 ` [PATCH v2 3/4] mfd: madera: Remove unused forward declaration of madera_codec_pdata Charles Keepax
@ 2020-06-16  8:01   ` Lee Jones
  0 siblings, 0 replies; 8+ messages in thread
From: Lee Jones @ 2020-06-16  8:01 UTC (permalink / raw)
  To: Charles Keepax; +Cc: s.nawrocki, linux-kernel, patches

On Mon, 15 Jun 2020, Charles Keepax wrote:

> This forward declaration is redundant since the header including the
> full data structure is included.
> 
> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
> ---
> 
> New since v1 of the series.
> 
> Thanks,
> Charles
> 
>  include/linux/mfd/madera/pdata.h | 1 -
>  1 file changed, 1 deletion(-)

Applied, thanks.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* Re: [PATCH v2 4/4] mfd: madera: Fix minor formatting issues
  2020-06-15 13:53 ` [PATCH v2 4/4] mfd: madera: Fix minor formatting issues Charles Keepax
@ 2020-06-16  8:02   ` Lee Jones
  0 siblings, 0 replies; 8+ messages in thread
From: Lee Jones @ 2020-06-16  8:02 UTC (permalink / raw)
  To: Charles Keepax; +Cc: s.nawrocki, linux-kernel, patches

On Mon, 15 Jun 2020, Charles Keepax wrote:

> The mfd_cell structures inconsistently use commas on single entries in
> the table, make this consistent by always using a comma. Also remove an
> extra blank line.
> 
> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
> ---
> 
> Changes since v1:
>  - Added some additional commit description.
>  - Move the removing and unused forward declaration into a new patch.
> 
> Thanks,
> Charles
> 
>  drivers/mfd/madera-core.c | 12 ++++++------
>  drivers/mfd/madera-i2c.c  |  1 -
>  2 files changed, 6 insertions(+), 7 deletions(-)

Applied, thanks.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

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

end of thread, other threads:[~2020-06-16  8:02 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-15 13:53 [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Charles Keepax
2020-06-15 13:53 ` [PATCH v2 2/4] mfd: arizona: Ensure 32k clock is put on driver unbind and error Charles Keepax
2020-06-16  8:00   ` Lee Jones
2020-06-15 13:53 ` [PATCH v2 3/4] mfd: madera: Remove unused forward declaration of madera_codec_pdata Charles Keepax
2020-06-16  8:01   ` Lee Jones
2020-06-15 13:53 ` [PATCH v2 4/4] mfd: madera: Fix minor formatting issues Charles Keepax
2020-06-16  8:02   ` Lee Jones
2020-06-16  8:01 ` [PATCH v2 1/4] mfd: arizona: Remove BUG_ON usage Lee Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).