* [PATCH 0/2] allow to use named resources @ 2012-10-17 13:03 Jean-Christophe PLAGNIOL-VILLARD 2012-10-17 13:05 ` [PATCH 1/2] driver: add support for requesting resource by name Jean-Christophe PLAGNIOL-VILLARD ` (2 more replies) 0 siblings, 3 replies; 6+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-17 13:03 UTC (permalink / raw) To: barebox Hi, add helper to use named resources and use it on nomadik The following changes since commit f99ea5c9d8cfddf3a1d6b181d0dbb26e06a86d2b: ARM samsung S5P: Enable board support (2012-10-15 19:47:01 +0200) are available in the git repository at: git://git.jcrosoft.org/barebox.git delivery/nomadik for you to fetch changes up to 0bcfbe7caab23ba5c78c964e91c43456e66cd9aa: nomadik_nand: switch to named resource (2012-10-17 12:09:16 +0800) ---------------------------------------------------------------- Jean-Christophe PLAGNIOL-VILLARD (2): driver: add support for requesting resource by name nomadik_nand: switch to named resource arch/arm/boards/nhk8815/setup.c | 3 +++ drivers/base/driver.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ drivers/mtd/nand/nomadik_nand.c | 6 +++--- include/driver.h | 15 +++++++++++++++ 4 files changed, 67 insertions(+), 3 deletions(-) Best Regards, J. _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] driver: add support for requesting resource by name 2012-10-17 13:03 [PATCH 0/2] allow to use named resources Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-17 13:05 ` Jean-Christophe PLAGNIOL-VILLARD 2012-10-17 13:05 ` [PATCH 2/2] nomadik_nand: switch to named resource Jean-Christophe PLAGNIOL-VILLARD 2012-10-23 8:44 ` [PATCH 0/2] allow to use named resources Sascha Hauer 2012-10-27 12:38 ` Sascha Hauer 2 siblings, 1 reply; 6+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-17 13:05 UTC (permalink / raw) To: barebox this will allow to avoid issue with resource order Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> --- drivers/base/driver.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ include/driver.h | 15 +++++++++++++++ 2 files changed, 61 insertions(+) diff --git a/drivers/base/driver.c b/drivers/base/driver.c index 64fe289..d0d20ce 100644 --- a/drivers/base/driver.c +++ b/drivers/base/driver.c @@ -247,6 +247,52 @@ void *dev_get_mem_region(struct device_d *dev, int num) } EXPORT_SYMBOL(dev_get_mem_region); +struct resource *dev_get_resource_by_name(struct device_d *dev, + const char *name) +{ + int i; + + for (i = 0; i < dev->num_resources; i++) { + struct resource *res = &dev->resource[i]; + if (resource_type(res) != IORESOURCE_MEM) + continue; + if (!res->name) + continue; + if (!strcmp(name, res->name)) + return res; + } + + return NULL; +} + +void *dev_get_mem_region_by_name(struct device_d *dev, const char *name) +{ + struct resource *res; + + res = dev_get_resource_by_name(dev, name); + if (!res) + return NULL; + + return (void __force *)res->start; +} +EXPORT_SYMBOL(dev_get_mem_region_by_name); + +void __iomem *dev_request_mem_region_by_name(struct device_d *dev, const char *name) +{ + struct resource *res; + + res = dev_get_resource_by_name(dev, name); + if (!res) + return NULL; + + res = request_iomem_region(dev_name(dev), res->start, res->end); + if (!res) + return NULL; + + return (void __force __iomem *)res->start; +} +EXPORT_SYMBOL(dev_request_mem_region_by_name); + void __iomem *dev_request_mem_region(struct device_d *dev, int num) { struct resource *res; diff --git a/include/driver.h b/include/driver.h index 4918054..f8d815c 100644 --- a/include/driver.h +++ b/include/driver.h @@ -193,6 +193,21 @@ static inline const char *dev_name(const struct device_d *dev) } /* + * get resource base 'name' for a device + */ +struct resource *dev_get_resource_by_name(struct device_d *dev, + const char *name); +/* + * get register base 'name' for a device + */ +void *dev_get_mem_region_by_name(struct device_d *dev, const char *name); + +/* + * exlusively request register base 'name' for a device + */ +void __iomem *dev_request_mem_region_by_name(struct device_d *dev, + const char *name); +/* * get register base 'num' for a device */ void *dev_get_mem_region(struct device_d *dev, int num); -- 1.7.10.4 _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 2/2] nomadik_nand: switch to named resource 2012-10-17 13:05 ` [PATCH 1/2] driver: add support for requesting resource by name Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-17 13:05 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 0 replies; 6+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-17 13:05 UTC (permalink / raw) To: barebox Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> --- arch/arm/boards/nhk8815/setup.c | 3 +++ drivers/mtd/nand/nomadik_nand.c | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/arch/arm/boards/nhk8815/setup.c b/arch/arm/boards/nhk8815/setup.c index 7f93ecb..0c85b25 100644 --- a/arch/arm/boards/nhk8815/setup.c +++ b/arch/arm/boards/nhk8815/setup.c @@ -50,14 +50,17 @@ static struct nomadik_nand_platform_data nhk8815_nand_data = { static struct resource nhk8815_nand_resources[] = { { + .name = "nand_addr", .start = NAND_IO_ADDR, .end = NAND_IO_ADDR + 0xfff, .flags = IORESOURCE_MEM, }, { + .name = "nand_cmd", .start = NAND_IO_CMD, .end = NAND_IO_CMD + 0xfff, .flags = IORESOURCE_MEM, }, { + .name = "nand_data", .start = NAND_IO_DATA, .end = NAND_IO_DATA + 0xfff, .flags = IORESOURCE_MEM, diff --git a/drivers/mtd/nand/nomadik_nand.c b/drivers/mtd/nand/nomadik_nand.c index 6fc9398..b19d6c6 100644 --- a/drivers/mtd/nand/nomadik_nand.c +++ b/drivers/mtd/nand/nomadik_nand.c @@ -189,8 +189,8 @@ static int nomadik_nand_probe(struct device_d *dev) goto err; } - host->cmd_va = dev_request_mem_region(dev, 1); - host->addr_va = dev_request_mem_region(dev, 0); + host->cmd_va = dev_request_mem_region_by_name(dev, "nand_cmd"); + host->addr_va = dev_request_mem_region_by_name(dev, "nand_addr"); /* Link all private pointers */ mtd = &host->mtd; @@ -198,7 +198,7 @@ static int nomadik_nand_probe(struct device_d *dev) mtd->priv = nand; nand->priv = host; - nand->IO_ADDR_W = nand->IO_ADDR_R = dev_request_mem_region(dev, 2); + nand->IO_ADDR_W = nand->IO_ADDR_R = dev_request_mem_region_by_name(dev, "nand_data"); nand->cmd_ctrl = nomadik_cmd_ctrl; nand->ecc.mode = NAND_ECC_HW; -- 1.7.10.4 _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] allow to use named resources 2012-10-17 13:03 [PATCH 0/2] allow to use named resources Jean-Christophe PLAGNIOL-VILLARD 2012-10-17 13:05 ` [PATCH 1/2] driver: add support for requesting resource by name Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-23 8:44 ` Sascha Hauer 2012-10-23 10:22 ` Jean-Christophe PLAGNIOL-VILLARD 2012-10-27 12:38 ` Sascha Hauer 2 siblings, 1 reply; 6+ messages in thread From: Sascha Hauer @ 2012-10-23 8:44 UTC (permalink / raw) To: Jean-Christophe PLAGNIOL-VILLARD; +Cc: barebox On Wed, Oct 17, 2012 at 03:03:20PM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote: > Hi, > > add helper to use named resources and use it on nomadik Do we need this? devicetree does not have named resources, so with devicetree support we are back to some arbitrary numbered resource anyway. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] allow to use named resources 2012-10-23 8:44 ` [PATCH 0/2] allow to use named resources Sascha Hauer @ 2012-10-23 10:22 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 0 replies; 6+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2012-10-23 10:22 UTC (permalink / raw) To: Sascha Hauer; +Cc: barebox On 10:44 Tue 23 Oct , Sascha Hauer wrote: > On Wed, Oct 17, 2012 at 03:03:20PM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote: > > Hi, > > > > add helper to use named resources and use it on nomadik > > Do we need this? devicetree does not have named resources, so with > devicetree support we are back to some arbitrary numbered resource > anyway. > devicetree does have it I use on spear and I'm going to ues on at91 too for spear13xx.dtsi fsmc: flash@b0000000 { compatible = "st,spear600-fsmc-nand"; #address-cells = <1>; #size-cells = <1>; reg = <0xb0000000 0x1000 /* FSMC Register */ 0xb0800000 0x0010>; /* NAND Base */ reg-names = "fsmc_regs", "nand_data"; interrupts = <0 20 0x4 0 21 0x4 0 22 0x4 0 23 0x4>; st,ale-off = <0x20000>; st,cle-off = <0x10000>; status = "disabled"; }; Best Regards, J. > Sascha > > -- > Pengutronix e.K. | | > Industrial Linux Solutions | http://www.pengutronix.de/ | > Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] allow to use named resources 2012-10-17 13:03 [PATCH 0/2] allow to use named resources Jean-Christophe PLAGNIOL-VILLARD 2012-10-17 13:05 ` [PATCH 1/2] driver: add support for requesting resource by name Jean-Christophe PLAGNIOL-VILLARD 2012-10-23 8:44 ` [PATCH 0/2] allow to use named resources Sascha Hauer @ 2012-10-27 12:38 ` Sascha Hauer 2 siblings, 0 replies; 6+ messages in thread From: Sascha Hauer @ 2012-10-27 12:38 UTC (permalink / raw) To: Jean-Christophe PLAGNIOL-VILLARD; +Cc: barebox On Wed, Oct 17, 2012 at 03:03:20PM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote: > Hi, > > add helper to use named resources and use it on nomadik > > The following changes since commit f99ea5c9d8cfddf3a1d6b181d0dbb26e06a86d2b: > > ARM samsung S5P: Enable board support (2012-10-15 19:47:01 +0200) > > are available in the git repository at: > > git://git.jcrosoft.org/barebox.git delivery/nomadik > > for you to fetch changes up to 0bcfbe7caab23ba5c78c964e91c43456e66cd9aa: > > nomadik_nand: switch to named resource (2012-10-17 12:09:16 +0800) Applied, thanks Sascha > > ---------------------------------------------------------------- > Jean-Christophe PLAGNIOL-VILLARD (2): > driver: add support for requesting resource by name > nomadik_nand: switch to named resource > > arch/arm/boards/nhk8815/setup.c | 3 +++ > drivers/base/driver.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ > drivers/mtd/nand/nomadik_nand.c | 6 +++--- > include/driver.h | 15 +++++++++++++++ > 4 files changed, 67 insertions(+), 3 deletions(-) > > Best Regards, > J. > > _______________________________________________ > barebox mailing list > barebox@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/barebox > -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-10-27 12:38 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2012-10-17 13:03 [PATCH 0/2] allow to use named resources Jean-Christophe PLAGNIOL-VILLARD 2012-10-17 13:05 ` [PATCH 1/2] driver: add support for requesting resource by name Jean-Christophe PLAGNIOL-VILLARD 2012-10-17 13:05 ` [PATCH 2/2] nomadik_nand: switch to named resource Jean-Christophe PLAGNIOL-VILLARD 2012-10-23 8:44 ` [PATCH 0/2] allow to use named resources Sascha Hauer 2012-10-23 10:22 ` Jean-Christophe PLAGNIOL-VILLARD 2012-10-27 12:38 ` Sascha Hauer
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox