Re: [RFC] drm/i915: Render decompression support for Gen9 and above

Jesse Barnes
2015-09-09T15:25:19Z

On 09/09/2015 08:23 AM, Daniel Vetter wrote:
> On Tue, Sep 08, 2015 at 03:07:40PM -0700, Jesse Barnes wrote:
>> On 09/07/2015 09:35 AM, Daniel Vetter wrote:
>>> On Sat, Sep 05, 2015 at 01:12:50AM +0530, Vandana Kannan wrote:
>>>> This patch includes enabling render decompression after checking all the
>>>> requirements (format, tiling, rotation etc.). Along with this, the WAs
>>>> mentioned in BSpec Workaround page have been implemented.
>>>>
>>>> This patch has been implemented on top of Nabendu/Chandra's NV12 patches.
>>>>
>>>> TODO:
>>>> 1. Disable stereo 3D when render decomp is enabled (bit 7:6)
>>>> 2. Render decompression must not be used in VTd pass-through mode
>>>> 3. Program hashing select CHICKEN_MISC1 bit 15
>>>> 4. For Gen10, add support for RGB 1010102
>>>>
>>>> Signed-off-by: Vandana Kannan <vandana.kannan@intel.com>
>>>> ---
>>>> drivers/gpu/drm/drm_atomic.c | 4 +
>>>> drivers/gpu/drm/drm_crtc.c | 16 ++++
>>>> drivers/gpu/drm/i915/intel_display.c | 174 +++++++++++++++++++++++++++++++++++
>>>> drivers/gpu/drm/i915/intel_drv.h | 7 ++
>>>> drivers/gpu/drm/i915/intel_sprite.c | 35 +++++++
>>>> include/drm/drm_crtc.h | 11 +++
>>>> 6 files changed, 247 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
>>>> index 940f80b..d9004e8 100644
>>>> --- a/drivers/gpu/drm/drm_atomic.c
>>>> +++ b/drivers/gpu/drm/drm_atomic.c
>>>> @@ -607,6 +607,8 @@ int drm_atomic_plane_set_property(struct drm_plane *plane,
>>>> state->src_h = val;
>>>> } else if (property == config->rotation_property) {
>>>> state->rotation = val;
>>>> + } else if (property == config->compression_property) {
>>>> + state->compression = val;
>>>
>>> Please use a framebuffer modifier instead. Also this needs userspace.
>>
>> I thought we already agreed, based on feedback from the userspace guys,
>> that a property was easier to use and therefore the way to go?
>
> Blob hwc want a property because they're afraid of the overhead of
> creating an additional drm fb object. Until I see data that that overhead
> is real I see no reason at all to have something else than what the
> community consensus for these features from 1 year ago at xdc bordeaux.
>
> If someone disagrees please convince Rob Clark and Thierry Redding (and
> whomever else took part in that discussion) that we need to change this, I
> personally don't see the value in this particular bikeshed.

I don't think it was overhead, just convenience and reasoning about how
the feature is used. Cc'ing Gary for more background.

Jesse