Platforms/Marvell: Enable Pp2Dxe driver on Armada70x0 platform
Armada 7040 development board comprise three different ports:
eth0: SFP cage with fixed link to 1G
eth1: Optional 8-port switch with fixed link to 2.5G
eth2: 1G RGMII port with autonegotiation enabled
This change also required MPP setting modification.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Bartosz Szczepanek <bsz@semihalf.com>
Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
diff --git a/Platforms/Marvell/Armada/Armada.dsc.inc b/Platforms/Marvell/Armada/Armada.dsc.inc
index 1d440bc..76c5d6d 100644
--- a/Platforms/Marvell/Armada/Armada.dsc.inc
+++ b/Platforms/Marvell/Armada/Armada.dsc.inc
@@ -405,6 +405,7 @@
MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
OpenPlatformPkg/Drivers/Net/MvMdioDxe/MvMdioDxe.inf
OpenPlatformPkg/Drivers/Net/Phy/MvPhyDxe/MvPhyDxe.inf
+ OpenPlatformPkg/Drivers/Net/Pp2Dxe/Pp2Dxe.inf
MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
diff --git a/Platforms/Marvell/Armada/Armada70x0.dsc b/Platforms/Marvell/Armada/Armada70x0.dsc
index de314b9..2f2b278 100644
--- a/Platforms/Marvell/Armada/Armada70x0.dsc
+++ b/Platforms/Marvell/Armada/Armada70x0.dsc
@@ -119,10 +119,26 @@
gMarvellTokenSpaceGuid.PcdMdioBaseAddress|0xF212A200
#PHY
- gMarvellTokenSpaceGuid.PcdPhyConnectionTypes|{ 0x0, 0x0 }
+ gMarvellTokenSpaceGuid.PcdPhyConnectionTypes|{ 0x4, 0x4, 0x0 }
gMarvellTokenSpaceGuid.PcdPhyDeviceIds|{ 0x0, 0x0 }
gMarvellTokenSpaceGuid.PcdPhyStartupAutoneg|FALSE
+ #NET
+ gMarvellTokenSpaceGuid.PcdPhySmiAddresses|{ 0xff, 0x0, 0x1 }
+ gMarvellTokenSpaceGuid.PcdPp2ClockFrequency|333333333
+ gMarvellTokenSpaceGuid.PcdPp2GmacBaseAddress|0xf2130e00
+ gMarvellTokenSpaceGuid.PcdPp2GmacDevSize|0x1000
+ gMarvellTokenSpaceGuid.PcdPp2GopIndexes|{ 0x0, 0x2, 0x3 }
+ gMarvellTokenSpaceGuid.PcdPp2InterfaceAlwaysUp|{ 0x1, 0x1, 0x0 }
+ gMarvellTokenSpaceGuid.PcdPp2InterfaceSpeed|{ 0x3, 0x4, 0x3 }
+ gMarvellTokenSpaceGuid.PcdPp2NumPorts|3
+ gMarvellTokenSpaceGuid.PcdPp2PortIds|{ 0x0, 0x1, 0x2 }
+ gMarvellTokenSpaceGuid.PcdPp2Rfu1BaseAddress|0xf2441000
+ gMarvellTokenSpaceGuid.PcdPp2SharedAddress|0xf2000000
+ gMarvellTokenSpaceGuid.PcdPp2SmiBaseAddress|0xf212A200
+ gMarvellTokenSpaceGuid.PcdPp2XlgBaseAddress|0xf2130f00
+ gMarvellTokenSpaceGuid.PcdPp2XlgDevSize|0x1000
+
#ResetLib
gMarvellTokenSpaceGuid.PcdResetRegAddress|0xf06f0084
gMarvellTokenSpaceGuid.PcdResetRegMask|0x1
diff --git a/Platforms/Marvell/Armada/Armada70x0.fdf b/Platforms/Marvell/Armada/Armada70x0.fdf
index c56d4e3..64c3440 100644
--- a/Platforms/Marvell/Armada/Armada70x0.fdf
+++ b/Platforms/Marvell/Armada/Armada70x0.fdf
@@ -121,6 +121,7 @@
INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
INF OpenPlatformPkg/Drivers/Net/MvMdioDxe/MvMdioDxe.inf
INF OpenPlatformPkg/Drivers/Net/Phy/MvPhyDxe/MvPhyDxe.inf
+ INF OpenPlatformPkg/Drivers/Net/Pp2Dxe/Pp2Dxe.inf
# Multiple Console IO support
INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf