## @file
#
#  Copyright (c) 2018, Linaro Ltd. All rights reserved.
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  DEC_SPECIFICATION              = 0x0001001A
  PACKAGE_NAME                   = 96Boards
  PACKAGE_GUID                   = ce4a4683-6e2d-4ec3-bc11-974289a09ab0
  PACKAGE_VERSION                = 0.1

[Includes]
  Include

[Protocols]
  ## Include/Protocol/Mezzanine.h
  g96BoardsMezzanineProtocolGuid = { 0xf0467a37, 0x3436, 0x40ef, { 0x94, 0x09, 0x4d, 0x1d, 0x7f, 0x51, 0x06, 0xd3 } }

  ## Include/Protocol/LsConnector.h
  g96BoardsLsConnectorProtocolGuid = { 0xae548d4c, 0x9062, 0x4eed, { 0x83, 0x5f, 0xf5, 0x10, 0xf8, 0xfc, 0x48, 0xaf } }

[Guids]
  # PCD scope GUID
  g96BoardsTokenSpaceGuid = { 0xe0d2f33a, 0xb7dd, 0x4a69, { 0xb6, 0x76, 0xda, 0xe8, 0xa4, 0x17, 0xa7, 0xb5 } }

  # GUIDs to be installed as protocols to identify which controller connects to which bus
  g96BoardsI2c0MasterGuid = { 0xba10e402, 0xcfdd, 0x4b87, { 0xbd, 0x02, 0x6e, 0x26, 0x9f, 0x01, 0x94, 0x11 } }
  g96BoardsI2c1MasterGuid = { 0xcf64ac46, 0xd0be, 0x4a69, { 0x90, 0xa2, 0xf2, 0x82, 0x5b, 0x92, 0x25, 0x61 } }
  g96BoardsSpiMasterGuid = { 0x9703fd99, 0xe638, 0x42b8, { 0xab, 0x81, 0x52, 0x61, 0x1b, 0xf7, 0xf7, 0x5d } }

  # GUID for the HII configuration form
  g96BoardsFormsetGuid = { 0x7500c9d2, 0x9203, 0x4a37, { 0x84, 0xbb, 0x92, 0xa9, 0xce, 0x34, 0x38, 0xbd } }

[PcdsFixedAtBuild]
  # ASCII DT paths to the I2C parent nodes of the 96boards LS connector
  g96BoardsTokenSpaceGuid.PcdI2c0Parent|""|VOID*|0x00000001
  g96BoardsTokenSpaceGuid.PcdI2c1Parent|""|VOID*|0x00000002

  # I2C bus frequency in Hertz
  g96BoardsTokenSpaceGuid.PcdI2c0BusFrequencyHz|0|UINT32|0x00000003
  g96BoardsTokenSpaceGuid.PcdI2c1BusFrequencyHz|0|UINT32|0x00000004

  # ASCII DT path to the SPI parent node of the 96boards LS connector
  g96BoardsTokenSpaceGuid.PcdSpiParent|""|VOID*|0x00000005

  # ASCII DT path to the GPIO parent node of the 96boards LS connector
  g96BoardsTokenSpaceGuid.PcdGpioParent|""|VOID*|0x00000006

  # Polarity of the 96boards LS connector GPIOs (0 == GPIO_ACTIVE_HIGH, 1 == GPIO_ACTIVE_LOW)
  g96BoardsTokenSpaceGuid.PcdGpioPolarity|0|UINT32|0x00000007

  # Pin numbers of the 96boards LS connector GPIOs
  g96BoardsTokenSpaceGuid.PcdGpioPinA|0|UINT32|0x00000010
  g96BoardsTokenSpaceGuid.PcdGpioPinB|0|UINT32|0x00000011
  g96BoardsTokenSpaceGuid.PcdGpioPinC|0|UINT32|0x00000012
  g96BoardsTokenSpaceGuid.PcdGpioPinD|0|UINT32|0x00000013
  g96BoardsTokenSpaceGuid.PcdGpioPinE|0|UINT32|0x00000014
  g96BoardsTokenSpaceGuid.PcdGpioPinF|0|UINT32|0x00000015
  g96BoardsTokenSpaceGuid.PcdGpioPinG|0|UINT32|0x00000016
  g96BoardsTokenSpaceGuid.PcdGpioPinH|0|UINT32|0x00000017
  g96BoardsTokenSpaceGuid.PcdGpioPinI|0|UINT32|0x00000018
  g96BoardsTokenSpaceGuid.PcdGpioPinJ|0|UINT32|0x00000019
  g96BoardsTokenSpaceGuid.PcdGpioPinK|0|UINT32|0x0000001A
  g96BoardsTokenSpaceGuid.PcdGpioPinL|0|UINT32|0x0000001B
