Re: [PATCH 4/5] mtd: rawnand: davinci: Add clock resource

From: Bastien Curutchet
Date: Wed Oct 30 2024 - 08:22:35 EST


Hi Krzysztof,

On 10/30/24 12:17 PM, Krzysztof Kozlowski wrote:
On 30/10/2024 11:47, Bastien Curutchet wrote:
NAND controller has a reference clock but the driver doesn't use it.

Add a struct clock in the struct davinci_nand_info so it can be used
to compute timings.

Signed-off-by: Bastien Curutchet <bastien.curutchet@xxxxxxxxxxx>
---
drivers/mtd/nand/raw/davinci_nand.c | 9 +++++++++

Where are the bindings?


The NAND controller bindings are in Documentation/devicetree/bindings/mtd/davinci-nand.txt but this clock is defined in the AEMIF bindings in Documentation/devicetree/bindings/memory-controllers/ti-aemif.txt

1 file changed, 9 insertions(+)

diff --git a/drivers/mtd/nand/raw/davinci_nand.c b/drivers/mtd/nand/raw/davinci_nand.c
index 3c0efbdd789e..11dc30c29957 100644
--- a/drivers/mtd/nand/raw/davinci_nand.c
+++ b/drivers/mtd/nand/raw/davinci_nand.c
@@ -10,6 +10,7 @@
* Dirk Behme <Dirk.Behme@xxxxxxxxx>
*/
+#include <linux/clk.h>
#include <linux/err.h>
#include <linux/iopoll.h>
#include <linux/kernel.h>
@@ -117,6 +118,8 @@ struct davinci_nand_info {
uint32_t mask_cle;
uint32_t core_chipsel;
+
+ struct clk *clk;
};
static DEFINE_SPINLOCK(davinci_nand_lock);
@@ -822,6 +825,12 @@ static int nand_davinci_probe(struct platform_device *pdev)
return -EADDRNOTAVAIL;
}
+ info->clk = devm_clk_get(&pdev->dev, "aemif");
+ if (IS_ERR(info->clk)) {
+ dev_err(&pdev->dev, "failed to get clock %ld", PTR_ERR(info->clk));

Syntax is return dev_err_probe.


Ok, I'll correct this in V2


Best regards,
Bastien