From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L9kWY-0000P4-MQ for qemu-devel@nongnu.org; Mon, 08 Dec 2008 13:08:02 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L9kWX-0000OW-4E for qemu-devel@nongnu.org; Mon, 08 Dec 2008 13:08:02 -0500 Received: from [199.232.76.173] (port=41566 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L9kWW-0000OT-UR for qemu-devel@nongnu.org; Mon, 08 Dec 2008 13:08:00 -0500 Received: from e31.co.us.ibm.com ([32.97.110.149]:49697) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L9kWW-00035v-HN for qemu-devel@nongnu.org; Mon, 08 Dec 2008 13:08:00 -0500 Received: from d03relay02.boulder.ibm.com (d03relay02.boulder.ibm.com [9.17.195.227]) by e31.co.us.ibm.com (8.13.1/8.13.1) with ESMTP id mB8I6fPE017779 for ; Mon, 8 Dec 2008 11:06:41 -0700 Received: from d03av04.boulder.ibm.com (d03av04.boulder.ibm.com [9.17.195.170]) by d03relay02.boulder.ibm.com (8.13.8/8.13.8/NCO v9.1) with ESMTP id mB8I7rid063852 for ; Mon, 8 Dec 2008 11:07:55 -0700 Received: from d03av04.boulder.ibm.com (loopback [127.0.0.1]) by d03av04.boulder.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id mB8I7p0Z003873 for ; Mon, 8 Dec 2008 11:07:52 -0700 From: Ryan Harper Date: Mon, 8 Dec 2008 12:07:46 -0600 Message-Id: <1228759670-31113-1-git-send-email-ryanh@us.ibm.com> Subject: [Qemu-devel] [PATCH 0/4] LSI53C895A: Implemented 64-bit Block Moves Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Ryan Harper , kvm@vger.kernel.org This patch series implements 64-bit Block Moves[1]. The LSI device supports issuing 64-bit DMA block moves using a number of methods; 64-bit Direct, 64-bit Indirect, 64-bit Table Indirect. 64-bit Direct requires fetching a third dword from SCRIPTS buffer which will contain the upper 32-bits of the target DMA address. 64-bit Table Indirect extracts an encoding of which register contains the upper 32-bit address for the DMA. The following guests now work with the patch series applied: - Any Linux where drivers/scsi/sym53c8xx_2/ is configured with SYM_CONF_DMA_ADDRESSING_MODE=2 which uses 64-bit Table Indirect block moves - Windows XP x64, which uses 64-bit Direct moves. - Windows 2003 SP2 x64, which uses 64-bit Direct moves. The 4 patches do the following: Patch1: rename lsi register DMBS to DBMS Patch2: Implement 64-bit block moves (direct and table indirect) Patch3: Implement Target Reset SCSI Message Patch4: Implement 64-bit mode Linux quirk for Table Indirect moves Details included in each patch. This patch series was tested on top of kvm-userspace as current Qemu bits even with -enable-kvm don't want to run Windows x64. 1. http://www.lsi.com/DistributionSystem/AssetDocument/files/docs/techdocs/storage_stand_prod/SCSIControllers/lsi53c895a_tech_manual.pdf Page 227 (Section 5.3) Signed-off-by: Ryan Harper