lkml.org 
[lkml]   [2011]   [Aug]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 07/13] gpio/tegra: Convert to a platform device
    Date
    Signed-off-by: Stephen Warren <swarren@nvidia.com>
    ---
    drivers/gpio/gpio-tegra.c | 25 ++++++++++++++-----------
    1 files changed, 14 insertions(+), 11 deletions(-)

    diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c
    index df64536..4da4839 100644
    --- a/drivers/gpio/gpio-tegra.c
    +++ b/drivers/gpio/gpio-tegra.c
    @@ -20,10 +20,10 @@
    #include <linux/init.h>
    #include <linux/irq.h>
    #include <linux/interrupt.h>
    -
    #include <linux/io.h>
    #include <linux/gpio.h>
    #include <linux/of.h>
    +#include <linux/platform_device.h>

    #include <asm/mach/irq.h>

    @@ -332,7 +332,7 @@ static struct irq_chip tegra_gpio_irq_chip = {
    */
    static struct lock_class_key gpio_lock_class;

    -static int __init tegra_gpio_init(void)
    +static int __init tegra_gpio_probe(struct platform_device *pdev)
    {
    struct tegra_gpio_bank *bank;
    int gpio;
    @@ -346,15 +346,6 @@ static int __init tegra_gpio_init(void)
    }
    }

    -#ifdef CONFIG_OF_GPIO
    - /*
    - * This isn't ideal, but it gets things hooked up until this
    - * driver is converted into a platform_device
    - */
    - tegra_gpio_chip.of_node = of_find_compatible_node(NULL, NULL,
    - "nvidia,tegra20-gpio");
    -#endif /* CONFIG_OF_GPIO */
    -
    gpiochip_add(&tegra_gpio_chip);

    for (gpio = 0; gpio < TEGRA_NR_GPIOS; gpio++) {
    @@ -383,6 +374,18 @@ static int __init tegra_gpio_init(void)
    return 0;
    }

    +static struct platform_driver tegra_gpio_driver = {
    + .driver = {
    + .name = "tegra-gpio",
    + .owner = THIS_MODULE,
    + },
    + .probe = tegra_gpio_probe,
    +};
    +
    +static int __init tegra_gpio_init(void)
    +{
    + return platform_driver_register(&tegra_gpio_driver);
    +}
    postcore_initcall(tegra_gpio_init);

    void __init tegra_gpio_config(struct tegra_gpio_table *table, int num)
    --
    1.7.0.4


    \
     
     \ /
      Last update: 2011-08-26 01:49    [W:7.050 / U:0.428 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site