diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2009-07-27 17:11:25 +0800 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2009-07-27 17:13:41 +0800 |
commit | 4e87262a7fd84708aa674ba66bb8413eb88ca042 (patch) | |
tree | 012658bb909fd1068fe8a2e883128d14cf0ae638 /i965_media.c | |
parent | c3f90f889276135e93e2ee8b41829d0f8dc39092 (diff) | |
download | libva-intel-driver-4e87262a7fd84708aa674ba66bb8413eb88ca042.tar.gz libva-intel-driver-4e87262a7fd84708aa674ba66bb8413eb88ca042.tar.bz2 libva-intel-driver-4e87262a7fd84708aa674ba66bb8413eb88ca042.zip |
i965_drv_video: Eanble VAAPI on IGDNG
Diffstat (limited to 'i965_media.c')
-rw-r--r-- | i965_media.c | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/i965_media.c b/i965_media.c index bc51e8e..f7d5846 100644 --- a/i965_media.c +++ b/i965_media.c @@ -71,14 +71,29 @@ i965_media_urb_layout(VADriverContextP ctx) static void i965_media_state_base_address(VADriverContextP ctx) { - BEGIN_BATCH(ctx, 6); - OUT_BATCH(ctx, CMD_STATE_BASE_ADDRESS | 4); - OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); - OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); - OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); - OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); - OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); - ADVANCE_BATCH(ctx); + struct i965_driver_data *i965 = i965_driver_data(ctx); + + if (IS_IGDNG(i965->intel.device_id)) { + BEGIN_BATCH(ctx, 8); + OUT_BATCH(ctx, CMD_STATE_BASE_ADDRESS | 6); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + ADVANCE_BATCH(ctx); + } else { + BEGIN_BATCH(ctx, 6); + OUT_BATCH(ctx, CMD_STATE_BASE_ADDRESS | 4); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + OUT_BATCH(ctx, 0 | BASE_ADDRESS_MODIFY); + ADVANCE_BATCH(ctx); + } } static void |