From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.120]) by mx.groups.io with SMTP id smtpd.web11.6331.1588711472483602501 for ; Tue, 05 May 2020 13:44:33 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=MmxH37Iq; spf=pass (domain: redhat.com, ip: 207.211.31.120, mailfrom: lersek@redhat.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1588711471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VgTrGWqjOaUcwosIHWrtdA9EGgadoNea915M1ZxC6Po=; b=MmxH37IqdwqL389Sm8foN4f0gc//6cVZns56jKqgxklIDxyMDuGWtNoZq8Dp3FqvP8VE+E fPIs9lpQ4ZKw+z67tchaqsugd3sJbokuvjaJ80HEFnNwYqkiaKwnATSpJK7Zi8TTe7DC76 HXQac9ZtTcHPlUYgtD8ZoDvAVjcQTQQ= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-95-PcuILHtfNByvrmY2UrwbNA-1; Tue, 05 May 2020 16:44:27 -0400 X-MC-Unique: PcuILHtfNByvrmY2UrwbNA-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 2B440107B266; Tue, 5 May 2020 20:44:26 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-114-134.ams2.redhat.com [10.36.114.134]) by smtp.corp.redhat.com (Postfix) with ESMTP id 77A9E7053E; Tue, 5 May 2020 20:44:24 +0000 (UTC) Subject: Re: [edk2-devel] [PATCH v6 00/12] OvmfPkg: Support booting from Fusion-MPT SCSI controllers To: devel@edk2.groups.io, nikita.leshchenko@oracle.com Cc: liran.alon@oracle.com, aaron.young@oracle.com, Jordan Justen , Ard Biesheuvel References: <20200504210607.144434-1-nikita.leshchenko@oracle.com> From: "Laszlo Ersek" Message-ID: <8bb25291-51df-7f39-abe6-a128574aeaa1@redhat.com> Date: Tue, 5 May 2020 22:44:23 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20200504210607.144434-1-nikita.leshchenko@oracle.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit On 05/04/20 23:05, Nikita Leshenko wrote: > This series adds driver support for: > - LSI53C1030 > - SAS1068 > - SAS1068E > > These controllers are widely supported by QEMU, VirtualBox and VMWare. > This work is part of the more general agenda of enhancing OVMF boot > device support to have feature parity with SeaBIOS. > > I pushed a copy of these patches to > https://github.com/nikital/edk2/tree/mptscsi_v6 > Previous versions: > https://github.com/nikital/edk2/tree/mptscsi_v5 > https://github.com/nikital/edk2/tree/mptscsi_v4 > https://github.com/nikital/edk2/tree/mptscsi_v3 > https://github.com/nikital/edk2/tree/mptscsi (v2) > > v5->v6: > - Use for "other" error ReportHostAdapterError > - Add alignment for init request > - Add PcdLib > - Use RShiftU64 > - Use Pages for FreeBuffer > - Use STATIC_ASSERT for ReplyWord > - Code convention fixes Github.com pull request: https://github.com/tianocore/edk2/pull/582 Commit range: f159102a130f..c635a56384bf. Thanks! Laszlo > > v4->v5: > - Sort maintainers and protocols > - Fix bug when restoring PCI attributes (Use Set instead of Enable) > - Separate packed structs and aligned unions > - STATIC_ASSERT for init request size > - Add support for multiple targets from the beginning > - Use PCI_BAR_IDX0 in door bell > - Code convention improvements > - Add DEBUG_VERBOSE message seen in PvScsiExitBoot > - Return EFI_INVALID_PARAMETER in GetNextTarget > - STATIC_ASSERT for MaxTarget > - Move PCD near PvScsi > - A lot of fixes for PassThru (comments, error handling, casting) > - Support 64-bit DMA > > v3->v4: > - Add ExitBootServices > - Rework error handling in PassThru > - SPDX license > - Made compilation conditional > - Squash GetTargetLun and BuildDevicePath commits > - Added #include > - Use PCI_BAR_IDX0 > - Code convention improvements > > v2->v3: > - Change error handling style > - Add comments about target size and zero unused target bytes > - Remove internal Reviewed-by > - Fix problems reported by PatchCheck.py > - Use SetupGit.py > > v1->v2: > - Map() DMAed buffers > - Fixed various code convention issues > - Newer debug macros > - Updated INF version > > Thanks, > Nikita > > Nikita Leshenko (12): > OvmfPkg/MptScsiDxe: Create empty driver > OvmfPkg/MptScsiDxe: Install DriverBinding Protocol > OvmfPkg/MptScsiDxe: Report name of driver > OvmfPkg/MptScsiDxe: Probe PCI devices and look for MptScsi > OvmfPkg/MptScsiDxe: Install stubbed EXT_SCSI_PASS_THRU > OvmfPkg/MptScsiDxe: Report targets and one LUN > OvmfPkg/MptScsiDxe: Build and decode DevicePath > OvmfPkg/MptScsiDxe: Open PciIo protocol for later use > OvmfPkg/MptScsiDxe: Set and restore PCI attributes > OvmfPkg/MptScsiDxe: Initialize hardware > OvmfPkg/MptScsiDxe: Implement the PassThru method > OvmfPkg/MptScsiDxe: Reset device on ExitBootServices() > > Maintainers.txt | 3 +- > .../Include/IndustryStandard/FusionMptScsi.h | 160 +++ > OvmfPkg/MptScsiDxe/MptScsi.c | 1211 +++++++++++++++++ > OvmfPkg/MptScsiDxe/MptScsiDxe.inf | 44 + > OvmfPkg/OvmfPkg.dec | 7 + > OvmfPkg/OvmfPkgIa32.dsc | 4 + > OvmfPkg/OvmfPkgIa32.fdf | 3 + > OvmfPkg/OvmfPkgIa32X64.dsc | 4 + > OvmfPkg/OvmfPkgIa32X64.fdf | 3 + > OvmfPkg/OvmfPkgX64.dsc | 4 + > OvmfPkg/OvmfPkgX64.fdf | 3 + > 11 files changed, 1445 insertions(+), 1 deletion(-) > create mode 100644 OvmfPkg/Include/IndustryStandard/FusionMptScsi.h > create mode 100644 OvmfPkg/MptScsiDxe/MptScsi.c > create mode 100644 OvmfPkg/MptScsiDxe/MptScsiDxe.inf >