[PATCH 5/8] drm/vc4: Simplify a bit the global atomic_check
Thomas Zimmermann
tzimmermann at suse.de
Thu Nov 19 09:32:01 UTC 2020
Am 13.11.20 um 16:29 schrieb Maxime Ripard:
> When we can't allocate a new channel, we can simply return instead of
> having to handle both cases, and that simplifies a bit the code.
>
> Signed-off-by: Maxime Ripard <maxime at cerno.tech>
Reviewed-by: Thomas Zimmermann <tzimmermann at suse.de>
> ---
> drivers/gpu/drm/vc4/vc4_kms.c | 13 ++++++-------
> 1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/vc4/vc4_kms.c b/drivers/gpu/drm/vc4/vc4_kms.c
> index 3d0065df10f9..3034a5a6637e 100644
> --- a/drivers/gpu/drm/vc4/vc4_kms.c
> +++ b/drivers/gpu/drm/vc4/vc4_kms.c
> @@ -794,6 +794,7 @@ static int vc4_pv_muxing_atomic_check(struct drm_device *dev,
> to_vc4_crtc_state(new_crtc_state);
> struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc);
> unsigned int matching_channels;
> + unsigned int channel;
>
> /* Nothing to do here, let's skip it */
> if ((old_crtc_state->enable && new_crtc_state->enable) ||
> @@ -837,14 +838,12 @@ static int vc4_pv_muxing_atomic_check(struct drm_device *dev,
> * but it works so far.
> */
> matching_channels = hvs_state->unassigned_channels & vc4_crtc->data->hvs_available_channels;
> - if (matching_channels) {
> - unsigned int channel = ffs(matching_channels) - 1;
> -
> - new_vc4_crtc_state->assigned_channel = channel;
> - hvs_state->unassigned_channels &= ~BIT(channel);
> - } else {
> + if (!matching_channels)
> return -EINVAL;
> - }
> +
> + channel = ffs(matching_channels) - 1;
> + new_vc4_crtc_state->assigned_channel = channel;
> + hvs_state->unassigned_channels &= ~BIT(channel);
> }
>
> return 0;
>
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0x680DC11D530B7A23.asc
Type: application/pgp-keys
Size: 7435 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20201119/931556a7/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20201119/931556a7/attachment-0001.sig>
More information about the dri-devel
mailing list