Messages in this thread | | | From | Tim Van Patten <> | Date | Thu, 1 Sep 2022 09:50:56 -0600 | Subject | Re: [PATCH v7] platform/chrome: cros_ec_lpc: Move host command to prepare/complete |
| |
On Wed, Aug 31, 2022 at 8:44 PM Tzung-Bi Shih <tzungbi@kernel.org> wrote: > > On Wed, Aug 31, 2022 at 08:21:23PM -0600, Raul Rangel wrote: > > On Wed, Aug 31, 2022 at 7:52 PM Tzung-Bi Shih <tzungbi@kernel.org> wrote: > > > > On Tue, Aug 23, 2022 at 9:59 AM Tim Van Patten <timvp@google.com> wrote: > > > > > > > > > > Update cros_ec_lpc_pm_ops to call cros_ec_lpc_prepare() during PM > > > > > .prepare() and cros_ec_lpc_complete() during .complete(). This moves the > > > > > host command that the AP sends and allows the EC to log entry/exit of > > > > > AP's suspend/resume more accurately. > > > > > > > > > > Signed-off-by: Tim Van Patten <timvp@google.com> > > > > > --- > > > > > > > > > > Changes in v7: > > > > > - Rename "host event" to "host command" in title/description. > > > > > > > > > > Changes in v6: > > > > > - Fully restore fixes from v3. > > > > > > > > > > Changes in v5: > > > > > - Restore fixes from v3. > > > > > > > > > > Changes in v4: > > > > > - Update title and description. > > > > > > > > > > Changes in v3: > > > > > - Update cros_ec_lpc_suspend() to cros_ec_lpc_prepare() > > > > > - Update cros_ec_lpc_resume() to cros_ec_lpc_complete() > > > > > > > > > > Changes in v2: > > > > > - Include cros_ec_resume() return value in dev_info() output. > > > > > - Guard setting .prepare/.complete with #ifdef CONFIG_PM_SLEEP. > > > > > > > > I don't buy-in the ideas from the discussion in v3[1]. Thus, I would defer > > > to other reviewers/maintainers on the list to seek their suggestions. > > > > > > [1]: https://patchwork.kernel.org/project/chrome-platform/patch/20220802113957.v3.1.I2c8c550183162e7594309b66d19af696b8d84552@changeid/ > > > > Just to clarify, you are opposed to printing the return code because > > `cros_ec_resume` currently always returns 0? Or is there another > > objection? > > Yes. I'm not sure if always printing 0 is a good idea.
We want the print statements to know when the EC sees suspend/resume start/complete. Having two versions of the same print statement, but picking the correct one based on whether the return value is non-zero is a bad design, which is why it always prints the return value. Ignoring the return value entirely is also a bad design, since it can change in the future. For example if cros_ec_resume() is updated to pass along a bad return value instead of swallowing it always returning 0.
--
Tim Van Patten | ChromeOS | timvp@google.com | (720) 432-0997
| |