2008-06-18 17:32:46

by Philipp Zabel

[permalink] [raw]
Subject: [PATCH] asic3: move probe functions into __init section

Potentially free some memory by moving the _probe functions into __init.

Signed-off-by: Philipp Zabel <[email protected]>
---
drivers/mfd/asic3.c | 9 ++++-----
1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/mfd/asic3.c b/drivers/mfd/asic3.c
index ef8a492..7d3488d 100644
--- a/drivers/mfd/asic3.c
+++ b/drivers/mfd/asic3.c
@@ -295,7 +295,7 @@ static struct irq_chip asic3_irq_chip = {
.unmask = asic3_unmask_irq,
};

-static int asic3_irq_probe(struct platform_device *pdev)
+static int __init asic3_irq_probe(struct platform_device *pdev)
{
struct asic3 *asic = platform_get_drvdata(pdev);
unsigned long clksel = 0;
@@ -443,7 +443,7 @@ void asic3_gpio_set_value(struct asic3 *asic, unsigned gpio, int val)
}
EXPORT_SYMBOL(asic3_gpio_set_value);

-static int asic3_gpio_probe(struct platform_device *pdev)
+static int __init asic3_gpio_probe(struct platform_device *pdev)
{
struct asic3_platform_data *pdata = pdev->dev.platform_data;
struct asic3 *asic = platform_get_drvdata(pdev);
@@ -482,7 +482,7 @@ static void asic3_gpio_remove(struct platform_device *pdev)


/* Core */
-static int asic3_probe(struct platform_device *pdev)
+static int __init asic3_probe(struct platform_device *pdev)
{
struct asic3_platform_data *pdata = pdev->dev.platform_data;
struct asic3 *asic;
@@ -573,7 +573,6 @@ static struct platform_driver asic3_device_driver = {
.driver = {
.name = "asic3",
},
- .probe = asic3_probe,
.remove = __devexit_p(asic3_remove),
.shutdown = asic3_shutdown,
};
@@ -581,7 +580,7 @@ static struct platform_driver asic3_device_driver = {
static int __init asic3_init(void)
{
int retval = 0;
- retval = platform_driver_register(&asic3_device_driver);
+ retval = platform_driver_probe(&asic3_device_driver, asic3_probe);
return retval;
}

--
1.5.5.4


2008-06-18 21:51:16

by Samuel Ortiz

[permalink] [raw]
Subject: Re: [PATCH] asic3: move probe functions into __init section

Hi Philipp,

On Wed, Jun 18, 2008 at 07:32:29PM +0200, Philipp Zabel wrote:
> Potentially free some memory by moving the _probe functions into __init.
>
> Signed-off-by: Philipp Zabel <[email protected]>
This one looks good to me, I'll submit push it to -mm as I'd prefer asic3
patches to go through there first.

Cheers,
Samuel.


> ---
> drivers/mfd/asic3.c | 9 ++++-----
> 1 files changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/mfd/asic3.c b/drivers/mfd/asic3.c
> index ef8a492..7d3488d 100644
> --- a/drivers/mfd/asic3.c
> +++ b/drivers/mfd/asic3.c
> @@ -295,7 +295,7 @@ static struct irq_chip asic3_irq_chip = {
> .unmask = asic3_unmask_irq,
> };
>
> -static int asic3_irq_probe(struct platform_device *pdev)
> +static int __init asic3_irq_probe(struct platform_device *pdev)
> {
> struct asic3 *asic = platform_get_drvdata(pdev);
> unsigned long clksel = 0;
> @@ -443,7 +443,7 @@ void asic3_gpio_set_value(struct asic3 *asic, unsigned gpio, int val)
> }
> EXPORT_SYMBOL(asic3_gpio_set_value);
>
> -static int asic3_gpio_probe(struct platform_device *pdev)
> +static int __init asic3_gpio_probe(struct platform_device *pdev)
> {
> struct asic3_platform_data *pdata = pdev->dev.platform_data;
> struct asic3 *asic = platform_get_drvdata(pdev);
> @@ -482,7 +482,7 @@ static void asic3_gpio_remove(struct platform_device *pdev)
>
>
> /* Core */
> -static int asic3_probe(struct platform_device *pdev)
> +static int __init asic3_probe(struct platform_device *pdev)
> {
> struct asic3_platform_data *pdata = pdev->dev.platform_data;
> struct asic3 *asic;
> @@ -573,7 +573,6 @@ static struct platform_driver asic3_device_driver = {
> .driver = {
> .name = "asic3",
> },
> - .probe = asic3_probe,
> .remove = __devexit_p(asic3_remove),
> .shutdown = asic3_shutdown,
> };
> @@ -581,7 +580,7 @@ static struct platform_driver asic3_device_driver = {
> static int __init asic3_init(void)
> {
> int retval = 0;
> - retval = platform_driver_register(&asic3_device_driver);
> + retval = platform_driver_probe(&asic3_device_driver, asic3_probe);
> return retval;
> }
>
> --
> 1.5.5.4
>
>

2008-06-18 23:27:04

by Philipp Zabel

[permalink] [raw]
Subject: Re: [PATCH] asic3: move probe functions into __init section

On Wed, Jun 18, 2008 at 11:20 PM, Samuel Ortiz <[email protected]> wrote:
> Hi Philipp,
>
> On Wed, Jun 18, 2008 at 07:32:29PM +0200, Philipp Zabel wrote:
>> Potentially free some memory by moving the _probe functions into __init.
>>
>> Signed-off-by: Philipp Zabel <[email protected]>
> This one looks good to me, I'll submit push it to -mm as I'd prefer asic3
> patches to go through there first.

That's fine with me, thanks.

regards
Philipp