On 04/12/2018 09:22 AM, Tony Lindgren wrote:
> * Keerthy <j-keer...@ti.com> [180412 03:56]:
>> From: Russ Dill <russ.d...@ti.com>
>> --- a/drivers/gpio/gpio-omap.c
>> +++ b/drivers/gpio/gpio-omap.c
>> @@ -68,7 +68,7 @@ struct gpio_bank {
>>      bool dbck_enabled;
>>      bool is_mpuio;
>>      bool dbck_flag;
>> -    bool loses_context;
>> +
>>      bool context_valid;
>>      int stride;
>>      u32 width;
> 
> For some SoCs GPIO bank1 won't lose the context ever. So I'd like to
> keep loses_context flag around to avoid pointless save and restore.
> But maybe this still happens with get_context_loss_count and I'm
> misreading this patch?
> 

Agree with Tony here. More over, even if platform supports RTC suspend
(gpio1 context loss) it might support suspend to RAM - gpio1 will not lose 
context.

Not sure how to handle this correctly now - always-on gpio bank should not be 
touched 
by omap device framework during suspend otherwise it may hit "in transition" 
state forever.
>From another side it must be handled the same way as other gpio banks in case 
>of RTC suspend.
Q: How to know if current suspend is RTC suspend and not regular suspend to mem?

> However..
> 
>> @@ -1198,15 +1198,9 @@ static int omap_gpio_probe(struct platform_device 
>> *pdev)
>>   #ifdef CONFIG_OF_GPIO
>>      bank->chip.of_node = of_node_get(node);
>>   #endif
>> -    if (node) {
>> -            if (!of_property_read_bool(node, "ti,gpio-always-on"))
>> -                    bank->loses_context = true;
>> -    } else {
>> -            bank->loses_context = pdata->loses_context;
>> -
>> -            if (bank->loses_context)
>> -                    bank->get_context_loss_count =
>> -                            pdata->get_context_loss_count;
>> +    if (!node) {
>> +            bank->get_context_loss_count =
>> +                    pdata->get_context_loss_count;
>>      }
>>   
>>      if (bank->regs->set_dataout && bank->regs->clr_dataout)
> 
> .. I do have a patch ready here that I'll post after -rc1 to remove
> CONFIG_OMAP_PM_NOOP related stuff, turns out that's noop anyways :)
> 
> So yeah the pdata->get_context_loss_count parts are noop and can
> be just removed.
> 

-- 
regards,
-grygorii

Reply via email to