linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning
@ 2019-06-21 16:21 Krzysztof Kozlowski
  2019-06-21 16:21 ` [PATCH v2 2/4] drm/lima: Reduce the amount of logs on deferred probe Krzysztof Kozlowski
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2019-06-21 16:21 UTC (permalink / raw)
  To: Qiang Yu, David Airlie, Daniel Vetter, dri-devel, lima, linux-kernel
  Cc: Krzysztof Kozlowski

Mark long numbers with ULL to silence the Smatch warning:

    drivers/gpu/drm/lima/lima_device.c:314:32: warning: constant 0x100000000 is so big it is long long

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Reviewed-by: Qiang Yu <yuq825@gmail.com>

---

Changes since v1:
1. Add reviewed-by tag
---
 drivers/gpu/drm/lima/lima_vm.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/lima/lima_vm.h b/drivers/gpu/drm/lima/lima_vm.h
index caee2f8a29b4..e0bdedcf14dd 100644
--- a/drivers/gpu/drm/lima/lima_vm.h
+++ b/drivers/gpu/drm/lima/lima_vm.h
@@ -15,9 +15,9 @@
 #define LIMA_VM_NUM_PT_PER_BT (1 << LIMA_VM_NUM_PT_PER_BT_SHIFT)
 #define LIMA_VM_NUM_BT (LIMA_PAGE_ENT_NUM >> LIMA_VM_NUM_PT_PER_BT_SHIFT)
 
-#define LIMA_VA_RESERVE_START  0xFFF00000
+#define LIMA_VA_RESERVE_START  0x0FFF00000ULL
 #define LIMA_VA_RESERVE_DLBU   LIMA_VA_RESERVE_START
-#define LIMA_VA_RESERVE_END    0x100000000
+#define LIMA_VA_RESERVE_END    0x100000000ULL
 
 struct lima_device;
 
-- 
2.17.1


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

* [PATCH v2 2/4] drm/lima: Reduce the amount of logs on deferred probe
  2019-06-21 16:21 [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Krzysztof Kozlowski
@ 2019-06-21 16:21 ` Krzysztof Kozlowski
  2019-06-21 16:21 ` [PATCH v2 3/4] drm/lima: Reduce number of PTR_ERR() calls Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2019-06-21 16:21 UTC (permalink / raw)
  To: Qiang Yu, David Airlie, Daniel Vetter, dri-devel, lima, linux-kernel
  Cc: Krzysztof Kozlowski

There is no point to print deferred probe (and its failures to get
resources) as an error.  For example getting a regulator causes three
unneeded error messages:

    lima 13000000.gpu: failed to get regulator: -517
    lima 13000000.gpu: regulator init fail -517
    lima 13000000.gpu: Fatal error during GPU init

Also do not print clock rates before the initialization finishes
because they will be duplicated after deferral.  Each probe step already
prints error so remove the final error message "Fatal error during GPU
init".

In case of multiple probe tries this would pollute the dmesg.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

---

Changes since v1:
1. None
---
 drivers/gpu/drm/lima/lima_device.c | 17 ++++++-----------
 drivers/gpu/drm/lima/lima_drv.c    |  4 +---
 2 files changed, 7 insertions(+), 14 deletions(-)

diff --git a/drivers/gpu/drm/lima/lima_device.c b/drivers/gpu/drm/lima/lima_device.c
index 570d0e93f9a9..bb2eaa4f370e 100644
--- a/drivers/gpu/drm/lima/lima_device.c
+++ b/drivers/gpu/drm/lima/lima_device.c
@@ -80,7 +80,6 @@ const char *lima_ip_name(struct lima_ip *ip)
 static int lima_clk_init(struct lima_device *dev)
 {
 	int err;
-	unsigned long bus_rate, gpu_rate;
 
 	dev->clk_bus = devm_clk_get(dev->dev, "bus");
 	if (IS_ERR(dev->clk_bus)) {
@@ -94,12 +93,6 @@ static int lima_clk_init(struct lima_device *dev)
 		return PTR_ERR(dev->clk_gpu);
 	}
 
-	bus_rate = clk_get_rate(dev->clk_bus);
-	dev_info(dev->dev, "bus rate = %lu\n", bus_rate);
-
-	gpu_rate = clk_get_rate(dev->clk_gpu);
-	dev_info(dev->dev, "mod rate = %lu", gpu_rate);
-
 	err = clk_prepare_enable(dev->clk_bus);
 	if (err)
 		return err;
@@ -145,7 +138,8 @@ static int lima_regulator_init(struct lima_device *dev)
 		dev->regulator = NULL;
 		if (ret == -ENODEV)
 			return 0;
-		dev_err(dev->dev, "failed to get regulator: %d\n", ret);
+		if (ret != -EPROBE_DEFER)
+			dev_err(dev->dev, "failed to get regulator: %d\n", ret);
 		return ret;
 	}
 
@@ -297,10 +291,8 @@ int lima_device_init(struct lima_device *ldev)
 	}
 
 	err = lima_regulator_init(ldev);
-	if (err) {
-		dev_err(ldev->dev, "regulator init fail %d\n", err);
+	if (err)
 		goto err_out0;
-	}
 
 	ldev->empty_vm = lima_vm_create(ldev);
 	if (!ldev->empty_vm) {
@@ -343,6 +335,9 @@ int lima_device_init(struct lima_device *ldev)
 	if (err)
 		goto err_out5;
 
+	dev_info(ldev->dev, "bus rate = %lu\n", clk_get_rate(ldev->clk_bus));
+	dev_info(ldev->dev, "mod rate = %lu", clk_get_rate(ldev->clk_gpu));
+
 	return 0;
 
 err_out5:
diff --git a/drivers/gpu/drm/lima/lima_drv.c b/drivers/gpu/drm/lima/lima_drv.c
index b29c26cd13b2..cebc44592e47 100644
--- a/drivers/gpu/drm/lima/lima_drv.c
+++ b/drivers/gpu/drm/lima/lima_drv.c
@@ -307,10 +307,8 @@ static int lima_pdev_probe(struct platform_device *pdev)
 	ldev->ddev = ddev;
 
 	err = lima_device_init(ldev);
-	if (err) {
-		dev_err(&pdev->dev, "Fatal error during GPU init\n");
+	if (err)
 		goto err_out1;
-	}
 
 	/*
 	 * Register the DRM device with the core and the connectors with
-- 
2.17.1


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

* [PATCH v2 3/4] drm/lima: Reduce number of PTR_ERR() calls
  2019-06-21 16:21 [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Krzysztof Kozlowski
  2019-06-21 16:21 ` [PATCH v2 2/4] drm/lima: Reduce the amount of logs on deferred probe Krzysztof Kozlowski
@ 2019-06-21 16:21 ` Krzysztof Kozlowski
  2019-06-21 16:21 ` [PATCH v2 4/4] drm/lima: Reduce the amount of logs on deferred probe of clocks and reset controller Krzysztof Kozlowski
  2019-06-23  2:42 ` [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Qiang Yu
  3 siblings, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2019-06-21 16:21 UTC (permalink / raw)
  To: Qiang Yu, David Airlie, Daniel Vetter, dri-devel, lima, linux-kernel
  Cc: Krzysztof Kozlowski

Store the PTR_ERR() result in local variable in clock init error path.
This makes the code consistent with similar section in regulator init
code.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

---

Changes since v1:
1. New patch
---
 drivers/gpu/drm/lima/lima_device.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/lima/lima_device.c b/drivers/gpu/drm/lima/lima_device.c
index bb2eaa4f370e..9a6cd879bcb1 100644
--- a/drivers/gpu/drm/lima/lima_device.c
+++ b/drivers/gpu/drm/lima/lima_device.c
@@ -83,14 +83,16 @@ static int lima_clk_init(struct lima_device *dev)
 
 	dev->clk_bus = devm_clk_get(dev->dev, "bus");
 	if (IS_ERR(dev->clk_bus)) {
-		dev_err(dev->dev, "get bus clk failed %ld\n", PTR_ERR(dev->clk_bus));
-		return PTR_ERR(dev->clk_bus);
+		err = PTR_ERR(dev->clk_bus);
+		dev_err(dev->dev, "get bus clk failed %d\n", err);
+		return err;
 	}
 
 	dev->clk_gpu = devm_clk_get(dev->dev, "core");
 	if (IS_ERR(dev->clk_gpu)) {
-		dev_err(dev->dev, "get core clk failed %ld\n", PTR_ERR(dev->clk_gpu));
-		return PTR_ERR(dev->clk_gpu);
+		err = PTR_ERR(dev->clk_gpu);
+		dev_err(dev->dev, "get core clk failed %d\n", err);
+		return err;
 	}
 
 	err = clk_prepare_enable(dev->clk_bus);
-- 
2.17.1


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

* [PATCH v2 4/4] drm/lima: Reduce the amount of logs on deferred probe of clocks and reset controller
  2019-06-21 16:21 [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Krzysztof Kozlowski
  2019-06-21 16:21 ` [PATCH v2 2/4] drm/lima: Reduce the amount of logs on deferred probe Krzysztof Kozlowski
  2019-06-21 16:21 ` [PATCH v2 3/4] drm/lima: Reduce number of PTR_ERR() calls Krzysztof Kozlowski
@ 2019-06-21 16:21 ` Krzysztof Kozlowski
  2019-06-23  2:42 ` [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Qiang Yu
  3 siblings, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2019-06-21 16:21 UTC (permalink / raw)
  To: Qiang Yu, David Airlie, Daniel Vetter, dri-devel, lima, linux-kernel
  Cc: Krzysztof Kozlowski

There is no point to print deferred probe messages as errors.  Adjust
the printks for error paths of obtaining clocks and reset controller.
This removes the error message of lima_clk_init() call in favor or
specific failure messages inside.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

---

Changes since v1:
1. New patch
---
 drivers/gpu/drm/lima/lima_device.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/lima/lima_device.c b/drivers/gpu/drm/lima/lima_device.c
index 9a6cd879bcb1..d86b8d81a483 100644
--- a/drivers/gpu/drm/lima/lima_device.c
+++ b/drivers/gpu/drm/lima/lima_device.c
@@ -84,14 +84,16 @@ static int lima_clk_init(struct lima_device *dev)
 	dev->clk_bus = devm_clk_get(dev->dev, "bus");
 	if (IS_ERR(dev->clk_bus)) {
 		err = PTR_ERR(dev->clk_bus);
-		dev_err(dev->dev, "get bus clk failed %d\n", err);
+		if (err != -EPROBE_DEFER)
+			dev_err(dev->dev, "get bus clk failed %d\n", err);
 		return err;
 	}
 
 	dev->clk_gpu = devm_clk_get(dev->dev, "core");
 	if (IS_ERR(dev->clk_gpu)) {
 		err = PTR_ERR(dev->clk_gpu);
-		dev_err(dev->dev, "get core clk failed %d\n", err);
+		if (err != -EPROBE_DEFER)
+			dev_err(dev->dev, "get core clk failed %d\n", err);
 		return err;
 	}
 
@@ -106,11 +108,17 @@ static int lima_clk_init(struct lima_device *dev)
 	dev->reset = devm_reset_control_get_optional(dev->dev, NULL);
 	if (IS_ERR(dev->reset)) {
 		err = PTR_ERR(dev->reset);
+		if (err != -EPROBE_DEFER)
+			dev_err(dev->dev, "get reset controller failed %d\n",
+				err);
 		goto error_out1;
 	} else if (dev->reset != NULL) {
 		err = reset_control_deassert(dev->reset);
-		if (err)
+		if (err) {
+			dev_err(dev->dev,
+				"reset controller deassert failed %d\n", err);
 			goto error_out1;
+		}
 	}
 
 	return 0;
@@ -287,10 +295,8 @@ int lima_device_init(struct lima_device *ldev)
 	dma_set_coherent_mask(ldev->dev, DMA_BIT_MASK(32));
 
 	err = lima_clk_init(ldev);
-	if (err) {
-		dev_err(ldev->dev, "clk init fail %d\n", err);
+	if (err)
 		return err;
-	}
 
 	err = lima_regulator_init(ldev);
 	if (err)
-- 
2.17.1


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

* Re: [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning
  2019-06-21 16:21 [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2019-06-21 16:21 ` [PATCH v2 4/4] drm/lima: Reduce the amount of logs on deferred probe of clocks and reset controller Krzysztof Kozlowski
@ 2019-06-23  2:42 ` Qiang Yu
  3 siblings, 0 replies; 5+ messages in thread
From: Qiang Yu @ 2019-06-23  2:42 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: David Airlie, Daniel Vetter, dri-devel, lima, Linux Kernel Mailing List

Thanks. This patch series are:
Reviewed-by: Qiang Yu <yuq825@gmail.com>

I'll apply them to drm-misc-next.

Regards,
Qiang

On Sat, Jun 22, 2019 at 12:21 AM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> Mark long numbers with ULL to silence the Smatch warning:
>
>     drivers/gpu/drm/lima/lima_device.c:314:32: warning: constant 0x100000000 is so big it is long long
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> Reviewed-by: Qiang Yu <yuq825@gmail.com>
>
> ---
>
> Changes since v1:
> 1. Add reviewed-by tag
> ---
>  drivers/gpu/drm/lima/lima_vm.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/lima/lima_vm.h b/drivers/gpu/drm/lima/lima_vm.h
> index caee2f8a29b4..e0bdedcf14dd 100644
> --- a/drivers/gpu/drm/lima/lima_vm.h
> +++ b/drivers/gpu/drm/lima/lima_vm.h
> @@ -15,9 +15,9 @@
>  #define LIMA_VM_NUM_PT_PER_BT (1 << LIMA_VM_NUM_PT_PER_BT_SHIFT)
>  #define LIMA_VM_NUM_BT (LIMA_PAGE_ENT_NUM >> LIMA_VM_NUM_PT_PER_BT_SHIFT)
>
> -#define LIMA_VA_RESERVE_START  0xFFF00000
> +#define LIMA_VA_RESERVE_START  0x0FFF00000ULL
>  #define LIMA_VA_RESERVE_DLBU   LIMA_VA_RESERVE_START
> -#define LIMA_VA_RESERVE_END    0x100000000
> +#define LIMA_VA_RESERVE_END    0x100000000ULL
>
>  struct lima_device;
>
> --
> 2.17.1
>

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

end of thread, other threads:[~2019-06-23  2:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-21 16:21 [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Krzysztof Kozlowski
2019-06-21 16:21 ` [PATCH v2 2/4] drm/lima: Reduce the amount of logs on deferred probe Krzysztof Kozlowski
2019-06-21 16:21 ` [PATCH v2 3/4] drm/lima: Reduce number of PTR_ERR() calls Krzysztof Kozlowski
2019-06-21 16:21 ` [PATCH v2 4/4] drm/lima: Reduce the amount of logs on deferred probe of clocks and reset controller Krzysztof Kozlowski
2019-06-23  2:42 ` [PATCH v2 1/4] drm/lima: Mark 64-bit number as ULL to silence Smatch warning Qiang Yu

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).