[edk2-devel] [PATCH edk2-platforms 1/2] Silicon/SynQuacer/PlatformDxe: set NETSEC DMA as coherent

Leif Lindholm via Groups.Io leif.lindholm=linaro.org at groups.io
Thu Nov 28 15:19:41 UTC 2019


On Thu, Nov 28, 2019 at 15:59:14 +0100, Ard Biesheuvel wrote:
> On Thu, 28 Nov 2019 at 15:56, Leif Lindholm <leif.lindholm at linaro.org> wrote:
> >
> > On Thu, Nov 28, 2019 at 15:48:39 +0100, Ard Biesheuvel wrote:
> > > We switched to cache coherent DMA for the NETSEC network controller ages
> > > ago, but the platform driver that registers the non-discoverable device
> > > currently does not reflect this change, which we haven't noticed since
> > > the driver doesn't look at this flag.
> >
> > Should the drive look at this flag?
> >
> 
> The driver links against DmaLib, so it is either built for coherent
> DMA only, or for non-coherent DMA only. This is different from the
> eMMC on this platform, since it uses NonDiscoverablePciDeviceDxe,
> which implements support for both coherent and non-coherent DMA in the
> same driver, so there it has to be accurate or things break. For
> NETSEC, we could add a check I suppose, but it is certainly not a high
> prio thing imo.

Ah, fair enough.
Thanks for the explanation.

/
    Leif

> > > Let's fix this nonetheless, in case it ever matters.
> > >
> > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel at linaro.org>
> >
> > This patch clearly makes sense anyway, so:
> > Reviewed-by: Leif Lindholm <leif.lindholm at linaro.org>
> >
> 
> Thanks
> 
> >
> > > ---
> > >  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c
> > > index 73cc560fa8d8..57f8fa90343a 100644
> > > --- a/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c
> > > +++ b/Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c
> > > @@ -130,7 +130,7 @@ RegisterDevice (
> > >    }
> > >
> > >    Device->Type = TypeGuid;
> > > -  Device->DmaType = NonDiscoverableDeviceDmaTypeNonCoherent;
> > > +  Device->DmaType = NonDiscoverableDeviceDmaTypeCoherent;
> > >    Device->Resources = Desc;
> > >
> > >    Status = gBS->InstallMultipleProtocolInterfaces (Handle,
> > > --
> > > 2.20.1
> > >

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#51473): https://edk2.groups.io/g/devel/message/51473
Mute This Topic: https://groups.io/mt/64139076/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