[Intel-gfx] [PATCH v2 00/21] drm/i915: Organize most GPU features by platform

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Jul 29 14:01:29 UTC 2016


On Thu, Jul 28, 2016 at 12:12:15PM -0700, Carlos Santa wrote:
> This patchset includes the following changes:
> 
>  - organize most GPU features so that they are easy to group by platforms.
>    It seems some of the ground work was already done for Gen7 features.
>    Reuse some of that work for the rest of the Gen platforms (GEN6, GEN5, GEN4, GEN3
>    and GEN2).
> 
>  - make most of these GPU features now a device_info flag also based on
>    previous work done by others. The idea is here is to have a central place where
>    to add new features and also now it should be possible to see what the supported 
>    features are for a given platform by dumping of the struct definitions.

I don't know. The FOO_FEATURES templates sort of go against that idea. You
have iterate through the macros and figure out which flags get reset by
later macros. Makes it rather tedious to go through the flags, I think.

It migth be nicer in the end if we wouldn't inherit the template from the
previous gen(s). Then at least you'd only have to look at one template
for each platform.

>    The list of the features that were converted to a device_info flag include: PSR,
>    RUNTIME_PM, CORE_RING_FREQ, CSR, GUC, RESOURCE_STREAMER, RC6,
>    RC6p, DP_MST, GMBUS_IRQ, FW_BLC, HW_CONTEXTS, LOGICAL_RING_CONTEXTS, L3_DPF, and
>    GMCH_DISPLAY.
> 
> - Changes since v1, thanks to Rodrigo and others for the comments
> 
> - Patch 1: "drm/i915: Make GEN7_FEATURES inherit from GEN6"
>   - Avoid further code duplication by making GEN7 inherit from GEN6
>   - Disabled RPM for IVB and added a FIXME comment
> 
> - Patch 2: "drm/i915: Move HAS_CSR definition to platform definition"
>   - Spreads out the features instead of creating a new define for GEN9_FEATURES
> 
> - Patch 3: "drm/i915: Move HAS_GUC_UCODE definition to platform definition"
>   - Kill off this patch, not needed
> 
> - Patch 4: "drm/i915: Move HAS_GUC_SCHED definition to platform definition"
>   - Kill off this patch, not needed
> 
> - Patch 5: "drm/i915: Move HAS_RC6p definition to platform definition"
>   - Eliminate the need of creating yet another macro for IVB_FEATURES, simply list
>     the features by platform
> 
> - Patch 6: "drm/i915: Move HAS_DP_MST definition to platform definition"
>   - Now it correctly list the platforms that support this feature
> 
> - Patch 7: "drm/i915: Make GEN6_FEATURES inherit from GEN5"
>   - Avoid further code dup by making GEN6 inherit from GEN5
> 
> - Patch 8: "drm/i915: Introduce GEN4_FEATURES for device info"
>   - Introduce GEN4 features, but kill off creating new sub categories for
>     GEN4 platforms.
> 
> - Patch 9: "drm/i915: Introduce GEN3_FEATURES for device info"
>   - Introduce GEN3 features, but kill off creating new sub categories for
>     GEN4 platforms.
> 
> - Patch 10: "drm/i915: Introduce GEN2_FEATURES for device info"
>   - Introduce GEN2 features, fix a minor bug with num_pipes
> 
> - Patch 10: "drm/i915: Move HAS_L3_DPF definition to platform definition"
>   - Fix which platforms actually support this feature
> 
> Carlos Santa (21):
>   drm/i915: Move HAS_PSR definition to platform struct definition
>   drm/i915: Introduce GEN6_FEATURES for device info
>   drm/i915: Move HAS_RUNTIME_PM definition to platform
>   drm/i915: Move HAS_CORE_RING_FREQ definition to platform definition
>   drm/i915: Make GEN7_FEATURES inherit from GEN6
>   drm/i915: Move HAS_CSR definition to platform definition
>   drm/i915: Move HAS_RESOURCE_STREAMER definition to platform definition
>   drm/i915: Move HAS_RC6 definition to platform definition
>   drm/i915: Move HAS_RC6p definition to platform definition
>   drm/i915: Move HAS_DP_MST definition to platform definition
>   drm/i915: Make GEN6_FEATURES inherit from GEN5
>   drm/i915: Move HAS_AUX_IRQ definition to platform definition
>   drm/i915: Move HAS_GMBUS_IRQ definition to platform definition
>   drm/i915: Introduce GEN4_FEATURES for device info
>   drm/i965: Make GEN4_FEATURES inherit from GEN3
>   drm/i915: Introduce GEN2_FEATURES for device info
>   drm/i915: Move HAS_FW_BLC definition to platform
>   drm/i915: Move HAS_HW_CONTEXTS definition to platform
>   drm/i915: Move HAS_LOGICAL_RING_CONTEXTS definition to platform
>   drm/i915: Move HAS_L3_DPF definition to platform definition
>   drm/i915: Move HAS_GMCH_DISPLAY definition to platform
> 
>  drivers/gpu/drm/i915/i915_drv.h |  57 ++++++-----
>  drivers/gpu/drm/i915/i915_pci.c | 217 +++++++++++++++++++++++-----------------
>  2 files changed, 157 insertions(+), 117 deletions(-)
> 
> -- 
> 1.9.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list