From: avinashphilip@ti.com (Philip Avinash)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 04/11] ARM: davinci: da8xx: creation of gpio platform device
Date: Wed, 22 May 2013 12:40:27 +0530 [thread overview]
Message-ID: <1369206634-6778-5-git-send-email-avinashphilip@ti.com> (raw)
In-Reply-To: <1369206634-6778-1-git-send-email-avinashphilip@ti.com>
From: KV Sujith <sujithkv@ti.com>
gpio controller resource information being associated with
davinci_soc_info structure and not created any device. Hence davinci
gpio didn't fall under proper device model. This patch creates gpio
davinci as a platform device for da8xx platforms.
- Add Memory and IRQ resources for DA8xx.
- Register GPIO platform driver for DA8xx.
- Add da8xx_register_gpio API to create platform device for da8xx
platforms.
Signed-off-by: KV Sujith <sujithkv@ti.com>
Signed-off-by: Philip Avinash <avinashphilip@ti.com>
---
arch/arm/mach-davinci/devices-da8xx.c | 26 ++++++++++++++++++++++++++
arch/arm/mach-davinci/include/mach/da8xx.h | 1 +
2 files changed, 27 insertions(+)
diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c
index bf57252..892ad86 100644
--- a/arch/arm/mach-davinci/devices-da8xx.c
+++ b/arch/arm/mach-davinci/devices-da8xx.c
@@ -640,6 +640,32 @@ int __init da8xx_register_lcdc(struct da8xx_lcdc_platform_data *pdata)
return platform_device_register(&da8xx_lcdc_device);
}
+static struct resource da8xx_gpio_resources[] = {
+ { /* registers */
+ .start = DA8XX_GPIO_BASE,
+ .end = DA8XX_GPIO_BASE + SZ_4K - 1,
+ .flags = IORESOURCE_MEM,
+ },
+ { /* interrupt */
+ .start = IRQ_DA8XX_GPIO0,
+ .end = IRQ_DA8XX_GPIO8,
+ .flags = IORESOURCE_IRQ,
+ },
+};
+
+static struct platform_device da8xx_gpio_device = {
+ .name = "davinci_gpio",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(da8xx_gpio_resources),
+ .resource = da8xx_gpio_resources,
+};
+
+int __init da8xx_register_gpio(void *pdata)
+{
+ da8xx_gpio_device.dev.platform_data = pdata;
+ return platform_device_register(&da8xx_gpio_device);
+}
+
static struct resource da8xx_mmcsd0_resources[] = {
{ /* registers */
.start = DA8XX_MMCSD0_BASE,
diff --git a/arch/arm/mach-davinci/include/mach/da8xx.h b/arch/arm/mach-davinci/include/mach/da8xx.h
index 2e1c9ea..aa66690 100644
--- a/arch/arm/mach-davinci/include/mach/da8xx.h
+++ b/arch/arm/mach-davinci/include/mach/da8xx.h
@@ -96,6 +96,7 @@ int da8xx_register_mmcsd0(struct davinci_mmc_config *config);
int da850_register_mmcsd1(struct davinci_mmc_config *config);
void __init da8xx_register_mcasp(int id, struct snd_platform_data *pdata);
int da8xx_register_rtc(void);
+int da8xx_register_gpio(void *pdata);
int da850_register_cpufreq(char *async_clk);
int da8xx_register_cpuidle(void);
void __iomem * __init da8xx_get_mem_ctlr(void);
--
1.7.9.5
next prev parent reply other threads:[~2013-05-22 7:10 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-22 7:10 [PATCH 00/11] Convert GPIO Davinci to platform driver Philip Avinash
2013-05-22 7:10 ` [PATCH 01/11] ARM: davinci: GPIO: Add platform data structure Philip Avinash
2013-05-30 18:06 ` Linus Walleij
2013-06-11 10:36 ` Sekhar Nori
2013-06-11 11:10 ` Sergei Shtylyov
2013-06-11 12:53 ` Philip, Avinash
2013-05-22 7:10 ` [PATCH 02/11] gpio: davinci: coding style correction Philip Avinash
2013-05-22 12:59 ` Sergei Shtylyov
2013-05-23 6:27 ` Philip, Avinash
2013-05-22 14:40 ` Russell King - ARM Linux
2013-05-23 6:27 ` Philip, Avinash
2013-06-11 11:42 ` Sekhar Nori
2013-05-22 7:10 ` [PATCH 03/11] gpio: davinci: Modify to platform driver Philip Avinash
2013-05-30 18:12 ` Linus Walleij
2013-06-11 11:56 ` Sekhar Nori
2013-06-11 12:55 ` Philip, Avinash
2013-06-12 7:43 ` Sekhar Nori
2013-06-12 12:10 ` Philip, Avinash
2013-06-13 6:17 ` Sekhar Nori
2013-06-13 7:32 ` Philip, Avinash
2013-06-13 8:29 ` Sekhar Nori
2013-06-13 9:18 ` Philip, Avinash
2013-05-22 7:10 ` Philip Avinash [this message]
2013-05-30 18:14 ` [PATCH 04/11] ARM: davinci: da8xx: creation of gpio platform device Linus Walleij
2013-05-22 7:10 ` [PATCH 05/11] ARM: davinci: creation of gpio platform device for dm platforms Philip Avinash
2013-05-30 18:15 ` Linus Walleij
2013-05-22 7:10 ` [PATCH 06/11] ARM: davinci: da8xx: gpio device creation Philip Avinash
2013-05-30 18:16 ` Linus Walleij
2013-05-22 7:10 ` [PATCH 07/11] ARM: davinci: create davinci gpio device for dm platforms Philip Avinash
2013-05-30 18:16 ` Linus Walleij
2013-05-22 7:10 ` [PATCH 08/11] ARM: davinci: start using gpiolib support Philip Avinash
2013-05-30 18:19 ` Linus Walleij
2013-05-22 7:10 ` [PATCH 09/11] gpio: davinci: DT changes for driver Philip Avinash
2013-05-30 18:25 ` Linus Walleij
2013-06-10 11:45 ` Philip, Avinash
2013-05-22 7:10 ` [PATCH 10/11] ARM: davinci: da850: add GPIO DT entries Philip Avinash
2013-05-22 7:10 ` [PATCH 11/11] ARM: davinci: da850 evm: add GPIO DT data Philip Avinash
2013-05-30 18:26 ` Linus Walleij
2013-05-30 18:04 ` [PATCH 00/11] Convert GPIO Davinci to platform driver Linus Walleij
2013-06-07 8:10 ` Sekhar Nori
2013-06-10 9:02 ` Philip, Avinash
2013-06-11 4:39 ` Sekhar Nori
2013-06-11 6:49 ` Philip, Avinash
2013-06-11 11:40 ` Sekhar Nori
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=1369206634-6778-5-git-send-email-avinashphilip@ti.com \
--to=avinashphilip@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).