Re: [PATCH v4 5/5] spi: spi-geni-qcom: Don't keep a local state variable

From: Stephen Boyd
Date: Thu Jun 18 2020 - 13:53:27 EST


Quoting Douglas Anderson (2020-06-18 08:06:26)
> The variable "cur_mcmd" kept track of our current state (idle, xfer,
> cs, cancel). We don't really need it, so get rid of it. Instead:
> * Use separate condition variables for "chip select done", "cancel
> done", and "abort done". This is important so that if a "done"
> comes through (perhaps some previous interrupt finally came through)
> it can't confuse the cancel/abort function.
> * Use the "done" interrupt only for when a chip select or transfer is
> done and we can tell the difference by looking at whether "cur_xfer"
> is NULL.
>
> This is mostly a no-op change. However, it is possible it could fix
> an issue where a super delayed interrupt for a cancel command could
> have confused our waiting for an abort command.
>
> Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
> ---

Reviewed-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>