From patchwork Wed Oct 27 02:17:29 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xiang, Haihao" X-Patchwork-Id: 284492 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id o9R2Ki4k005601 for ; Wed, 27 Oct 2010 02:21:04 GMT Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3D6159EFFA for ; Tue, 26 Oct 2010 19:20:44 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id C40399E7D5 for ; Tue, 26 Oct 2010 19:19:10 -0700 (PDT) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga102.fm.intel.com with ESMTP; 26 Oct 2010 19:19:10 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.58,244,1286175600"; d="scan'208";a="620658572" Received: from xhh-ilk32.sh.intel.com (HELO localhost.localdomain) ([10.239.36.76]) by fmsmga002.fm.intel.com with ESMTP; 26 Oct 2010 19:19:10 -0700 From: "Xiang, Haihao" To: intel-gfx@lists.freedesktop.org Date: Wed, 27 Oct 2010 10:17:29 +0800 Message-Id: <1288145853-25252-3-git-send-email-haihao.xiang@intel.com> X-Mailer: git-send-email 1.7.0.4 In-Reply-To: <1288145853-25252-1-git-send-email-haihao.xiang@intel.com> References: <1288145853-25252-1-git-send-email-haihao.xiang@intel.com> Subject: [Intel-gfx] [PATH v2 2/6] Xv: Send instruction doesn't use implied move when sampling YUV surface X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Wed, 27 Oct 2010 02:21:04 +0000 (UTC) diff --git a/src/render_program/exa_wm_src_sample_argb.g4a b/src/render_program/exa_wm_src_sample_argb.g4a index c20f53f..384fe26 100644 --- a/src/render_program/exa_wm_src_sample_argb.g4a +++ b/src/render_program/exa_wm_src_sample_argb.g4a @@ -36,12 +36,13 @@ include(`exa_wm.g4i') /* load argb */ mov (1) g0.8<1>UD 0x00000000UD { align1 mask_disable }; +mov (8) src_msg<1>UD g0<8,8,1>UD { align1 }; /* copy to msg start reg*/ /* src_msg will be copied with g0, as it contains send desc */ /* emit sampler 'send' cmd */ send (16) src_msg_ind /* msg reg index */ src_sample_base<1>UW /* readback */ - g0<8,8,1>UW /* copy to msg start reg*/ + null sampler (1,0,F) /* sampler message description, (binding_table,sampler_index,datatype) /* here(src->dst) we should use src_sampler and src_surface */ mlen 5 rlen 8 { align1 }; /* required message len 5, readback len 8 */ diff --git a/src/render_program/exa_wm_src_sample_argb.g4b b/src/render_program/exa_wm_src_sample_argb.g4b index c5b9274..a15e40a 100644 --- a/src/render_program/exa_wm_src_sample_argb.g4b +++ b/src/render_program/exa_wm_src_sample_argb.g4b @@ -1,2 +1,3 @@ { 0x00000201, 0x20080061, 0x00000000, 0x00000000 }, - { 0x01800031, 0x21c01d29, 0x008d0000, 0x02580001 }, + { 0x00600001, 0x20200022, 0x008d0000, 0x00000000 }, + { 0x01800031, 0x21c01c09, 0x00000000, 0x02580001 }, diff --git a/src/render_program/exa_wm_src_sample_argb.g4b.gen5 b/src/render_program/exa_wm_src_sample_argb.g4b.gen5 index f8cb41e..42039af 100644 --- a/src/render_program/exa_wm_src_sample_argb.g4b.gen5 +++ b/src/render_program/exa_wm_src_sample_argb.g4b.gen5 @@ -1,2 +1,3 @@ { 0x00000201, 0x20080061, 0x00000000, 0x00000000 }, - { 0x01800031, 0x21c01d29, 0x208d0000, 0x0a8a0001 }, + { 0x00600001, 0x20200022, 0x008d0000, 0x00000000 }, + { 0x01800031, 0x21c01c09, 0x20000000, 0x0a8a0001 }, diff --git a/src/render_program/exa_wm_src_sample_planar.g4a b/src/render_program/exa_wm_src_sample_planar.g4a index ad33350..5f5520b 100644 --- a/src/render_program/exa_wm_src_sample_planar.g4a +++ b/src/render_program/exa_wm_src_sample_planar.g4a @@ -41,9 +41,10 @@ mov (1) g0.8<1>UD 0x0000e000UD { align1 mask_disable }; /* emit sampler 'send' cmd */ /* sample Y */ +mov (8) src_msg<1>UD g0<8,8,1>UD { align1 }; /* copy to msg start reg*/ send (16) src_msg_ind /* msg reg index */ src_sample_g<1>UW /* readback */ - g0<8,8,1>UW /* copy to msg start reg*/ + null sampler (1,0,F) /* sampler message description, (binding_table,sampler_index,datatype) /* here(src->dst) we should use src_sampler and src_surface */ mlen 5 rlen 2 { align1 }; /* required message len 5, readback len 8 */ @@ -51,7 +52,7 @@ send (16) src_msg_ind /* msg reg index */ /* sample U (Cr) */ send (16) src_msg_ind /* msg reg index */ src_sample_r<1>UW /* readback */ - g0<8,8,1>UW /* copy to msg start reg*/ + null sampler (3,0,F) /* sampler message description, (binding_table,sampler_index,datatype) /* here(src->dst) we should use src_sampler and src_surface */ mlen 5 rlen 2 { align1 }; /* required message len 5, readback len 8 */ @@ -59,7 +60,7 @@ send (16) src_msg_ind /* msg reg index */ /* sample V (Cb) */ send (16) src_msg_ind /* msg reg index */ src_sample_b<1>UW /* readback */ - g0<8,8,1>UW /* copy to msg start reg*/ + null sampler (5,0,F) /* sampler message description, (binding_table,sampler_index,datatype) /* here(src->dst) we should use src_sampler and src_surface */ mlen 5 rlen 2 { align1 }; /* required message len 5, readback len 8 */ diff --git a/src/render_program/exa_wm_src_sample_planar.g4b b/src/render_program/exa_wm_src_sample_planar.g4b index 23e5e0d..c8dc47d 100644 --- a/src/render_program/exa_wm_src_sample_planar.g4b +++ b/src/render_program/exa_wm_src_sample_planar.g4b @@ -1,4 +1,5 @@ { 0x00000201, 0x20080061, 0x00000000, 0x0000e000 }, - { 0x01800031, 0x22001d29, 0x008d0000, 0x02520001 }, - { 0x01800031, 0x21c01d29, 0x008d0000, 0x02520003 }, - { 0x01800031, 0x22401d29, 0x008d0000, 0x02520005 }, + { 0x00600001, 0x20200022, 0x008d0000, 0x00000000 }, + { 0x01800031, 0x22001c09, 0x00000000, 0x02520001 }, + { 0x01800031, 0x21c01c09, 0x00000000, 0x02520003 }, + { 0x01800031, 0x22401c09, 0x00000000, 0x02520005 }, diff --git a/src/render_program/exa_wm_src_sample_planar.g4b.gen5 b/src/render_program/exa_wm_src_sample_planar.g4b.gen5 index 71068d9..ce3670b 100644 --- a/src/render_program/exa_wm_src_sample_planar.g4b.gen5 +++ b/src/render_program/exa_wm_src_sample_planar.g4b.gen5 @@ -1,4 +1,5 @@ { 0x00000201, 0x20080061, 0x00000000, 0x0000e000 }, - { 0x01800031, 0x22001d29, 0x208d0000, 0x0a2a0001 }, - { 0x01800031, 0x21c01d29, 0x208d0000, 0x0a2a0003 }, - { 0x01800031, 0x22401d29, 0x208d0000, 0x0a2a0005 }, + { 0x00600001, 0x20200022, 0x008d0000, 0x00000000 }, + { 0x01800031, 0x22001c09, 0x20000000, 0x0a2a0001 }, + { 0x01800031, 0x21c01c09, 0x20000000, 0x0a2a0003 }, + { 0x01800031, 0x22401c09, 0x20000000, 0x0a2a0005 },