From: Jonathan Bakker <xc-racer2@live.ca> To: Miquel Raynal <miquel.raynal@bootlin.com> Cc: "Kyungmin Park" <kyungmin.park@samsung.com>, "Richard Weinberger" <richard@nod.at>, "Vignesh Raghavendra" <vigneshr@ti.com>, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, "Tomasz Figa" <tomasz.figa@gmail.com>, "Paweł Chmiel" <pawel.mikolaj.chmiel@gmail.com>, "Jonathan Bakker" <xc-racer2@live.ca> Subject: [PATCH 4/5] mtd: onenand: samsung: Make sure that bus clock is enabled Date: Fri, 22 Apr 2022 20:46:21 -0700 [thread overview] Message-ID: <CY4PR04MB056777077970A6935BC6349BCBF69@CY4PR04MB0567.namprd04.prod.outlook.com> (raw) In-Reply-To: <20220423034622.366696-1-xc-racer2@live.ca> From: Tomasz Figa <tomasz.figa@gmail.com> This patch adds basic handling of controller bus clock to make sure that in device probe it is enabled and device can operate correctly. The clock is optional and driver behavior is identical as before this patch if not provided. Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Paweł Chmiel <pawel.mikolaj.chmiel@gmail.com> Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com> Signed-off-by: Jonathan Bakker <xc-racer2@live.ca> --- drivers/mtd/nand/onenand/onenand_samsung.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/mtd/nand/onenand/onenand_samsung.c b/drivers/mtd/nand/onenand/onenand_samsung.c index a3ef4add865a..62014f8d27b6 100644 --- a/drivers/mtd/nand/onenand/onenand_samsung.c +++ b/drivers/mtd/nand/onenand/onenand_samsung.c @@ -11,6 +11,7 @@ * S5PC110: use DMA */ +#include <linux/clk.h> #include <linux/module.h> #include <linux/platform_device.h> #include <linux/sched.h> @@ -122,6 +123,7 @@ enum soc_type { struct s3c_onenand { struct mtd_info *mtd; struct platform_device *pdev; + struct clk *clk_bus; enum soc_type type; void __iomem *ctrl_base; void __iomem *chip_base; @@ -914,6 +916,10 @@ static int s3c_onenand_probe(struct platform_device *pdev) } } + onenand->clk_bus = devm_clk_get(&pdev->dev, "bus"); + if (!IS_ERR(onenand->clk_bus)) + clk_prepare_enable(onenand->clk_bus); + err = onenand_scan(mtd, 1); if (err) return err; @@ -945,6 +951,8 @@ static int s3c_onenand_remove(struct platform_device *pdev) struct mtd_info *mtd = platform_get_drvdata(pdev); onenand_release(mtd); + if (!IS_ERR(onenand->clk_bus)) + clk_disable_unprepare(onenand->clk_bus); return 0; } -- 2.30.2
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Bakker <xc-racer2@live.ca> To: Miquel Raynal <miquel.raynal@bootlin.com> Cc: "Kyungmin Park" <kyungmin.park@samsung.com>, "Richard Weinberger" <richard@nod.at>, "Vignesh Raghavendra" <vigneshr@ti.com>, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, "Tomasz Figa" <tomasz.figa@gmail.com>, "Paweł Chmiel" <pawel.mikolaj.chmiel@gmail.com>, "Jonathan Bakker" <xc-racer2@live.ca> Subject: [PATCH 4/5] mtd: onenand: samsung: Make sure that bus clock is enabled Date: Fri, 22 Apr 2022 20:46:21 -0700 [thread overview] Message-ID: <CY4PR04MB056777077970A6935BC6349BCBF69@CY4PR04MB0567.namprd04.prod.outlook.com> (raw) In-Reply-To: <20220423034622.366696-1-xc-racer2@live.ca> From: Tomasz Figa <tomasz.figa@gmail.com> This patch adds basic handling of controller bus clock to make sure that in device probe it is enabled and device can operate correctly. The clock is optional and driver behavior is identical as before this patch if not provided. Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Paweł Chmiel <pawel.mikolaj.chmiel@gmail.com> Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com> Signed-off-by: Jonathan Bakker <xc-racer2@live.ca> --- drivers/mtd/nand/onenand/onenand_samsung.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/mtd/nand/onenand/onenand_samsung.c b/drivers/mtd/nand/onenand/onenand_samsung.c index a3ef4add865a..62014f8d27b6 100644 --- a/drivers/mtd/nand/onenand/onenand_samsung.c +++ b/drivers/mtd/nand/onenand/onenand_samsung.c @@ -11,6 +11,7 @@ * S5PC110: use DMA */ +#include <linux/clk.h> #include <linux/module.h> #include <linux/platform_device.h> #include <linux/sched.h> @@ -122,6 +123,7 @@ enum soc_type { struct s3c_onenand { struct mtd_info *mtd; struct platform_device *pdev; + struct clk *clk_bus; enum soc_type type; void __iomem *ctrl_base; void __iomem *chip_base; @@ -914,6 +916,10 @@ static int s3c_onenand_probe(struct platform_device *pdev) } } + onenand->clk_bus = devm_clk_get(&pdev->dev, "bus"); + if (!IS_ERR(onenand->clk_bus)) + clk_prepare_enable(onenand->clk_bus); + err = onenand_scan(mtd, 1); if (err) return err; @@ -945,6 +951,8 @@ static int s3c_onenand_remove(struct platform_device *pdev) struct mtd_info *mtd = platform_get_drvdata(pdev); onenand_release(mtd); + if (!IS_ERR(onenand->clk_bus)) + clk_disable_unprepare(onenand->clk_bus); return 0; } -- 2.30.2 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply other threads:[~2022-04-23 3:47 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <20220423034524.366612-1-xc-racer2@live.ca> 2022-04-23 3:46 ` [PATCH 2/5] mtd: onenand: samsung: Set name field of mtd_info struct Jonathan Bakker 2022-04-23 3:46 ` Jonathan Bakker [not found] ` <20220423034622.366696-1-xc-racer2@live.ca> 2022-04-23 3:46 ` [PATCH 3/5] mtd: onenand: samsung: Unify resource order for controller variants Jonathan Bakker 2022-04-23 3:46 ` Jonathan Bakker 2022-04-24 11:05 ` Krzysztof Kozlowski 2022-04-24 11:05 ` Krzysztof Kozlowski 2022-04-23 3:46 ` Jonathan Bakker [this message] 2022-04-23 3:46 ` [PATCH 4/5] mtd: onenand: samsung: Make sure that bus clock is enabled Jonathan Bakker 2022-04-24 11:06 ` Krzysztof Kozlowski 2022-04-24 11:06 ` Krzysztof Kozlowski 2022-04-23 3:46 ` [PATCH 5/5] mtd: onenand: samsung: Add device tree support Jonathan Bakker 2022-04-23 3:46 ` Jonathan Bakker 2022-04-24 11:12 ` Krzysztof Kozlowski 2022-04-24 11:12 ` Krzysztof Kozlowski
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CY4PR04MB056777077970A6935BC6349BCBF69@CY4PR04MB0567.namprd04.prod.outlook.com \ --to=xc-racer2@live.ca \ --cc=kyungmin.park@samsung.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mtd@lists.infradead.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=miquel.raynal@bootlin.com \ --cc=pawel.mikolaj.chmiel@gmail.com \ --cc=richard@nod.at \ --cc=tomasz.figa@gmail.com \ --cc=vigneshr@ti.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.