Messages in this thread | | | Date | Tue, 28 Jul 2020 14:52:03 +0200 | From | Paul Cercueil <> | Subject | Re: [PATCH] memory: jz4780_nemc: Only request IO memory the driver will use |
| |
Le mar. 28 juil. 2020 à 11:21, Krzysztof Kozlowski <krzk@kernel.org> a écrit : > On Mon, Jul 27, 2020 at 06:20:34PM +0200, Paul Cercueil wrote: >> The driver only uses the registers up to offset 0x54. Since the >> EFUSE >> registers are in the middle of the NEMC registers, we only request >> the registers we will use for now - that way the EFUSE driver can >> probe too. >> >> Tested-by: H. Nikolaus Schaller <hns@goldelico.com> >> Signed-off-by: Paul Cercueil <paul@crapouillou.net> >> --- >> drivers/memory/jz4780-nemc.c | 15 ++++++++++++++- >> 1 file changed, 14 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/memory/jz4780-nemc.c >> b/drivers/memory/jz4780-nemc.c >> index b232ed279fc3..647267ea8c63 100644 >> --- a/drivers/memory/jz4780-nemc.c >> +++ b/drivers/memory/jz4780-nemc.c >> @@ -8,6 +8,7 @@ >> >> #include <linux/clk.h> >> #include <linux/init.h> >> +#include <linux/io.h> >> #include <linux/math64.h> >> #include <linux/of.h> >> #include <linux/of_address.h> >> @@ -288,7 +289,19 @@ static int jz4780_nemc_probe(struct >> platform_device *pdev) >> nemc->dev = dev; >> >> res = platform_get_resource(pdev, IORESOURCE_MEM, 0); >> - nemc->base = devm_ioremap_resource(dev, res); >> + >> + /* >> + * The driver only uses the registers up to offset 0x54. Since >> the EFUSE >> + * registers are in the middle of the NEMC registers, we only >> request >> + * the registers we will use for now - that way the EFUSE driver >> can >> + * probe too. >> + */ >> + if (!devm_request_mem_region(dev, res->start, 0x54, >> dev_name(dev))) { >> + dev_err(dev, "unable to request I/O memory region\n"); >> + return -EBUSY; >> + } >> + >> + nemc->base = devm_ioremap(dev, res->start, resource_size(res)); > > Shouldn't you map only 0x54 size as well?
I can do that.
Cheers, -Paul
| |