Re: [edk2] [PATCH edk2-platforms 38/39] Platform/NXP:PCIe enablement for LS1046A RDB
>-Original Message- >From: Leif Lindholm [mailto:leif.lindh...@linaro.org] >Sent: Friday, April 20, 2018 9:03 PM >To: Meenakshi Aggarwal <meenakshi.aggar...@nxp.com> >Cc: ard.biesheu...@linaro.org; edk2-devel@lists.01.org; Udit Kumar ><udit.ku...@nxp.com>; Varun Sethi <v.se...@nxp.com>; Vabhav Sharma ><vabhav.sha...@nxp.com> >Subject: Re: [PATCH edk2-platforms 38/39] Platform/NXP:PCIe enablement for >LS1046A RDB > >On Fri, Feb 16, 2018 at 02:20:34PM +0530, Meenakshi wrote: >> From: Vabhav <vabhav.sha...@nxp.com> >> >> Compilation: Update the fdf, dsc and dec files. >> >> Contributed-under: TianoCore Contribution Agreement 1.1 >> Signed-off-by: Vabhav <vabhav.sha...@nxp.com> >> --- >> Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc | 15 >+++ >> Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf | 9 + >> .../LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf | 2 ++ >> .../NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c | 6 ++ >> Silicon/NXP/LS1046A/LS1046A.dsc | 3 +++ >> 5 files changed, 35 insertions(+) >> >> diff --git a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc >> b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc >> index 36002d5..231207d 100644 >> --- a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc >> +++ b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc >> @@ -41,6 +41,8 @@ >>IfcLib|Silicon/NXP/Library/IfcLib/IfcLib.inf >>BoardLib|Platform/NXP/LS1046aRdbPkg/Library/BoardLib/BoardLib.inf >>FpgaLib|Platform/NXP/LS1046aRdbPkg/Library/FpgaLib/FpgaLib.inf >> + PciSegmentLib|Silicon/NXP/Library/PciSegmentLib/PciSegmentLib.inf >> + >> + PciHostBridgeLib|Silicon/NXP/Library/PciHostBridgeLib/PciHostBridgeL >> + ib.inf >> >> [PcdsFixedAtBuild.common] >> >> @@ -65,6 +67,7 @@ >>gNxpQoriqLsTokenSpaceGuid.PcdGurBigEndian|TRUE >>gNxpQoriqLsTokenSpaceGuid.PcdWdogBigEndian|TRUE >>gNxpQoriqLsTokenSpaceGuid.PcdIfcBigEndian|TRUE >> + gNxpQoriqLsTokenSpaceGuid.PcdPciLutBigEndian|TRUE >> >># >># I2C controller Pcds >> @@ -77,6 +80,12 @@ >>gNxpQoriqLsTokenSpaceGuid.PcdI2cSlaveAddress|0x51 >>gNxpQoriqLsTokenSpaceGuid.PcdI2cSpeed|10 >> >> + # >> + # PCI PCDs. >> + # >> + gNxpQoriqLsTokenSpaceGuid.PcdPciDebug|FALSE >> + gNxpQoriqLsTokenSpaceGuid.PcdPcieLutBase|0x8 >> + gNxpQoriqLsTokenSpaceGuid.PcdPcieLutDbg|0x407FC >> >> >## > >> ## >> # >> # Components Section - list of all EDK II Modules needed by this >> Platform @@ -90,5 +99,11 @@ >> >>Silicon/NXP/Drivers/WatchDog/WatchDogDxe.inf >>Silicon/NXP/Drivers/I2cDxe/I2cDxe.inf >> + Silicon/NXP/Drivers/PciCpuIo2Dxe/PciCpuIo2Dxe.inf >> + MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf { >> + >> + gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8010004F >> + } >> + MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf >> >> ## >> diff --git a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf >> b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf >> index 834e3a4..3351a06 100644 >> --- a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf >> +++ b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf >> @@ -123,6 +123,13 @@ READ_LOCK_STATUS = TRUE >>INF EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf >> >># >> + # PCI >> + # >> + INF Silicon/NXP/Drivers/PciCpuIo2Dxe/PciCpuIo2Dxe.inf >> + INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf >> + INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf >> + >> + # >># Network modules >># >>INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf >> @@ -147,6 +154,8 @@ READ_LOCK_STATUS = TRUE >>INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf >> !endif >> >> + INF >> + >ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf >> + > >Same comment as for previous platform(s): please conditionalise and mention in >commit message. > >/ >Leif Ok, I will update it. > >># >># FAT filesystem + GPT/MBR partitioning >># >> diff --git >> a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf >> b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf >> index 49b57fc..5e09757 100644 >> --- >> a/Platform/NXP/LS1046aRdbPkg/Librar
Re: [edk2] [PATCH edk2-platforms 38/39] Platform/NXP:PCIe enablement for LS1046A RDB
On Fri, Feb 16, 2018 at 02:20:34PM +0530, Meenakshi wrote: > From: Vabhav> > Compilation: Update the fdf, dsc and dec files. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Vabhav > --- > Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc | 15 > +++ > Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf | 9 + > .../LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf | 2 ++ > .../NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c | 6 ++ > Silicon/NXP/LS1046A/LS1046A.dsc | 3 +++ > 5 files changed, 35 insertions(+) > > diff --git a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc > b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc > index 36002d5..231207d 100644 > --- a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc > +++ b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc > @@ -41,6 +41,8 @@ >IfcLib|Silicon/NXP/Library/IfcLib/IfcLib.inf >BoardLib|Platform/NXP/LS1046aRdbPkg/Library/BoardLib/BoardLib.inf >FpgaLib|Platform/NXP/LS1046aRdbPkg/Library/FpgaLib/FpgaLib.inf > + PciSegmentLib|Silicon/NXP/Library/PciSegmentLib/PciSegmentLib.inf > + PciHostBridgeLib|Silicon/NXP/Library/PciHostBridgeLib/PciHostBridgeLib.inf > > [PcdsFixedAtBuild.common] > > @@ -65,6 +67,7 @@ >gNxpQoriqLsTokenSpaceGuid.PcdGurBigEndian|TRUE >gNxpQoriqLsTokenSpaceGuid.PcdWdogBigEndian|TRUE >gNxpQoriqLsTokenSpaceGuid.PcdIfcBigEndian|TRUE > + gNxpQoriqLsTokenSpaceGuid.PcdPciLutBigEndian|TRUE > ># ># I2C controller Pcds > @@ -77,6 +80,12 @@ >gNxpQoriqLsTokenSpaceGuid.PcdI2cSlaveAddress|0x51 >gNxpQoriqLsTokenSpaceGuid.PcdI2cSpeed|10 > > + # > + # PCI PCDs. > + # > + gNxpQoriqLsTokenSpaceGuid.PcdPciDebug|FALSE > + gNxpQoriqLsTokenSpaceGuid.PcdPcieLutBase|0x8 > + gNxpQoriqLsTokenSpaceGuid.PcdPcieLutDbg|0x407FC > > > # > # Components Section - list of all EDK II Modules needed by this Platform > @@ -90,5 +99,11 @@ > >Silicon/NXP/Drivers/WatchDog/WatchDogDxe.inf >Silicon/NXP/Drivers/I2cDxe/I2cDxe.inf > + Silicon/NXP/Drivers/PciCpuIo2Dxe/PciCpuIo2Dxe.inf > + MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf { > + > + gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8010004F > + } > + MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf > > ## > diff --git a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf > b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf > index 834e3a4..3351a06 100644 > --- a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf > +++ b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf > @@ -123,6 +123,13 @@ READ_LOCK_STATUS = TRUE >INF EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf > ># > + # PCI > + # > + INF Silicon/NXP/Drivers/PciCpuIo2Dxe/PciCpuIo2Dxe.inf > + INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf > + INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf > + > + # ># Network modules ># >INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf > @@ -147,6 +154,8 @@ READ_LOCK_STATUS = TRUE >INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf > !endif > > + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf > + Same comment as for previous platform(s): please conditionalise and mention in commit message. / Leif ># ># FAT filesystem + GPT/MBR partitioning ># > diff --git > a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf > b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf > index 49b57fc..5e09757 100644 > --- a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf > +++ b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf > @@ -42,6 +42,8 @@ >gArmTokenSpaceGuid.PcdArmPrimaryCore >gNxpQoriqLsTokenSpaceGuid.PcdCcsrBaseAddr >gNxpQoriqLsTokenSpaceGuid.PcdCcsrSize > + gNxpQoriqLsTokenSpaceGuid.PcdRomBaseAddr > + gNxpQoriqLsTokenSpaceGuid.PcdRomSize >gNxpQoriqLsTokenSpaceGuid.PcdIfcRegion1BaseAddr >gNxpQoriqLsTokenSpaceGuid.PcdIfcRegion1Size >gNxpQoriqLsTokenSpaceGuid.PcdIfcRegion2BaseAddr > diff --git a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c > b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c > index 64c5612..1ef3292 100644 > --- a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c > +++ b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c > @@ -67,6 +67,12 @@ ArmPlatformGetVirtualMemoryMap ( >VirtualMemoryTable[Index].Length = FixedPcdGet64 (PcdCcsrSize); >VirtualMemoryTable[Index].Attributes = > ARM_MEMORY_REGION_ATTRIBUTE_DEVICE; > > + // ROM Space > + VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet64 (PcdRomBaseAddr); > + VirtualMemoryTable[Index].VirtualBase = FixedPcdGet64 (PcdRomBaseAddr); > + VirtualMemoryTable[Index].Length =
[edk2] [PATCH edk2-platforms 38/39] Platform/NXP:PCIe enablement for LS1046A RDB
From: VabhavCompilation: Update the fdf, dsc and dec files. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Vabhav --- Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc | 15 +++ Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf | 9 + .../LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf | 2 ++ .../NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c | 6 ++ Silicon/NXP/LS1046A/LS1046A.dsc | 3 +++ 5 files changed, 35 insertions(+) diff --git a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc index 36002d5..231207d 100644 --- a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc +++ b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.dsc @@ -41,6 +41,8 @@ IfcLib|Silicon/NXP/Library/IfcLib/IfcLib.inf BoardLib|Platform/NXP/LS1046aRdbPkg/Library/BoardLib/BoardLib.inf FpgaLib|Platform/NXP/LS1046aRdbPkg/Library/FpgaLib/FpgaLib.inf + PciSegmentLib|Silicon/NXP/Library/PciSegmentLib/PciSegmentLib.inf + PciHostBridgeLib|Silicon/NXP/Library/PciHostBridgeLib/PciHostBridgeLib.inf [PcdsFixedAtBuild.common] @@ -65,6 +67,7 @@ gNxpQoriqLsTokenSpaceGuid.PcdGurBigEndian|TRUE gNxpQoriqLsTokenSpaceGuid.PcdWdogBigEndian|TRUE gNxpQoriqLsTokenSpaceGuid.PcdIfcBigEndian|TRUE + gNxpQoriqLsTokenSpaceGuid.PcdPciLutBigEndian|TRUE # # I2C controller Pcds @@ -77,6 +80,12 @@ gNxpQoriqLsTokenSpaceGuid.PcdI2cSlaveAddress|0x51 gNxpQoriqLsTokenSpaceGuid.PcdI2cSpeed|10 + # + # PCI PCDs. + # + gNxpQoriqLsTokenSpaceGuid.PcdPciDebug|FALSE + gNxpQoriqLsTokenSpaceGuid.PcdPcieLutBase|0x8 + gNxpQoriqLsTokenSpaceGuid.PcdPcieLutDbg|0x407FC # # Components Section - list of all EDK II Modules needed by this Platform @@ -90,5 +99,11 @@ Silicon/NXP/Drivers/WatchDog/WatchDogDxe.inf Silicon/NXP/Drivers/I2cDxe/I2cDxe.inf + Silicon/NXP/Drivers/PciCpuIo2Dxe/PciCpuIo2Dxe.inf + MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf { + + gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8010004F + } + MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf ## diff --git a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf index 834e3a4..3351a06 100644 --- a/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf +++ b/Platform/NXP/LS1046aRdbPkg/LS1046aRdbPkg.fdf @@ -123,6 +123,13 @@ READ_LOCK_STATUS = TRUE INF EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf # + # PCI + # + INF Silicon/NXP/Drivers/PciCpuIo2Dxe/PciCpuIo2Dxe.inf + INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf + INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf + + # # Network modules # INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf @@ -147,6 +154,8 @@ READ_LOCK_STATUS = TRUE INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf !endif + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf + # # FAT filesystem + GPT/MBR partitioning # diff --git a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf index 49b57fc..5e09757 100644 --- a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf +++ b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/ArmPlatformLib.inf @@ -42,6 +42,8 @@ gArmTokenSpaceGuid.PcdArmPrimaryCore gNxpQoriqLsTokenSpaceGuid.PcdCcsrBaseAddr gNxpQoriqLsTokenSpaceGuid.PcdCcsrSize + gNxpQoriqLsTokenSpaceGuid.PcdRomBaseAddr + gNxpQoriqLsTokenSpaceGuid.PcdRomSize gNxpQoriqLsTokenSpaceGuid.PcdIfcRegion1BaseAddr gNxpQoriqLsTokenSpaceGuid.PcdIfcRegion1Size gNxpQoriqLsTokenSpaceGuid.PcdIfcRegion2BaseAddr diff --git a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c index 64c5612..1ef3292 100644 --- a/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c +++ b/Platform/NXP/LS1046aRdbPkg/Library/PlatformLib/NxpQoriqLsMem.c @@ -67,6 +67,12 @@ ArmPlatformGetVirtualMemoryMap ( VirtualMemoryTable[Index].Length = FixedPcdGet64 (PcdCcsrSize); VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE; + // ROM Space + VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet64 (PcdRomBaseAddr); + VirtualMemoryTable[Index].VirtualBase = FixedPcdGet64 (PcdRomBaseAddr); + VirtualMemoryTable[Index].Length = FixedPcdGet64 (PcdRomSize); + VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE; + // IFC region 1 // // A-009241 : Unaligned write transactions to IFC may result in corruption of data diff --git a/Silicon/NXP/LS1046A/LS1046A.dsc b/Silicon/NXP/LS1046A/LS1046A.dsc index 9f87028..59a6150 100644 --- a/Silicon/NXP/LS1046A/LS1046A.dsc +++ b/Silicon/NXP/LS1046A/LS1046A.dsc @@