Re: [PATCH v2 2/5] media: venus: add a routine to set venus state

Tomasz Figa
2018-07-04T10:08:59Z

On Wed, Jul 4, 2018 at 6:41 PM Vikash Garodia <vgarodia@codeaurora.org> wrote:
>
> On 2018-07-04 14:30, Tomasz Figa wrote:
> > On Wed, Jul 4, 2018 at 4:59 PM Vikash Garodia <vgarodia@codeaurora.org>
> > wrote:
> >> On 2018-06-04 18:24, Tomasz Figa wrote:
> >> > On Sat, Jun 2, 2018 at 6:21 AM Jordan Crouse <jcrouse@codeaurora.org>
> >> > wrote:
> >> >> On Sat, Jun 02, 2018 at 01:56:05AM +0530, Vikash Garodia wrote:
> >> > Given that this function is supposed to substitute existing calls into
> >> > qcom_scm_set_remote_state(), why not just do something like this:
> >> >
> >> > if (qcom_scm_is_available())
> >> > return qcom_scm_set_remote_state(state, 0);
> >> >
> >> > switch (state) {
> >> > case TZBSP_VIDEO_SUSPEND:
> >> > writel_relaxed(1, reg_base + WRAPPER_A9SS_SW_RESET);
> >> > break;
> >> > case TZBSP_VIDEO_RESUME:
> >> > venus_reset_hw(core);
> >> > break;
> >> > }
> >> >
> >> > return 0;
> >> This will not work as driver will write on the register irrespective
> >> of
> >> scm
> >> availability.
> >
> > I'm sorry, where would it do so? The second line returns from the
> > function inf SCM is available, so the rest of the function wouldn't be
> > executed.
>
> Ah!! you are right. That would work as well.
> I am ok with either way, but would recommend to keep it the existing way
> as it makes it little more readable.

I personally think the early exit is more readable, as it clearly
separates the SCM and non-SCM part.

Best regards,
Tomasz