From a8458d5d5e097c03536c47ea455257cf67f21c95 Mon Sep 17 00:00:00 2001 From: "Xiang, Haihao" Date: Sat, 9 Oct 2010 11:09:47 +0800 Subject: [PATCH] add support for data port read on Sandybridge Signed-off-by: Xiang, Haihao --- assembler/src/brw_structs.h | 12 ++++++++++++ assembler/src/gram.y | 9 ++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/assembler/src/brw_structs.h b/assembler/src/brw_structs.h index 6a29f37c..9b1cd920 100644 --- a/assembler/src/brw_structs.h +++ b/assembler/src/brw_structs.h @@ -1398,6 +1398,18 @@ struct brw_instruction GLuint end_of_thread:1; } dp_read_gen5; + struct { + GLuint binding_table_index:8; + GLuint msg_control:5; + GLuint msg_type:3; + GLuint pad0:3; + GLuint header_present:1; + GLuint response_length:5; + GLuint msg_length:4; + GLuint pad1:2; + GLuint end_of_thread:1; + } dp_read_gen6; + struct { GLuint binding_table_index:8; GLuint msg_control:3; diff --git a/assembler/src/gram.y b/assembler/src/gram.y index d5366256..ffb08519 100644 --- a/assembler/src/gram.y +++ b/assembler/src/gram.y @@ -630,7 +630,14 @@ msgtarget: NULL_TOKEN | READ LPAREN INTEGER COMMA INTEGER COMMA INTEGER COMMA INTEGER RPAREN { - if (gen_level == 5) { + if (gen_level == 6) { + $$.bits2.send_gen5.sfid = + BRW_MESSAGE_TARGET_DATAPORT_READ; + $$.bits3.generic_gen5.header_present = 1; + $$.bits3.dp_read_gen6.binding_table_index = $3; + $$.bits3.dp_read_gen6.msg_control = $7; + $$.bits3.dp_read_gen6.msg_type = $9; + } else if (gen_level == 5) { $$.bits2.send_gen5.sfid = BRW_MESSAGE_TARGET_DATAPORT_READ; $$.bits3.generic_gen5.header_present = 1;