* [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit
@ 2011-01-05 2:05 Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 2/6] mfp-pxa27x: correct naming of GPIO13_KP_DKIN_7 Dmitry Eremin-Solenikov
` (7 more replies)
0 siblings, 8 replies; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 2:05 UTC (permalink / raw)
To: linux-arm-kernel
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: linux-i2c at vger.kernel.org
Cc: Ben Dooks <ben-linux@fluff.org>
---
drivers/i2c/busses/i2c-pxa.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c
index f4c19a9..0f10955 100644
--- a/drivers/i2c/busses/i2c-pxa.c
+++ b/drivers/i2c/busses/i2c-pxa.c
@@ -1115,7 +1115,7 @@ emalloc:
return ret;
}
-static int __exit i2c_pxa_remove(struct platform_device *dev)
+static int __devexit i2c_pxa_remove(struct platform_device *dev)
{
struct pxa_i2c *i2c = platform_get_drvdata(dev);
@@ -1169,7 +1169,7 @@ static const struct dev_pm_ops i2c_pxa_dev_pm_ops = {
static struct platform_driver i2c_pxa_driver = {
.probe = i2c_pxa_probe,
- .remove = __exit_p(i2c_pxa_remove),
+ .remove = __devexit_p(i2c_pxa_remove),
.driver = {
.name = "pxa2xx-i2c",
.owner = THIS_MODULE,
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 2/6] mfp-pxa27x: correct naming of GPIO13_KP_DKIN_7
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
@ 2011-01-05 2:05 ` Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 3/6] pxa2xx: update stored gpio settings in pxa2xx_mfp_set_lpm() Dmitry Eremin-Solenikov
` (6 subsequent siblings)
7 siblings, 0 replies; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 2:05 UTC (permalink / raw)
To: linux-arm-kernel
Correct naming of one of pin functions: it's GPIO13_KP_DKIN_7, not
GPIO13_KP_KDIN_7.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
---
arch/arm/mach-pxa/include/mach/mfp-pxa27x.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-pxa/include/mach/mfp-pxa27x.h b/arch/arm/mach-pxa/include/mach/mfp-pxa27x.h
index ec0f0b0..6553d62 100644
--- a/arch/arm/mach-pxa/include/mach/mfp-pxa27x.h
+++ b/arch/arm/mach-pxa/include/mach/mfp-pxa27x.h
@@ -300,7 +300,7 @@
#define GPIO97_KP_DKIN_4 MFP_CFG_IN(GPIO97, AF1)
#define GPIO98_KP_DKIN_5 MFP_CFG_IN(GPIO98, AF1)
#define GPIO99_KP_DKIN_6 MFP_CFG_IN(GPIO99, AF1)
-#define GPIO13_KP_KDIN_7 MFP_CFG_IN(GPIO13, AF2)
+#define GPIO13_KP_DKIN_7 MFP_CFG_IN(GPIO13, AF2)
#define GPIO100_KP_MKIN_0 MFP_CFG_IN(GPIO100, AF1)
#define GPIO101_KP_MKIN_1 MFP_CFG_IN(GPIO101, AF1)
#define GPIO102_KP_MKIN_2 MFP_CFG_IN(GPIO102, AF1)
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 3/6] pxa2xx: update stored gpio settings in pxa2xx_mfp_set_lpm()
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 2/6] mfp-pxa27x: correct naming of GPIO13_KP_DKIN_7 Dmitry Eremin-Solenikov
@ 2011-01-05 2:05 ` Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 4/6] pcmcia: limit pxa2xx_balloon3 subdriver to balloon3 platform Dmitry Eremin-Solenikov
` (5 subsequent siblings)
7 siblings, 0 replies; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 2:05 UTC (permalink / raw)
To: linux-arm-kernel
pxa2xx_mfp_set_lpm() reconfigures MFP, but doesn't update gpio_desc cache. Fix that.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
---
arch/arm/mach-pxa/mfp-pxa2xx.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-pxa/mfp-pxa2xx.c b/arch/arm/mach-pxa/mfp-pxa2xx.c
index 1d1419b..7a6e122 100644
--- a/arch/arm/mach-pxa/mfp-pxa2xx.c
+++ b/arch/arm/mach-pxa/mfp-pxa2xx.c
@@ -160,6 +160,7 @@ void pxa2xx_mfp_set_lpm(int mfp, unsigned long lpm)
c = gpio_desc[gpio].config;
c = (c & ~MFP_LPM_STATE_MASK) | lpm;
+ gpio_desc[gpio].config = c;
__mfp_config_gpio(gpio, c);
local_irq_restore(flags);
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 4/6] pcmcia: limit pxa2xx_balloon3 subdriver to balloon3 platform
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 2/6] mfp-pxa27x: correct naming of GPIO13_KP_DKIN_7 Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 3/6] pxa2xx: update stored gpio settings in pxa2xx_mfp_set_lpm() Dmitry Eremin-Solenikov
@ 2011-01-05 2:05 ` Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 5/6] pcmcia: limit pxa2xx_trizeps4 subdriver to trizeps4 platform Dmitry Eremin-Solenikov
` (4 subsequent siblings)
7 siblings, 0 replies; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 2:05 UTC (permalink / raw)
To: linux-arm-kernel
pxa2xx_balloon3 tries to register pxa2xx-pcmcia device not checking whether
machine is really balloon3, thus messing multi-machine kernels. Fix it up.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
---
drivers/pcmcia/pxa2xx_balloon3.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pxa2xx_balloon3.c b/drivers/pcmcia/pxa2xx_balloon3.c
index dbbdd00..0b1caca 100644
--- a/drivers/pcmcia/pxa2xx_balloon3.c
+++ b/drivers/pcmcia/pxa2xx_balloon3.c
@@ -25,6 +25,8 @@
#include <mach/balloon3.h>
+#include <asm/mach-types.h>
+
#include "soc_common.h"
/*
@@ -128,6 +130,9 @@ static int __init balloon3_pcmcia_init(void)
{
int ret;
+ if (!machine_is_balloon3())
+ return -ENODEV;
+
balloon3_pcmcia_device = platform_device_alloc("pxa2xx-pcmcia", -1);
if (!balloon3_pcmcia_device)
return -ENOMEM;
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 5/6] pcmcia: limit pxa2xx_trizeps4 subdriver to trizeps4 platform
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
` (2 preceding siblings ...)
2011-01-05 2:05 ` [PATCH 4/6] pcmcia: limit pxa2xx_balloon3 subdriver to balloon3 platform Dmitry Eremin-Solenikov
@ 2011-01-05 2:05 ` Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel Dmitry Eremin-Solenikov
` (3 subsequent siblings)
7 siblings, 0 replies; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 2:05 UTC (permalink / raw)
To: linux-arm-kernel
pxa2xx_trizeps4 tries to register pxa2xx-pcmcia device not checking whether
machine is really trizeps4, thus messing multi-machine kernels. Fix it up.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
---
drivers/pcmcia/pxa2xx_trizeps4.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/pcmcia/pxa2xx_trizeps4.c b/drivers/pcmcia/pxa2xx_trizeps4.c
index b7e5966..5bb4e1a 100644
--- a/drivers/pcmcia/pxa2xx_trizeps4.c
+++ b/drivers/pcmcia/pxa2xx_trizeps4.c
@@ -226,6 +226,9 @@ static int __init trizeps_pcmcia_init(void)
{
int ret;
+ if (!machine_is_trizeps4() && !machine_is_trizeps4wl())
+ return -ENODEV;
+
trizeps_pcmcia_device = platform_device_alloc("pxa2xx-pcmcia", -1);
if (!trizeps_pcmcia_device)
return -ENOMEM;
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
` (3 preceding siblings ...)
2011-01-05 2:05 ` [PATCH 5/6] pcmcia: limit pxa2xx_trizeps4 subdriver to trizeps4 platform Dmitry Eremin-Solenikov
@ 2011-01-05 2:05 ` Dmitry Eremin-Solenikov
2011-01-05 8:27 ` Uwe Kleine-König
2011-01-05 8:24 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Uwe Kleine-König
` (2 subsequent siblings)
7 siblings, 1 reply; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 2:05 UTC (permalink / raw)
To: linux-arm-kernel
e800_tg_change depends on w100fb_gpio_read/write API which is only present
if w100fb is compiled in kernel.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: Ian Molton <ian@mnementh.co.uk>
---
arch/arm/mach-pxa/eseries.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-pxa/eseries.c b/arch/arm/mach-pxa/eseries.c
index b25690c..ed2c157 100644
--- a/arch/arm/mach-pxa/eseries.c
+++ b/arch/arm/mach-pxa/eseries.c
@@ -829,6 +829,7 @@ static struct w100_mem_info e800_w100_mem_info = {
static void e800_tg_change(struct w100fb_par *par)
{
+#ifdef FB_W100
unsigned long tmp;
tmp = w100fb_gpio_read(W100_GPIO_PORT_A);
@@ -837,6 +838,7 @@ static void e800_tg_change(struct w100fb_par *par)
else
tmp &= ~0x100;
w100fb_gpio_write(W100_GPIO_PORT_A, tmp);
+#endif
}
static struct w100_tg_info e800_tg_info = {
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
` (4 preceding siblings ...)
2011-01-05 2:05 ` [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel Dmitry Eremin-Solenikov
@ 2011-01-05 8:24 ` Uwe Kleine-König
2011-01-05 9:19 ` Ben Dooks
2011-01-05 12:17 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Ben Dooks
2011-01-08 17:42 ` Ben Dooks
7 siblings, 1 reply; 19+ messages in thread
From: Uwe Kleine-König @ 2011-01-05 8:24 UTC (permalink / raw)
To: linux-arm-kernel
a bit of explanation would be nice here. Something like:
Subject: i2c-pxa: make sure the remove callback is called on unbind
When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
callback was not called because it was discarded after boot or module
load time. Because of that the resources allocated in probe were not
freed and so a rebind was impossible.
Fix that by moving the remove callback to .devexit.text.
This way everyone can understand that a real bug is fixed here.
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel
2011-01-05 2:05 ` [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel Dmitry Eremin-Solenikov
@ 2011-01-05 8:27 ` Uwe Kleine-König
2011-01-05 10:54 ` Uwe Kleine-König
0 siblings, 1 reply; 19+ messages in thread
From: Uwe Kleine-König @ 2011-01-05 8:27 UTC (permalink / raw)
To: linux-arm-kernel
Hello Dmitry,
On Wed, Jan 05, 2011 at 05:05:10AM +0300, Dmitry Eremin-Solenikov wrote:
> e800_tg_change depends on w100fb_gpio_read/write API which is only present
> if w100fb is compiled in kernel.
>
> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> Cc: Ian Molton <ian@mnementh.co.uk>
> ---
> arch/arm/mach-pxa/eseries.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/mach-pxa/eseries.c b/arch/arm/mach-pxa/eseries.c
> index b25690c..ed2c157 100644
> --- a/arch/arm/mach-pxa/eseries.c
> +++ b/arch/arm/mach-pxa/eseries.c
> @@ -829,6 +829,7 @@ static struct w100_mem_info e800_w100_mem_info = {
>
> static void e800_tg_change(struct w100fb_par *par)
> {
> +#ifdef FB_W100
CONFIG_FB_W100?
> unsigned long tmp;
>
> tmp = w100fb_gpio_read(W100_GPIO_PORT_A);
> @@ -837,6 +838,7 @@ static void e800_tg_change(struct w100fb_par *par)
> else
> tmp &= ~0x100;
> w100fb_gpio_write(W100_GPIO_PORT_A, tmp);
> +#endif
What happens if FB_W100=m? The code isn't compiled in, would it still
be necessary?
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit
2011-01-05 8:24 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Uwe Kleine-König
@ 2011-01-05 9:19 ` Ben Dooks
2011-01-06 11:01 ` [PATCH] i2c-pxa: fix unbidding/rebidding of the device Dmitry Eremin-Solenikov
0 siblings, 1 reply; 19+ messages in thread
From: Ben Dooks @ 2011-01-05 9:19 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Jan 05, 2011 at 09:24:45AM +0100, Uwe Kleine-K?nig wrote:
> a bit of explanation would be nice here. Something like:
>
> Subject: i2c-pxa: make sure the remove callback is called on unbind
>
> When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
> callback was not called because it was discarded after boot or module
> load time. Because of that the resources allocated in probe were not
> freed and so a rebind was impossible.
>
> Fix that by moving the remove callback to .devexit.text.
>
> This way everyone can understand that a real bug is fixed here.
agreed, please re-submit
--
Ben Dooks, ben at fluff.org, http://www.fluff.org/ben/
Large Hadron Colada: A large Pina Colada that makes the universe disappear.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel
2011-01-05 8:27 ` Uwe Kleine-König
@ 2011-01-05 10:54 ` Uwe Kleine-König
2011-01-05 11:17 ` Dmitry Eremin-Solenikov
0 siblings, 1 reply; 19+ messages in thread
From: Uwe Kleine-König @ 2011-01-05 10:54 UTC (permalink / raw)
To: linux-arm-kernel
Hello again,
On Wed, Jan 05, 2011 at 09:27:49AM +0100, Uwe Kleine-K?nig wrote:
> Hello Dmitry,
>
> On Wed, Jan 05, 2011 at 05:05:10AM +0300, Dmitry Eremin-Solenikov wrote:
> > e800_tg_change depends on w100fb_gpio_read/write API which is only present
> > if w100fb is compiled in kernel.
> >
> > Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> > Cc: Ian Molton <ian@mnementh.co.uk>
> > ---
> > arch/arm/mach-pxa/eseries.c | 2 ++
> > 1 files changed, 2 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/mach-pxa/eseries.c b/arch/arm/mach-pxa/eseries.c
> > index b25690c..ed2c157 100644
> > --- a/arch/arm/mach-pxa/eseries.c
> > +++ b/arch/arm/mach-pxa/eseries.c
> > @@ -829,6 +829,7 @@ static struct w100_mem_info e800_w100_mem_info = {
> >
> > static void e800_tg_change(struct w100fb_par *par)
> > {
> > +#ifdef FB_W100
> CONFIG_FB_W100?
>
> > unsigned long tmp;
> >
> > tmp = w100fb_gpio_read(W100_GPIO_PORT_A);
> > @@ -837,6 +838,7 @@ static void e800_tg_change(struct w100fb_par *par)
> > else
> > tmp &= ~0x100;
> > w100fb_gpio_write(W100_GPIO_PORT_A, tmp);
> > +#endif
> What happens if FB_W100=m? The code isn't compiled in, would it still
> be necessary?
did you see commit a74b74a5555c741ed3df896096e33b853995631e?
http://git.kernel.org/linus/a74b74a5555c741ed3df896096e33b853995631e
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel
2011-01-05 10:54 ` Uwe Kleine-König
@ 2011-01-05 11:17 ` Dmitry Eremin-Solenikov
0 siblings, 0 replies; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-05 11:17 UTC (permalink / raw)
To: linux-arm-kernel
2011/1/5 Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>:
> Hello again,
>
> On Wed, Jan 05, 2011 at 09:27:49AM +0100, Uwe Kleine-K?nig wrote:
>> Hello Dmitry,
>>
>> On Wed, Jan 05, 2011 at 05:05:10AM +0300, Dmitry Eremin-Solenikov wrote:
>> > e800_tg_change depends on w100fb_gpio_read/write API which is only present
>> > if w100fb is compiled in kernel.
>> >
>> > Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
>> > Cc: Ian Molton <ian@mnementh.co.uk>
>> > ---
>> > ?arch/arm/mach-pxa/eseries.c | ? ?2 ++
>> > ?1 files changed, 2 insertions(+), 0 deletions(-)
>> >
>> > diff --git a/arch/arm/mach-pxa/eseries.c b/arch/arm/mach-pxa/eseries.c
>> > index b25690c..ed2c157 100644
>> > --- a/arch/arm/mach-pxa/eseries.c
>> > +++ b/arch/arm/mach-pxa/eseries.c
>> > @@ -829,6 +829,7 @@ static struct w100_mem_info e800_w100_mem_info = {
>> >
>> > ?static void e800_tg_change(struct w100fb_par *par)
>> > ?{
>> > +#ifdef FB_W100
>> CONFIG_FB_W100?
>>
>> > ? ? unsigned long tmp;
>> >
>> > ? ? tmp = w100fb_gpio_read(W100_GPIO_PORT_A);
>> > @@ -837,6 +838,7 @@ static void e800_tg_change(struct w100fb_par *par)
>> > ? ? else
>> > ? ? ? ? ? ? tmp &= ~0x100;
>> > ? ? w100fb_gpio_write(W100_GPIO_PORT_A, tmp);
>> > +#endif
>> What happens if FB_W100=m? ?The code isn't compiled in, would it still
>> be necessary?
> did you see commit a74b74a5555c741ed3df896096e33b853995631e?
Missed it. Then this patch can be safely dropped :)
>
> http://git.kernel.org/linus/a74b74a5555c741ed3df896096e33b853995631e
>
> Best regards
> Uwe
>
> --
> Pengutronix e.K. ? ? ? ? ? ? ? ? ? ? ? ? ? | Uwe Kleine-K?nig ? ? ? ? ? ?|
> Industrial Linux Solutions ? ? ? ? ? ? ? ? | http://www.pengutronix.de/ ?|
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
` (5 preceding siblings ...)
2011-01-05 8:24 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Uwe Kleine-König
@ 2011-01-05 12:17 ` Ben Dooks
2011-01-08 17:42 ` Ben Dooks
7 siblings, 0 replies; 19+ messages in thread
From: Ben Dooks @ 2011-01-05 12:17 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Jan 05, 2011 at 05:05:05AM +0300, Dmitry Eremin-Solenikov wrote:
> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> Cc: linux-i2c at vger.kernel.org
> Cc: Ben Dooks <ben-linux@fluff.org>
Please write a reasonable commit message, a null or almost empty commit
message is simply unnaceptable. Please see the Documentation/SubmittingPatches
or ask more about how to write good commit messages.
Also, see Uwe's reply for a good example of how to write a commit message.
> -static int __exit i2c_pxa_remove(struct platform_device *dev)
> +static int __devexit i2c_pxa_remove(struct platform_device *dev)
> {
> struct pxa_i2c *i2c = platform_get_drvdata(dev);
>
> @@ -1169,7 +1169,7 @@ static const struct dev_pm_ops i2c_pxa_dev_pm_ops = {
>
> static struct platform_driver i2c_pxa_driver = {
> .probe = i2c_pxa_probe,
> - .remove = __exit_p(i2c_pxa_remove),
> + .remove = __devexit_p(i2c_pxa_remove),
> .driver = {
> .name = "pxa2xx-i2c",
> .owner = THIS_MODULE,
Right, I think this should fix any hotplug problems that you have.
--
Ben Dooks, ben at fluff.org, http://www.fluff.org/ben/
Large Hadron Colada: A large Pina Colada that makes the universe disappear.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH] i2c-pxa: fix unbidding/rebidding of the device
2011-01-05 9:19 ` Ben Dooks
@ 2011-01-06 11:01 ` Dmitry Eremin-Solenikov
2011-01-06 12:40 ` Uwe Kleine-König
0 siblings, 1 reply; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-06 11:01 UTC (permalink / raw)
To: linux-arm-kernel
When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
callback was not called because it was discarded when linking the
kernel. Because of that the resources allocated in probe were not
freed and so a clean unbind/rebind was impossible.
Fix that by moving the remove callback to .devexit.text.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: linux-i2c at vger.kernel.org
Cc: Ben Dooks <ben-linux@fluff.org>
---
drivers/i2c/busses/i2c-pxa.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c
index f4c19a9..0f10955 100644
--- a/drivers/i2c/busses/i2c-pxa.c
+++ b/drivers/i2c/busses/i2c-pxa.c
@@ -1115,7 +1115,7 @@ emalloc:
return ret;
}
-static int __exit i2c_pxa_remove(struct platform_device *dev)
+static int __devexit i2c_pxa_remove(struct platform_device *dev)
{
struct pxa_i2c *i2c = platform_get_drvdata(dev);
@@ -1169,7 +1169,7 @@ static const struct dev_pm_ops i2c_pxa_dev_pm_ops = {
static struct platform_driver i2c_pxa_driver = {
.probe = i2c_pxa_probe,
- .remove = __exit_p(i2c_pxa_remove),
+ .remove = __devexit_p(i2c_pxa_remove),
.driver = {
.name = "pxa2xx-i2c",
.owner = THIS_MODULE,
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH] i2c-pxa: fix unbidding/rebidding of the device
2011-01-06 11:01 ` [PATCH] i2c-pxa: fix unbidding/rebidding of the device Dmitry Eremin-Solenikov
@ 2011-01-06 12:40 ` Uwe Kleine-König
2011-01-08 16:06 ` [PATCH] i2c-pxa: fix unbinding/rebinding " Dmitry Eremin-Solenikov
0 siblings, 1 reply; 19+ messages in thread
From: Uwe Kleine-König @ 2011-01-06 12:40 UTC (permalink / raw)
To: linux-arm-kernel
Hello
$Subject ~= s/bidd/bind/g
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH] i2c-pxa: fix unbinding/rebinding of the device
2011-01-06 12:40 ` Uwe Kleine-König
@ 2011-01-08 16:06 ` Dmitry Eremin-Solenikov
2011-01-08 16:18 ` Uwe Kleine-König
0 siblings, 1 reply; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-01-08 16:06 UTC (permalink / raw)
To: linux-arm-kernel
When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
callback was not called because it was discarded when linking the
kernel. Because of that the resources allocated in probe were not
freed and so a clean unbind/rebind was impossible.
Fix that by moving the remove callback to .devexit.text.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: linux-i2c at vger.kernel.org
Cc: Ben Dooks <ben-linux@fluff.org>
---
drivers/i2c/busses/i2c-pxa.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c
index f4c19a9..0f10955 100644
--- a/drivers/i2c/busses/i2c-pxa.c
+++ b/drivers/i2c/busses/i2c-pxa.c
@@ -1115,7 +1115,7 @@ emalloc:
return ret;
}
-static int __exit i2c_pxa_remove(struct platform_device *dev)
+static int __devexit i2c_pxa_remove(struct platform_device *dev)
{
struct pxa_i2c *i2c = platform_get_drvdata(dev);
@@ -1169,7 +1169,7 @@ static const struct dev_pm_ops i2c_pxa_dev_pm_ops = {
static struct platform_driver i2c_pxa_driver = {
.probe = i2c_pxa_probe,
- .remove = __exit_p(i2c_pxa_remove),
+ .remove = __devexit_p(i2c_pxa_remove),
.driver = {
.name = "pxa2xx-i2c",
.owner = THIS_MODULE,
--
1.7.2.3
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH] i2c-pxa: fix unbinding/rebinding of the device
2011-01-08 16:06 ` [PATCH] i2c-pxa: fix unbinding/rebinding " Dmitry Eremin-Solenikov
@ 2011-01-08 16:18 ` Uwe Kleine-König
2011-02-15 13:59 ` Dmitry Eremin-Solenikov
0 siblings, 1 reply; 19+ messages in thread
From: Uwe Kleine-König @ 2011-01-08 16:18 UTC (permalink / raw)
To: linux-arm-kernel
On Sat, Jan 08, 2011 at 07:06:44PM +0300, Dmitry Eremin-Solenikov wrote:
> When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
> callback was not called because it was discarded when linking the
> kernel. Because of that the resources allocated in probe were not
> freed and so a clean unbind/rebind was impossible.
>
> Fix that by moving the remove callback to .devexit.text.
>
> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
Thanks
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
` (6 preceding siblings ...)
2011-01-05 12:17 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Ben Dooks
@ 2011-01-08 17:42 ` Ben Dooks
7 siblings, 0 replies; 19+ messages in thread
From: Ben Dooks @ 2011-01-08 17:42 UTC (permalink / raw)
To: linux-arm-kernel
On 05/01/11 02:05, Dmitry Eremin-Solenikov wrote:
> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> Cc: linux-i2c at vger.kernel.org
> Cc: Ben Dooks <ben-linux@fluff.org>
> ---
this should be queued, and probably sent to Linus
at the end of the weekend.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH] i2c-pxa: fix unbinding/rebinding of the device
2011-01-08 16:18 ` Uwe Kleine-König
@ 2011-02-15 13:59 ` Dmitry Eremin-Solenikov
2011-02-15 16:23 ` Uwe Kleine-König
0 siblings, 1 reply; 19+ messages in thread
From: Dmitry Eremin-Solenikov @ 2011-02-15 13:59 UTC (permalink / raw)
To: linux-arm-kernel
Hello, all
2011/1/8 Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>:
> On Sat, Jan 08, 2011 at 07:06:44PM +0300, Dmitry Eremin-Solenikov wrote:
>> When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
>> callback was not called because it was discarded when linking the
>> kernel. ?Because of that the resources allocated in probe were not
>> freed and so a clean unbind/rebind was impossible.
>>
>> Fix that by moving the remove callback to .devexit.text.
>>
>> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
I see this patch is still not pushed to neither linus nor linux-next.
Should I put it into rmk's patch system? Or will it find it's way to main kernel
via other paths?
>
> Thanks
> Uwe
>
> --
> Pengutronix e.K. ? ? ? ? ? ? ? ? ? ? ? ? ? | Uwe Kleine-K?nig ? ? ? ? ? ?|
> Industrial Linux Solutions ? ? ? ? ? ? ? ? | http://www.pengutronix.de/ ?|
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH] i2c-pxa: fix unbinding/rebinding of the device
2011-02-15 13:59 ` Dmitry Eremin-Solenikov
@ 2011-02-15 16:23 ` Uwe Kleine-König
0 siblings, 0 replies; 19+ messages in thread
From: Uwe Kleine-König @ 2011-02-15 16:23 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Feb 15, 2011 at 04:59:28PM +0300, Dmitry Eremin-Solenikov wrote:
> Hello, all
>
> 2011/1/8 Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>:
> > On Sat, Jan 08, 2011 at 07:06:44PM +0300, Dmitry Eremin-Solenikov wrote:
> >> When a "pxa2xx-i2c" device was unbound (e.g. via sysfs) the remove
> >> callback was not called because it was discarded when linking the
> >> kernel. ?Because of that the resources allocated in probe were not
> >> freed and so a clean unbind/rebind was impossible.
> >>
> >> Fix that by moving the remove callback to .devexit.text.
> >>
> >> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> > Acked-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
>
> I see this patch is still not pushed to neither linus nor linux-next.
> Should I put it into rmk's patch system? Or will it find it's way to main kernel
> via other paths?
rmk's patch system isn't the right place. Ben needs to take it. Ben?
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2011-02-15 16:23 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-05 2:05 [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 2/6] mfp-pxa27x: correct naming of GPIO13_KP_DKIN_7 Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 3/6] pxa2xx: update stored gpio settings in pxa2xx_mfp_set_lpm() Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 4/6] pcmcia: limit pxa2xx_balloon3 subdriver to balloon3 platform Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 5/6] pcmcia: limit pxa2xx_trizeps4 subdriver to trizeps4 platform Dmitry Eremin-Solenikov
2011-01-05 2:05 ` [PATCH 6/6] Fix eseries compilation if w100fb is not compiled in kernel Dmitry Eremin-Solenikov
2011-01-05 8:27 ` Uwe Kleine-König
2011-01-05 10:54 ` Uwe Kleine-König
2011-01-05 11:17 ` Dmitry Eremin-Solenikov
2011-01-05 8:24 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Uwe Kleine-König
2011-01-05 9:19 ` Ben Dooks
2011-01-06 11:01 ` [PATCH] i2c-pxa: fix unbidding/rebidding of the device Dmitry Eremin-Solenikov
2011-01-06 12:40 ` Uwe Kleine-König
2011-01-08 16:06 ` [PATCH] i2c-pxa: fix unbinding/rebinding " Dmitry Eremin-Solenikov
2011-01-08 16:18 ` Uwe Kleine-König
2011-02-15 13:59 ` Dmitry Eremin-Solenikov
2011-02-15 16:23 ` Uwe Kleine-König
2011-01-05 12:17 ` [PATCH 1/6] i2c-pxa: move i2c_pxa_remove to __devexit instead of just __exit Ben Dooks
2011-01-08 17:42 ` Ben Dooks
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).