## @file
# This package provides advanced feature functionality for USB3 Debug support.
# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg.
#
# The DEC files are used by the utilities that parse DSC and
# INF files to generate AutoGen.c and AutoGen.h files
# for the build infrastructure.
#
# Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  DEC_SPECIFICATION = 0x00010017
  PACKAGE_NAME      = Usb3DebugFeaturePkg
  PACKAGE_GUID      = A96B06AE-5C10-4226-9B22-259AFCBB6119
  PACKAGE_VERSION   = 0.1

[Includes]
  Include

[LibraryClasses]
  ##  @libraryclass    Provides the capability to get/set USB3 debug port parameters.
  Usb3DebugPortParamLib|Include/Library/Usb3DebugPortParamLib.h

  ##  @libraryclass    Provide common USB3 debug port functions.
  Usb3DebugPortLib|Include/Library/Usb3DebugPortLib.h

[Guids]
  gUsb3DebugFeaturePkgTokenSpaceGuid  =  {0x1cbca3b0, 0x780c, 0x47d0, {0x8a, 0x46, 0xfe, 0x10, 0x77, 0x64, 0xe8, 0xd0}}

[PcdsFeatureFlag]
  ## This PCD specifies whether StatusCode is reported via USB3 Serial port.
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable|FALSE|BOOLEAN|0xA0000001

[PcdsFixedAtBuild]
  ## These PCD specify XHCI controller Bus/Device/Function, which are used to enable
  #  XHCI debug device.
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsbSerialXhciBus|0x00|UINT8|0xF0000001
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsbSerialXhciDev|0x14|UINT8|0xF0000002
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsbSerialXhciFunc|0x00|UINT8|0xF0000003
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdXhciDefaultBaseAddress|0xFEA10000|UINT32|0xF0000004

  ## This PCD specifies the wait timeout value in microsecond if USB debug cable is detected but host not connected.
  #  Default timeout value is 2000000 microseconds.
  #  If user does not want system stall for long time, it can be set to small value.
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdXhciHostWaitTimeout|2000000|UINT64|0xF0000005

  ## This PCD sepcifies the start index in CMOS, it will occupy 1 bytes space.
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugPortBusIndex|0x59|UINT8|0xF0000006
  ## This PCD sepcifies the start index in CMOS, it will occupy 1 bytes space.
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugPortDeviceIndex|0x5A|UINT8|0xF0000007
  ## This PCD sepcifies the start index in CMOS, it will occupy 1 bytes space.
  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugPortFunctionIndex|0x5B|UINT8|0xF0000008

