The issue still exists. It takes very long time to suspend (10-12s). `DRI_PRIME=1 glxgears` is a black window. journalctl attached Looking forward to any testing. Thanks. On Saturday, February 5, 2022, 12:18:38 AM GMT+6, Hsin-Yi Wang wrote: On Sun, Jan 16, 2022 at 2:44 AM Tareque Md.Hanif wrote: > > Hi Hsin-Yi, > > The issue still exists. I reverted a19f75de73c220b4496d2aefb7a605dd032f7c01 (the commit that reverted 5a7b95fb993ec399c8a685552aa6a8fc995c40bd) and manually applied the patch (tags/v5.16). journalctl attached. hi Tareque, Can you apply the same setting[1] again and with this patch to see if the issue is still there? https://github.com/torvalds/linux/commit/6dc8265f9803ccb7e5da804e01601f0c14f270e0 [1] reverted a19f75de73c220b4496d2aefb7a605dd032f7c01 (the commit that reverted 5a7b95fb993ec399c8a685552aa6a8fc995c40bd) and manually applied the patch (tags/v5.16) Thanks > > Regards, > > Tareque > > On Saturday, January 15, 2022, 11:27:07 PM GMT+6, Hsin-Yi Wang wrote: > > > hi Tareque, > > > On Fri, Jan 14, 2022 at 6:09 PM Tareque Md Hanif > wrote: > > > > Hi Hsin-Yi, > > > > On 1/12/22 16:58, Hsin-Yi Wang wrote: > > > > Can you help provide logs if we apply > > 5a7b95fb993ec399c8a685552aa6a8fc995c40bd but revert > > 8d35a2596164c1c9d34d4656fd42b445cd1e247f? > > > > Issue still exists. journalctl log attached in revert_8d.txt > > > > > > > after apply 5a7b95fb993ec399c8a685552aa6a8fc995c40bd > > > 1. delete SET_LATE_SYSTEM_SLEEP_PM_OPS(i2c_suspend_late, > > > i2c_resume_early) and function i2c_suspend_late() and > > > i2c_resume_early(). > > > > No issues. journalctl log attached in test1.txt > > > > > > > 2. delete SET_RUNTIME_PM_OPS(i2c_runtime_suspend, i2c_runtime_resume, > > > NULL) and function i2c_runtime_suspend() and i2c_runtime_resume(). > > > > Issue exists. journalctl log attached in test2.txt > > > Thanks for the testing. > Can you help us test if applying the following patch on top of > 5a7b95fb993ec399c8a685552aa6a8fc995c40bd works? Thanks > > diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c > index 9eb4009cb250..6b046012aa08 100644 > --- a/drivers/i2c/i2c-core-base.c > +++ b/drivers/i2c/i2c-core-base.c > @@ -484,7 +484,7 @@ static int i2c_resume_early(struct device *dev) >        struct i2c_client *client = i2c_verify_client(dev); >        int err; > > -      if (!client) > +      if (!client || dev_pm_skip_resume(dev)) >                return 0; > >        if (pm_runtime_status_suspended(&client->dev) && > @@ -502,7 +502,7 @@ static int i2c_suspend_late(struct device *dev) >        struct i2c_client *client = i2c_verify_client(dev); >        int err; > > -      if (!client) > +      if (!client || dev_pm_skip_suspend(dev)) >                return 0; > >        err = pm_generic_suspend_late(&client->dev); >