From: Eric Anholt <eric@anholt.net>
To: Boris Brezillon <boris.brezillon@bootlin.com>
Cc: dri-devel@lists.freedesktop.org, stable@vger.kernel.org
Subject: Re: [PATCH 1/3] drm/vc4: Set PPF scaling when the source image is only vertically scaled
Date: Wed, 07 Nov 2018 09:08:02 -0800 [thread overview]
Message-ID: <87r2fwyfwt.fsf@anholt.net> (raw)
In-Reply-To: <20181024170238.4f65f5f2@bbrezillon>
[-- Attachment #1.1: Type: text/plain, Size: 1829 bytes --]
Boris Brezillon <boris.brezillon@bootlin.com> writes:
> On Wed, 24 Oct 2018 12:05:03 +0200
> Boris Brezillon <boris.brezillon@bootlin.com> wrote:
>
>> The source image might be only vertically scaled, and in this case
>> ->is_unity will be false, but we'd still have to force ->x_scaling[0]
>> to VC4_SCALING_PPF for YUV conversion to work properly.
>>
>> Let's replace the ->is_unity test by->x_scaling[0] == VC4_SCALING_NONE
>> to cope with that.
>>
>> Fixes: 658d8cbd07da ("drm/vc4: Fix the "no scaling" case on multi-planar YUV formats")
>> Cc: <stable@vger.kernel.org>
>> Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
>> ---
>> drivers/gpu/drm/vc4/vc4_plane.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
>> index 60d5ad19cedd..32b7b9f47c5d 100644
>> --- a/drivers/gpu/drm/vc4/vc4_plane.c
>> +++ b/drivers/gpu/drm/vc4/vc4_plane.c
>> @@ -318,7 +318,7 @@ static int vc4_plane_setup_clipping_and_scaling(struct drm_plane_state *state)
>> * even on a plane that's otherwise 1:1. Looks like only PPF
>> * works in that case, so let's pick that one.
>> */
>> - if (vc4_state->is_unity)
>> + if (vc4_state->x_scaling[0] == VC4_SCALING_NONE)
>> vc4_state->x_scaling[0] = VC4_SCALING_PPF;
>
> Actually, I'm not sure about this patch is needed. According to the
> spec, we should not enable the scaler on the Y channel when ->is_unity
> is true.
> I tested it, and it seems to work if we just leave x_scaling[0] to
> VC4_SCALING_NONE.
Sorry, I've been delaying on this series until I could spend some time
looking at the spec.
I think you're right, I see no reason to kick us out of is_unity for
YUV -- you can have is_unity, Y unscaled, and UV scaled.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: Eric Anholt <eric@anholt.net>
To: Boris Brezillon <boris.brezillon@bootlin.com>
Cc: stable@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 1/3] drm/vc4: Set PPF scaling when the source image is only vertically scaled
Date: Wed, 07 Nov 2018 09:08:02 -0800 [thread overview]
Message-ID: <87r2fwyfwt.fsf@anholt.net> (raw)
In-Reply-To: <20181024170238.4f65f5f2@bbrezillon>
[-- Attachment #1: Type: text/plain, Size: 1829 bytes --]
Boris Brezillon <boris.brezillon@bootlin.com> writes:
> On Wed, 24 Oct 2018 12:05:03 +0200
> Boris Brezillon <boris.brezillon@bootlin.com> wrote:
>
>> The source image might be only vertically scaled, and in this case
>> ->is_unity will be false, but we'd still have to force ->x_scaling[0]
>> to VC4_SCALING_PPF for YUV conversion to work properly.
>>
>> Let's replace the ->is_unity test by->x_scaling[0] == VC4_SCALING_NONE
>> to cope with that.
>>
>> Fixes: 658d8cbd07da ("drm/vc4: Fix the "no scaling" case on multi-planar YUV formats")
>> Cc: <stable@vger.kernel.org>
>> Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
>> ---
>> drivers/gpu/drm/vc4/vc4_plane.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
>> index 60d5ad19cedd..32b7b9f47c5d 100644
>> --- a/drivers/gpu/drm/vc4/vc4_plane.c
>> +++ b/drivers/gpu/drm/vc4/vc4_plane.c
>> @@ -318,7 +318,7 @@ static int vc4_plane_setup_clipping_and_scaling(struct drm_plane_state *state)
>> * even on a plane that's otherwise 1:1. Looks like only PPF
>> * works in that case, so let's pick that one.
>> */
>> - if (vc4_state->is_unity)
>> + if (vc4_state->x_scaling[0] == VC4_SCALING_NONE)
>> vc4_state->x_scaling[0] = VC4_SCALING_PPF;
>
> Actually, I'm not sure about this patch is needed. According to the
> spec, we should not enable the scaler on the Y channel when ->is_unity
> is true.
> I tested it, and it seems to work if we just leave x_scaling[0] to
> VC4_SCALING_NONE.
Sorry, I've been delaying on this series until I could spend some time
looking at the spec.
I think you're right, I see no reason to kick us out of is_unity for
YUV -- you can have is_unity, Y unscaled, and UV scaled.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next prev parent reply other threads:[~2018-11-07 17:08 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-24 10:05 [PATCH 1/3] drm/vc4: Set PPF scaling when the source image is only vertically scaled Boris Brezillon
2018-10-24 10:05 ` [PATCH 2/3] drm/vc4: Force ->x_scaling[1] should never be set to VC4_SCALING_NONE Boris Brezillon
2018-10-24 10:06 ` Boris Brezillon
2018-11-08 14:52 ` Eric Anholt
2018-11-08 14:56 ` Boris Brezillon
2018-11-08 15:12 ` Eric Anholt
2018-11-12 10:20 ` Dave Stevenson
2018-11-12 10:24 ` Boris Brezillon
2018-10-24 10:05 ` [PATCH 3/3] drm/vc4: Prefer PPF over TPZ when dst >= 2/3 src Boris Brezillon
2018-11-08 15:18 ` Eric Anholt
2018-10-24 15:02 ` [PATCH 1/3] drm/vc4: Set PPF scaling when the source image is only vertically scaled Boris Brezillon
2018-11-07 17:08 ` Eric Anholt [this message]
2018-11-07 17:08 ` Eric Anholt
2018-11-08 9:41 ` Boris Brezillon
2018-11-08 9:41 ` Boris Brezillon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87r2fwyfwt.fsf@anholt.net \
--to=eric@anholt.net \
--cc=boris.brezillon@bootlin.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.