mirror of https://gitee.com/openkylin/linux.git
drm/i915: Organize GEN features inheritance.
As Chris noticed the current organization is confusing and inheritance is not clear. So, let's split it in GEN<n>_FEATURES <cdn>_PLATFORM where new GEN inherit features from previous gens and Platforms only use gen features plus what ever is specific for that platform and shouldn't be passed on. Cc: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Link: https://patchwork.freedesktop.org/patch/msgid/20171003063652.17248-2-rodrigo.vivi@intel.com
This commit is contained in:
parent
4d6ef0da41
commit
42a3ae8850
|
@ -329,7 +329,7 @@ static const struct intel_device_info intel_valleyview_info __initconst = {
|
||||||
CURSOR_OFFSETS
|
CURSOR_OFFSETS
|
||||||
};
|
};
|
||||||
|
|
||||||
#define HSW_FEATURES \
|
#define G75_FEATURES \
|
||||||
GEN7_FEATURES, \
|
GEN7_FEATURES, \
|
||||||
.ring_mask = RENDER_RING | BSD_RING | BLT_RING | VEBOX_RING, \
|
.ring_mask = RENDER_RING | BSD_RING | BLT_RING | VEBOX_RING, \
|
||||||
.has_ddi = 1, \
|
.has_ddi = 1, \
|
||||||
|
@ -341,7 +341,7 @@ static const struct intel_device_info intel_valleyview_info __initconst = {
|
||||||
.has_runtime_pm = 1
|
.has_runtime_pm = 1
|
||||||
|
|
||||||
#define HSW_PLATFORM \
|
#define HSW_PLATFORM \
|
||||||
HSW_FEATURES, \
|
G75_FEATURES, \
|
||||||
.platform = INTEL_HASWELL, \
|
.platform = INTEL_HASWELL, \
|
||||||
.has_l3_dpf = 1
|
.has_l3_dpf = 1
|
||||||
|
|
||||||
|
@ -360,8 +360,8 @@ static const struct intel_device_info intel_haswell_gt3_info __initconst = {
|
||||||
.gt = 3,
|
.gt = 3,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define BDW_FEATURES \
|
#define GEN8_FEATURES \
|
||||||
HSW_FEATURES, \
|
G75_FEATURES, \
|
||||||
BDW_COLORS, \
|
BDW_COLORS, \
|
||||||
.has_logical_ring_contexts = 1, \
|
.has_logical_ring_contexts = 1, \
|
||||||
.has_full_48bit_ppgtt = 1, \
|
.has_full_48bit_ppgtt = 1, \
|
||||||
|
@ -369,7 +369,7 @@ static const struct intel_device_info intel_haswell_gt3_info __initconst = {
|
||||||
.has_reset_engine = 1
|
.has_reset_engine = 1
|
||||||
|
|
||||||
#define BDW_PLATFORM \
|
#define BDW_PLATFORM \
|
||||||
BDW_FEATURES, \
|
GEN8_FEATURES, \
|
||||||
.gen = 8, \
|
.gen = 8, \
|
||||||
.platform = INTEL_BROADWELL
|
.platform = INTEL_BROADWELL
|
||||||
|
|
||||||
|
@ -420,15 +420,18 @@ static const struct intel_device_info intel_cherryview_info __initconst = {
|
||||||
CHV_COLORS,
|
CHV_COLORS,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define SKL_PLATFORM \
|
#define GEN9_FEATURES \
|
||||||
BDW_FEATURES, \
|
GEN8_FEATURES, \
|
||||||
.gen = 9, \
|
|
||||||
.platform = INTEL_SKYLAKE, \
|
|
||||||
.has_csr = 1, \
|
.has_csr = 1, \
|
||||||
.has_guc = 1, \
|
.has_guc = 1, \
|
||||||
.has_ipc = 1, \
|
.has_ipc = 1, \
|
||||||
.ddb_size = 896
|
.ddb_size = 896
|
||||||
|
|
||||||
|
#define SKL_PLATFORM \
|
||||||
|
GEN9_FEATURES, \
|
||||||
|
.gen = 9, \
|
||||||
|
.platform = INTEL_SKYLAKE
|
||||||
|
|
||||||
static const struct intel_device_info intel_skylake_gt1_info __initconst = {
|
static const struct intel_device_info intel_skylake_gt1_info __initconst = {
|
||||||
SKL_PLATFORM,
|
SKL_PLATFORM,
|
||||||
.gt = 1,
|
.gt = 1,
|
||||||
|
@ -497,13 +500,9 @@ static const struct intel_device_info intel_geminilake_info __initconst = {
|
||||||
};
|
};
|
||||||
|
|
||||||
#define KBL_PLATFORM \
|
#define KBL_PLATFORM \
|
||||||
BDW_FEATURES, \
|
GEN9_FEATURES, \
|
||||||
.gen = 9, \
|
.gen = 9, \
|
||||||
.platform = INTEL_KABYLAKE, \
|
.platform = INTEL_KABYLAKE
|
||||||
.has_csr = 1, \
|
|
||||||
.has_guc = 1, \
|
|
||||||
.has_ipc = 1, \
|
|
||||||
.ddb_size = 896
|
|
||||||
|
|
||||||
static const struct intel_device_info intel_kabylake_gt1_info __initconst = {
|
static const struct intel_device_info intel_kabylake_gt1_info __initconst = {
|
||||||
KBL_PLATFORM,
|
KBL_PLATFORM,
|
||||||
|
@ -522,13 +521,9 @@ static const struct intel_device_info intel_kabylake_gt3_info __initconst = {
|
||||||
};
|
};
|
||||||
|
|
||||||
#define CFL_PLATFORM \
|
#define CFL_PLATFORM \
|
||||||
BDW_FEATURES, \
|
GEN9_FEATURES, \
|
||||||
.gen = 9, \
|
.gen = 9, \
|
||||||
.platform = INTEL_COFFEELAKE, \
|
.platform = INTEL_COFFEELAKE
|
||||||
.has_csr = 1, \
|
|
||||||
.has_guc = 1, \
|
|
||||||
.has_ipc = 1, \
|
|
||||||
.ddb_size = 896
|
|
||||||
|
|
||||||
static const struct intel_device_info intel_coffeelake_gt1_info __initconst = {
|
static const struct intel_device_info intel_coffeelake_gt1_info __initconst = {
|
||||||
CFL_PLATFORM,
|
CFL_PLATFORM,
|
||||||
|
@ -546,16 +541,17 @@ static const struct intel_device_info intel_coffeelake_gt3_info __initconst = {
|
||||||
.ring_mask = RENDER_RING | BSD_RING | BLT_RING | VEBOX_RING | BSD2_RING,
|
.ring_mask = RENDER_RING | BSD_RING | BLT_RING | VEBOX_RING | BSD2_RING,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define GEN10_FEATURES \
|
||||||
|
GEN9_FEATURES, \
|
||||||
|
.ddb_size = 1024, \
|
||||||
|
.color = { .degamma_lut_size = 0, .gamma_lut_size = 1024 }
|
||||||
|
|
||||||
static const struct intel_device_info intel_cannonlake_gt2_info __initconst = {
|
static const struct intel_device_info intel_cannonlake_gt2_info __initconst = {
|
||||||
BDW_FEATURES,
|
GEN10_FEATURES,
|
||||||
.is_alpha_support = 1,
|
.is_alpha_support = 1,
|
||||||
.platform = INTEL_CANNONLAKE,
|
.platform = INTEL_CANNONLAKE,
|
||||||
.gen = 10,
|
.gen = 10,
|
||||||
.gt = 2,
|
.gt = 2,
|
||||||
.ddb_size = 1024,
|
|
||||||
.has_csr = 1,
|
|
||||||
.has_ipc = 1,
|
|
||||||
.color = { .degamma_lut_size = 0, .gamma_lut_size = 1024 }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue