diff mbox series

[v4,8/8] memory: gpmc-omap: "gpmc,device-width" DT property is optional

Message ID 20210914122705.15421-9-rogerq@kernel.org
State New
Headers show
Series dt-bindings: memory-controllers: ti,gpmc: Convert to yaml | expand

Commit Message

Roger Quadros Sept. 14, 2021, 12:27 p.m. UTC
Check for valid gpmc,device-width, nand-bus-width and bank-width
at one place. Default to 8-bit width if none present.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
---
 drivers/memory/omap-gpmc.c | 41 ++++++++++++++++++++++++--------------
 1 file changed, 26 insertions(+), 15 deletions(-)

Comments

Krzysztof Kozlowski Sept. 15, 2021, 7:12 a.m. UTC | #1
On 14/09/2021 14:27, Roger Quadros wrote:
> Check for valid gpmc,device-width, nand-bus-width and bank-width
> at one place. Default to 8-bit width if none present.
> 
> Signed-off-by: Roger Quadros <rogerq@kernel.org>
> ---
>  drivers/memory/omap-gpmc.c | 41 ++++++++++++++++++++++++--------------
>  1 file changed, 26 insertions(+), 15 deletions(-)
> 

All the comments from v3 are still applicable because it seems you
ignored them. Please respond to them.

It's the second patch where the reviewer's comments got lost, so it
creates rather poor impression.


Best regards,
Krzysztof
Roger Quadros Sept. 15, 2021, 8:47 a.m. UTC | #2
Hi Krzysztof,

On 15/09/2021 10:12, Krzysztof Kozlowski wrote:
> On 14/09/2021 14:27, Roger Quadros wrote:

>> Check for valid gpmc,device-width, nand-bus-width and bank-width

>> at one place. Default to 8-bit width if none present.

>>

>> Signed-off-by: Roger Quadros <rogerq@kernel.org>

>> ---

>>  drivers/memory/omap-gpmc.c | 41 ++++++++++++++++++++++++--------------

>>  1 file changed, 26 insertions(+), 15 deletions(-)

>>

> 

> All the comments from v3 are still applicable because it seems you

> ignored them. Please respond to them.

> 

> It's the second patch where the reviewer's comments got lost, so it

> creates rather poor impression.


I was wondering what comments and then realized that gmail server has put
all your messages into spam folder.

I'm very sorry about that. I will address your comments ASAP.

cheers,
-roger
Krzysztof Kozlowski Sept. 15, 2021, 9:05 a.m. UTC | #3
On 15/09/2021 10:47, Roger Quadros wrote:
> Hi Krzysztof,

> 

> On 15/09/2021 10:12, Krzysztof Kozlowski wrote:

>> On 14/09/2021 14:27, Roger Quadros wrote:

>>> Check for valid gpmc,device-width, nand-bus-width and bank-width

>>> at one place. Default to 8-bit width if none present.

>>>

>>> Signed-off-by: Roger Quadros <rogerq@kernel.org>

>>> ---

>>>  drivers/memory/omap-gpmc.c | 41 ++++++++++++++++++++++++--------------

>>>  1 file changed, 26 insertions(+), 15 deletions(-)

>>>

>>

>> All the comments from v3 are still applicable because it seems you

>> ignored them. Please respond to them.

>>

>> It's the second patch where the reviewer's comments got lost, so it

>> creates rather poor impression.

> 

> I was wondering what comments and then realized that gmail server has put

> all your messages into spam folder.

> 

> I'm very sorry about that. I will address your comments ASAP.


Oops. There were just two emails from me for v3. Can you send me
(privately) the headers from my emails so I can investigate why they
ended up on Spam?

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
index f80c2ea39ca4..32d7c665f33c 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -2171,10 +2171,8 @@  static int gpmc_probe_generic_child(struct platform_device *pdev,
 		}
 	}
 
-	if (of_device_is_compatible(child, "ti,omap2-nand")) {
-		/* NAND specific setup */
-		val = 8;
-		of_property_read_u32(child, "nand-bus-width", &val);
+	/* DT node can have "nand-bus-width" or "bank-width" or "gpmc,device-width" */
+	if (!of_property_read_u32(child, "nand-bus-width", &val)) {
 		switch (val) {
 		case 8:
 			gpmc_s.device_width = GPMC_DEVWIDTH_8BIT;
@@ -2183,24 +2181,37 @@  static int gpmc_probe_generic_child(struct platform_device *pdev,
 			gpmc_s.device_width = GPMC_DEVWIDTH_16BIT;
 			break;
 		default:
-			dev_err(&pdev->dev, "%pOFn: invalid 'nand-bus-width'\n",
-				child);
+			dev_err(&pdev->dev,
+				"%pOFn: invalid 'nand-bus-width':%d\n", child, val);
+			ret = -EINVAL;
+			goto err;
+		}
+	} else if (!of_property_read_u32(child, "bank-width", &val)) {
+		if (val != 1 && val != 2) {
+			dev_err(&pdev->dev,
+				"%pOFn: invalid 'bank-width':%d\n", child, val);
 			ret = -EINVAL;
 			goto err;
 		}
+		gpmc_s.device_width = val;
+	} else if (!of_property_read_u32(child, "gpmc,device-width", &val)) {
+		if (val != 1 && val != 2) {
+			dev_err(&pdev->dev,
+				"%pOFn: invalid 'gpmc,device-width':%d\n", child, val);
+			ret = -EINVAL;
+			goto err;
+		}
+		gpmc_s.device_width = val;
+	} else {
+		/* default to 8-bit */
+		gpmc_s.device_width = GPMC_DEVWIDTH_8BIT;
+	}
 
+	if (of_device_is_compatible(child, "ti,omap2-nand")) {
+		/* NAND specific setup */
 		/* disable write protect */
 		gpmc_configure(GPMC_CONFIG_WP, 0);
 		gpmc_s.device_nand = true;
-	} else {
-		ret = of_property_read_u32(child, "bank-width",
-					   &gpmc_s.device_width);
-		if (ret < 0 && !gpmc_s.device_width) {
-			dev_err(&pdev->dev,
-				"%pOF has no 'gpmc,device-width' property\n",
-				child);
-			goto err;
-		}
 	}
 
 	/* Reserve wait pin if it is required and valid */