Re: [PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-05-20 Thread Linus Walleij
On Mon, Apr 29, 2013 at 4:07 PM, Maxime Ripard
 wrote:

> The current driver doesn't use the set and clear registers found on the
> mxs gpio controller.
>
> This leads the generic gpio controller to be using some internal value
> to avoid looking up the value stored in the registers, making it behave
> pretty much like a cache.
>
> This raises some coherency problem when a gpio is not modified by the
> gpio controller, while it can easily be fixed by using the set and clear
> registers.
>
> Signed-off-by: Maxime Ripard 

Patch applied for rc-fixes with Shawns ACK.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-05-20 Thread Linus Walleij
On Mon, Apr 29, 2013 at 4:07 PM, Maxime Ripard
maxime.rip...@free-electrons.com wrote:

 The current driver doesn't use the set and clear registers found on the
 mxs gpio controller.

 This leads the generic gpio controller to be using some internal value
 to avoid looking up the value stored in the registers, making it behave
 pretty much like a cache.

 This raises some coherency problem when a gpio is not modified by the
 gpio controller, while it can easily be fixed by using the set and clear
 registers.

 Signed-off-by: Maxime Ripard maxime.rip...@free-electrons.com

Patch applied for rc-fixes with Shawns ACK.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-05-16 Thread Maxime Ripard
Hi Linus,

Le 02/05/2013 04:44, Shawn Guo a écrit :
> On Mon, Apr 29, 2013 at 04:07:18PM +0200, Maxime Ripard wrote:
>> The current driver doesn't use the set and clear registers found on the
>> mxs gpio controller.
>>
>> This leads the generic gpio controller to be using some internal value
>> to avoid looking up the value stored in the registers, making it behave
>> pretty much like a cache.
>>
>> This raises some coherency problem when a gpio is not modified by the
>> gpio controller, while it can easily be fixed by using the set and clear
>> registers.
>>
>> Signed-off-by: Maxime Ripard 
> 
> Acked-by: Shawn Guo 

Would you consider merging this patch?

Thanks,
Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-05-16 Thread Maxime Ripard
Hi Linus,

Le 02/05/2013 04:44, Shawn Guo a écrit :
 On Mon, Apr 29, 2013 at 04:07:18PM +0200, Maxime Ripard wrote:
 The current driver doesn't use the set and clear registers found on the
 mxs gpio controller.

 This leads the generic gpio controller to be using some internal value
 to avoid looking up the value stored in the registers, making it behave
 pretty much like a cache.

 This raises some coherency problem when a gpio is not modified by the
 gpio controller, while it can easily be fixed by using the set and clear
 registers.

 Signed-off-by: Maxime Ripard maxime.rip...@free-electrons.com
 
 Acked-by: Shawn Guo shawn@linaro.org

Would you consider merging this patch?

Thanks,
Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-05-01 Thread Shawn Guo
On Mon, Apr 29, 2013 at 04:07:18PM +0200, Maxime Ripard wrote:
> The current driver doesn't use the set and clear registers found on the
> mxs gpio controller.
> 
> This leads the generic gpio controller to be using some internal value
> to avoid looking up the value stored in the registers, making it behave
> pretty much like a cache.
> 
> This raises some coherency problem when a gpio is not modified by the
> gpio controller, while it can easily be fixed by using the set and clear
> registers.
> 
> Signed-off-by: Maxime Ripard 

Acked-by: Shawn Guo 

> ---
>  drivers/gpio/gpio-mxs.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpio/gpio-mxs.c b/drivers/gpio/gpio-mxs.c
> index 25000b0..f8e6af2 100644
> --- a/drivers/gpio/gpio-mxs.c
> +++ b/drivers/gpio/gpio-mxs.c
> @@ -326,7 +326,8 @@ static int mxs_gpio_probe(struct platform_device *pdev)
>  
>   err = bgpio_init(>bgc, >dev, 4,
>port->base + PINCTRL_DIN(port),
> -  port->base + PINCTRL_DOUT(port), NULL,
> +  port->base + PINCTRL_DOUT(port) + MXS_SET,
> +  port->base + PINCTRL_DOUT(port) + MXS_CLR,
>port->base + PINCTRL_DOE(port), NULL, 0);
>   if (err)
>   goto out_irqdesc_free;
> -- 
> 1.8.1.2
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-05-01 Thread Shawn Guo
On Mon, Apr 29, 2013 at 04:07:18PM +0200, Maxime Ripard wrote:
 The current driver doesn't use the set and clear registers found on the
 mxs gpio controller.
 
 This leads the generic gpio controller to be using some internal value
 to avoid looking up the value stored in the registers, making it behave
 pretty much like a cache.
 
 This raises some coherency problem when a gpio is not modified by the
 gpio controller, while it can easily be fixed by using the set and clear
 registers.
 
 Signed-off-by: Maxime Ripard maxime.rip...@free-electrons.com

Acked-by: Shawn Guo shawn@linaro.org

 ---
  drivers/gpio/gpio-mxs.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/drivers/gpio/gpio-mxs.c b/drivers/gpio/gpio-mxs.c
 index 25000b0..f8e6af2 100644
 --- a/drivers/gpio/gpio-mxs.c
 +++ b/drivers/gpio/gpio-mxs.c
 @@ -326,7 +326,8 @@ static int mxs_gpio_probe(struct platform_device *pdev)
  
   err = bgpio_init(port-bgc, pdev-dev, 4,
port-base + PINCTRL_DIN(port),
 -  port-base + PINCTRL_DOUT(port), NULL,
 +  port-base + PINCTRL_DOUT(port) + MXS_SET,
 +  port-base + PINCTRL_DOUT(port) + MXS_CLR,
port-base + PINCTRL_DOE(port), NULL, 0);
   if (err)
   goto out_irqdesc_free;
 -- 
 1.8.1.2
 

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-04-29 Thread Maxime Ripard
The current driver doesn't use the set and clear registers found on the
mxs gpio controller.

This leads the generic gpio controller to be using some internal value
to avoid looking up the value stored in the registers, making it behave
pretty much like a cache.

This raises some coherency problem when a gpio is not modified by the
gpio controller, while it can easily be fixed by using the set and clear
registers.

Signed-off-by: Maxime Ripard 
---
 drivers/gpio/gpio-mxs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-mxs.c b/drivers/gpio/gpio-mxs.c
index 25000b0..f8e6af2 100644
--- a/drivers/gpio/gpio-mxs.c
+++ b/drivers/gpio/gpio-mxs.c
@@ -326,7 +326,8 @@ static int mxs_gpio_probe(struct platform_device *pdev)
 
err = bgpio_init(>bgc, >dev, 4,
 port->base + PINCTRL_DIN(port),
-port->base + PINCTRL_DOUT(port), NULL,
+port->base + PINCTRL_DOUT(port) + MXS_SET,
+port->base + PINCTRL_DOUT(port) + MXS_CLR,
 port->base + PINCTRL_DOE(port), NULL, 0);
if (err)
goto out_irqdesc_free;
-- 
1.8.1.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] gpio: mxs: Use set and clear capabilities of the gpio controller

2013-04-29 Thread Maxime Ripard
The current driver doesn't use the set and clear registers found on the
mxs gpio controller.

This leads the generic gpio controller to be using some internal value
to avoid looking up the value stored in the registers, making it behave
pretty much like a cache.

This raises some coherency problem when a gpio is not modified by the
gpio controller, while it can easily be fixed by using the set and clear
registers.

Signed-off-by: Maxime Ripard maxime.rip...@free-electrons.com
---
 drivers/gpio/gpio-mxs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-mxs.c b/drivers/gpio/gpio-mxs.c
index 25000b0..f8e6af2 100644
--- a/drivers/gpio/gpio-mxs.c
+++ b/drivers/gpio/gpio-mxs.c
@@ -326,7 +326,8 @@ static int mxs_gpio_probe(struct platform_device *pdev)
 
err = bgpio_init(port-bgc, pdev-dev, 4,
 port-base + PINCTRL_DIN(port),
-port-base + PINCTRL_DOUT(port), NULL,
+port-base + PINCTRL_DOUT(port) + MXS_SET,
+port-base + PINCTRL_DOUT(port) + MXS_CLR,
 port-base + PINCTRL_DOE(port), NULL, 0);
if (err)
goto out_irqdesc_free;
-- 
1.8.1.2

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/