[edk2-devel] [PATCH 1/2] MdeModulePkg/SataControllerDxe: Add support for drives in RAID mode
Vitaly Cheptsov
cheptsov at ispras.ru
Mon Dec 14 07:33:39 UTC 2020
Hello Hao,
This is for the case when the drives are not used as a RAID, but the controller is initialised in RAID mode. However, you are right that if a dedicated RAID driver is present, it is best to use it instead. To support both cases can we introduce an off-by-default PCD (e.g. TreatRaidAsSata) to workaround this?
Best regards,
Vitaly
> On 14 Dec 2020, at 09:22, Wu, Hao A <hao.a.wu at intel.com> wrote:
>
>
>>
>> -----Original Message-----
>> From: Vitaly Cheptsov <cheptsov at ispras.ru>
>> Sent: Friday, December 11, 2020 5:25 PM
>> To: devel at edk2.groups.io
>> Cc: Vitaly Cheptsov <cheptsov at ispras.ru>; Wang, Jian J
>> <jian.j.wang at intel.com>; Wu, Hao A <hao.a.wu at intel.com>; Albecki,
>> Mateusz <mateusz.albecki at intel.com>; Laszlo Ersek <lersek at redhat.com>
>> Subject: [PATCH 1/2] MdeModulePkg/SataControllerDxe: Add support for
>> drives in RAID mode
>>
>> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3118
>>
>> This resolves the problem of using drivers connected to Intel G33 builtin
>> SATA controller when run from DuetPkg when it can only be configured in
>> RAID mode through the firmware settings.
>
>
> Hello Vitaly,
>
> If my understanding is correct, this driver (SataControllerDxe) and the
> AtaAtapiPassThru driver are written for non-RAID case only.
>
> Both drivers (especially AtaAtapiPassThru) do not distinguish logic/physical
> SCSI channels, which I think only works for the non-RAID case. I am not sure if
> this patch series will have an impact to existing RAID drivers.
>
> Best Regards,
> Hao Wu
>
>
>>
>> Cc: Jian J Wang <jian.j.wang at intel.com>
>> Cc: Hao A Wu <hao.a.wu at intel.com>
>> Cc: Mateusz Albecki <mateusz.albecki at intel.com>
>> Cc: Laszlo Ersek <lersek at redhat.com>
>> Signed-off-by: Vitaly Cheptsov <cheptsov at ispras.ru>
>> ---
>> MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
>> b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
>> index ab06e2833c..301335c967 100644
>> --- a/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
>> +++ b/MdeModulePkg/Bus/Pci/SataControllerDxe/SataController.c
>> @@ -324,7 +324,7 @@ SataControllerSupported (
>> return EFI_UNSUPPORTED;
>> }
>>
>> - if (IS_PCI_IDE (&PciData) || IS_PCI_SATADPA (&PciData)) {
>> + if (IS_PCI_IDE (&PciData) || IS_PCI_SATADPA (&PciData) || IS_PCI_RAID
>> + (&PciData)) {
>> return EFI_SUCCESS;
>> }
>>
>> @@ -465,7 +465,7 @@ SataControllerStart (
>> if (IS_PCI_IDE (&PciData)) {
>> Private->IdeInit.ChannelCount = IDE_MAX_CHANNEL;
>> Private->DeviceCount = IDE_MAX_DEVICES;
>> - } else if (IS_PCI_SATADPA (&PciData)) {
>> + } else if (IS_PCI_SATADPA (&PciData) || IS_PCI_RAID (&PciData)) {
>> //
>> // Read Ports Implemented(PI) to calculate max port number (0 based).
>> //
>> --
>> 2.24.3 (Apple Git-128)
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#68761): https://edk2.groups.io/g/devel/message/68761
Mute This Topic: https://groups.io/mt/78875596/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list