Home | History | Annotate | Download | only in PortingGuide
      1 MPP configuration
      2 -----------------
      3 Multi-Purpose Ports (MPP) are configurable through platform PCDs.
      4 In order to set desired pin multiplexing, .dsc file needs to be modified.
      5 (OpenPlatformPkg/Platforms/Marvell/Armada/{platform_name}.dsc - please refer to
      6 Documentation/Build.txt for currently supported {platftorm_name} )
      7 Following PCDs are available:
      8 
      9  gMarvellTokenSpaceGuid.PcdMppChipCount
     10 
     11 Indicates how many different chips are placed on board. So far up to 4 chips
     12 are supported.
     13 
     14 Every MPP PCD has <Num> part where
     15  <Num> stands for chip ID (order is not important, but configuration will be
     16  set for first PcdMppChipCount chips).
     17 
     18 Below is example for the first chip (Chip0).
     19 
     20  gMarvellTokenSpaceGuid.PcdChip0MppReverseFlag
     21 
     22 Indicates that register order is reversed. (Needs to be used only for AP806-Z1)
     23 
     24  gMarvellTokenSpaceGuid.PcdChip0MppBaseAddress
     25 
     26 This is base address for MPP configuration register.
     27 
     28  gMarvellTokenSpaceGuid.PcdChip0MppPinCount
     29 
     30 Defines how many MPP pins are available.
     31 
     32  gMarvellTokenSpaceGuid.PcdChip0MppSel0
     33  gMarvellTokenSpaceGuid.PcdChip0MppSel1
     34  gMarvellTokenSpaceGuid.PcdChip0MppSel2
     35 
     36 This registers defines functions of 10 pins in ascending order.
     37 
     38 Examples
     39 --------
     40 #APN806-A0 MPP SET
     41  gMarvellTokenSpaceGuid.PcdChip0MppReverseFlag|FALSE
     42  gMarvellTokenSpaceGuid.PcdChip0MppBaseAddress|0xF06F4000
     43  gMarvellTokenSpaceGuid.PcdChip0MppRegCount|3
     44  gMarvellTokenSpaceGuid.PcdChip0MppSel0|{ 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0 }
     45  gMarvellTokenSpaceGuid.PcdChip0MppSel1|{ 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }
     46 
     47 Set pin 6 and 7 to 0xa function:
     48  gMarvellTokenSpaceGuid.PcdChip0MppSel0|{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0xa, 0x0, 0x0 }
     49