[PATCH 21/21] hw/gpio/imx_gpio: Don't clear input GPIO values upon reset

Bernhard Beschow posted 21 patches 1 month ago
There is a newer version of this series
[PATCH 21/21] hw/gpio/imx_gpio: Don't clear input GPIO values upon reset
Posted by Bernhard Beschow 1 month ago
Input GPIO values such as a present SD card may get notified before the GPIO
controller itself gets reset. Claring the input values thus loses data. Assuming
that input GPIO events are only fired when the state changes, the input values
shouldn't be reset.

Signed-off-by: Bernhard Beschow <shentey@gmail.com>
---
 hw/gpio/imx_gpio.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/hw/gpio/imx_gpio.c b/hw/gpio/imx_gpio.c
index 549a281ed7..25546221e0 100644
--- a/hw/gpio/imx_gpio.c
+++ b/hw/gpio/imx_gpio.c
@@ -298,7 +298,6 @@ static void imx_gpio_reset(DeviceState *dev)
 
     s->dr       = 0;
     s->gdir     = 0;
-    s->psr      = 0;
     s->icr      = 0;
     s->imr      = 0;
     s->isr      = 0;
-- 
2.48.1
Re: [PATCH 21/21] hw/gpio/imx_gpio: Don't clear input GPIO values upon reset
Posted by Gustavo Romero 3 weeks, 3 days ago
Hi,

On 1/20/25 17:37, Bernhard Beschow wrote:
> Input GPIO values such as a present SD card may get notified before the GPIO
> controller itself gets reset. Claring the input values thus loses data. Assuming

                                 ^- nit: Clearing


Cheers,
Gustavo

> that input GPIO events are only fired when the state changes, the input values
> shouldn't be reset.
> 
> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
> ---
>   hw/gpio/imx_gpio.c | 1 -
>   1 file changed, 1 deletion(-)
> 
> diff --git a/hw/gpio/imx_gpio.c b/hw/gpio/imx_gpio.c
> index 549a281ed7..25546221e0 100644
> --- a/hw/gpio/imx_gpio.c
> +++ b/hw/gpio/imx_gpio.c
> @@ -298,7 +298,6 @@ static void imx_gpio_reset(DeviceState *dev)
>   
>       s->dr       = 0;
>       s->gdir     = 0;
> -    s->psr      = 0;
>       s->icr      = 0;
>       s->imr      = 0;
>       s->isr      = 0;
Re: [PATCH 21/21] hw/gpio/imx_gpio: Don't clear input GPIO values upon reset
Posted by Bernhard Beschow 2 weeks, 4 days ago

Am 28. Januar 2025 14:33:27 UTC schrieb Gustavo Romero <gustavo.romero@linaro.org>:
>Hi,
>
>On 1/20/25 17:37, Bernhard Beschow wrote:
>> Input GPIO values such as a present SD card may get notified before the GPIO
>> controller itself gets reset. Claring the input values thus loses data. Assuming
>
>                                ^- nit: Clearing
>
>

Peter asked for a three-way reset in inbound devices while keeping the logic here as is. I'd drop this patch then.

Best regards,
Bernhard

>Cheers,
>Gustavo
>
>> that input GPIO events are only fired when the state changes, the input values
>> shouldn't be reset.
>> 
>> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
>> ---
>>   hw/gpio/imx_gpio.c | 1 -
>>   1 file changed, 1 deletion(-)
>> 
>> diff --git a/hw/gpio/imx_gpio.c b/hw/gpio/imx_gpio.c
>> index 549a281ed7..25546221e0 100644
>> --- a/hw/gpio/imx_gpio.c
>> +++ b/hw/gpio/imx_gpio.c
>> @@ -298,7 +298,6 @@ static void imx_gpio_reset(DeviceState *dev)
>>         s->dr       = 0;
>>       s->gdir     = 0;
>> -    s->psr      = 0;
>>       s->icr      = 0;
>>       s->imr      = 0;
>>       s->isr      = 0;
>