summaryrefslogtreecommitdiffstats
path: root/src/intel/isl/isl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/intel/isl/isl.c')
-rw-r--r--src/intel/isl/isl.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c
index 435cffd8a65..92658ec7af7 100644
--- a/src/intel/isl/isl.c
+++ b/src/intel/isl/isl.c
@@ -1276,6 +1276,20 @@ isl_surf_fill_state_s(const struct isl_device *dev, void *state,
}
switch (ISL_DEV_GEN(dev)) {
+ case 4:
+ if (ISL_DEV_IS_G4X(dev)) {
+ /* G45 surface state is the same as gen5 */
+ isl_gen5_surf_fill_state_s(dev, state, info);
+ } else {
+ isl_gen4_surf_fill_state_s(dev, state, info);
+ }
+ break;
+ case 5:
+ isl_gen5_surf_fill_state_s(dev, state, info);
+ break;
+ case 6:
+ isl_gen6_surf_fill_state_s(dev, state, info);
+ break;
case 7:
if (ISL_DEV_IS_HASWELL(dev)) {
isl_gen75_surf_fill_state_s(dev, state, info);
@@ -1299,6 +1313,14 @@ isl_buffer_fill_state_s(const struct isl_device *dev, void *state,
const struct isl_buffer_fill_state_info *restrict info)
{
switch (ISL_DEV_GEN(dev)) {
+ case 4:
+ case 5:
+ /* Gen 4-5 are all the same when it comes to buffer surfaces */
+ isl_gen5_buffer_fill_state_s(state, info);
+ break;
+ case 6:
+ isl_gen6_buffer_fill_state_s(state, info);
+ break;
case 7:
if (ISL_DEV_IS_HASWELL(dev)) {
isl_gen75_buffer_fill_state_s(state, info);