From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-it0-x22f.google.com (mail-it0-x22f.google.com [IPv6:2607:f8b0:4001:c0b::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 705B881E82 for ; Tue, 15 Nov 2016 06:57:46 -0800 (PST) Received: by mail-it0-x22f.google.com with SMTP id c20so153936722itb.0 for ; Tue, 15 Nov 2016 06:57:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=tin/AdfqabnQjYvUPN2wd9sUMvFvsEWlHjuSkSTFwAU=; b=NT9V/OSbPql2p5eI3LUgVwBpeDPkT6CXJ3rPC94YO/nE3BDCtVINWlD/lOo34HK/KN 2vM9WW6Oku+H5QDUywwMXjD0qetQGtrNNNW8IJekhRq1TN58QK+x0kwOnkY/aUj5NIbq 5V6i/SeSAIcCdgrS9llmuCvfERFexKFWAsOyM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=tin/AdfqabnQjYvUPN2wd9sUMvFvsEWlHjuSkSTFwAU=; b=XOy9r/QhgksMvAO7mOe17xyRQ5U/rM+aRexEhXdJM76nebiEkU8TVtXvpoNbV7I2Rl Xm/7XdsIsvQ/FX/qYdhvi7RMhgkoFZOn+Mvi0fcn0SA8EoTdxJl3nAi7mqiHBPAE6IeX Uy4eJ02sC7zQQ345iMdTrpHPqM3jav+RJztwcYdGMjeV8woKtYOivDpYmZOv73SbEWme Wzd/8iIObBifHOkgpJSi031vz6fzt3SqvrTS0TXHaWPlTV3P/gzMeRpBAvnKS9bhfRC0 uRx7T/aUfX3Vbrbv154UZ660zFSFns2xs+Dzy1+2oRKzz53zWCQ0xC8gfBXXLK9fLYAN YWIg== X-Gm-Message-State: ABUngvdgOjVp5WF4FD0guVXwpvic6WZLA99cTy0WaKRCqazOYBvWFmgyhLKee++sgqe6dVahTvTTFV6CeMsnbhAI X-Received: by 10.107.2.8 with SMTP id 8mr29434029ioc.83.1479221869500; Tue, 15 Nov 2016 06:57:49 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.59.147 with HTTP; Tue, 15 Nov 2016 06:57:48 -0800 (PST) In-Reply-To: References: <1479157789-14674-1-git-send-email-jeremy.linton@arm.com> From: Ard Biesheuvel Date: Tue, 15 Nov 2016 14:57:48 +0000 Message-ID: To: Jeremy Linton Cc: edk2-devel-01 , Steve Capper , Leif Lindholm , Ryan Harkin , linaro-uefi Subject: Re: [PATCH 0/8] ATAPI support on SiI SATA adapter X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Nov 2016 14:57:46 -0000 Content-Type: text/plain; charset=UTF-8 On 15 November 2016 at 14:54, Jeremy Linton wrote: > On 11/15/2016 01:43 AM, Ard Biesheuvel wrote: >> >> Hi Jeremy, >> >> On 14 November 2016 at 21:09, Jeremy Linton wrote: >>> >>> The SiI isn't an AHCI compatible adapter so it implements the EFI ATA >>> pass-through protocol directly. This works for fixed hard drives, but >>> not ATAPI attached devices (CDROM, DVDROM, TAPE, etc). >>> >>> This patch adds read only ATAPI support via the EFI SCSI pass-through >>> protocol, allowing boot from attached CD/DVD. This patch also cleans >>> up, and tweaks recovery paths/etc in the original driver. >> >> >> Very nice! Thanks for getting to the bottom of this. >> >> However, looking at the patches, they are riddled with coding style >> violations. I am usually less strict than Leif when it comes to >> upholding those, but these patches really need to be cleaned up to be >> considered for merging. > > > > Is there a tool which can correct or at least point out the formatting > errors? > Yes, BaseTools/Scripts/PatchCheck.py > >> >>> When >>> combined with the ARM/PCI dma lib changes this allows us to relax the >>> IO alignment requirement that caused grub failures. >>> >> >> What changes are you referring to here? > > > I believe on juno the PCI changed from the ArmDmaLib to the null lib or some > such, which removed the bounce buffering on unaligned map/unmap. > Indeed, it removed the use of uncached memory, which does not work for coherent masters. I only realize now that the Sil3132 is a coherent PCI device, and that you were using 4 KB IoAlign to work around the non-coherent nature of ArmDmaLib > >> >>> Finally, the OpenPlatformPkg/Juno must be updated, with another patch >>> to avoid build breaks now that the SiI has a dependency on the SCSI >>> libraries. >>> >>> Contributed-under: TianoCore Contribution Agreement 1.0 >>> Signed-off-by: Jeremy Linton >>> >>> Jeremy Linton (7): >>> MdePkg IndustryStandard/Scsi.h: Add sense code macro >>> EmbeddedPkg: SiI3132: Add ScsiProtocol callbacks >>> EmbeddedPkg: SiI3132: Add SCSI protocol support to header >>> EmbeddedPkg: SiI3132: Break out FIS command submission >>> EmbeddedPkg: SiI3132: Cleanup device node creation >>> EmbeddedPkg: SiI3132: Enable SCSI pass-through protocol >>> EmbeddedPkg: SiI3132: Correct the IoAlign >>> >>> EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132.c | 48 ++- >>> EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132.h | 89 ++++- >>> .../Drivers/SataSiI3132Dxe/SataSiI3132Dxe.inf | 2 + >>> .../Drivers/SataSiI3132Dxe/SiI3132AtaPassThru.c | 270 ++++++++------ >>> .../Drivers/SataSiI3132Dxe/SiI3132ScsiPassThru.c | 401 >>> +++++++++++++++++++++ >>> MdePkg/Include/IndustryStandard/Scsi.h | 2 + >>> OpenPlatformPkg | 2 +- >>> 7 files changed, 688 insertions(+), 126 deletions(-) >>> create mode 100644 >>> EmbeddedPkg/Drivers/SataSiI3132Dxe/SiI3132ScsiPassThru.c >>> >>> -- >>> 2.5.5 >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org >>> https://lists.01.org/mailman/listinfo/edk2-devel > >