/** @file Dci policy Copyright (c) 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #ifndef _DCI_CONFIG_H_ #define _DCI_CONFIG_H_ #define DCI_PREMEM_CONFIG_REVISION 2 extern EFI_GUID gDciPreMemConfigGuid; #pragma pack (push,1) typedef enum { DciDbcDisabled = 0x0, DciDbcUsb2 = 0x1, DciDbcUsb3 = 0x2, DciDbcBoth = 0x3, DciDbcNoChange = 0x4, DciDbcMax } DCI_DBC_MODE; typedef enum { Usb3TcDbgDisabled = 0x0, Usb3TcDbgEnabled = 0x1, Usb3TcDbgNoChange = 0x2, Usb3TcDbgMax } DCI_USB3_TYPE_C_DEBUG_MODE; /** The PCH_DCI_PREMEM_CONFIG block describes policies related to Direct Connection Interface (DCI) Revision 1: - Initial version. Revision 2: - Added DciModphyPg - change to use data in byte unit rather than bit-field **/ typedef struct { CONFIG_BLOCK_HEADER Header; ///< Config Block Header /** DCI enable. Determine if to enable DCI debug from host. 0:Disabled; 1:Enabled **/ UINT8 DciEn; /** USB DbC enable mode. Disabled: Clear both USB2/3DBCEN; USB2: Set USB2DBCEN; USB3: Set USB3DBCEN; Both: Set both USB2/3DBCEN; No Change: Comply with HW value Refer to definition of DCI_USB_DBC_MODE for supported settings. 0:Disabled; 1:USB2; 2:USB3; 3:Both; 4:No Change **/ UINT8 DciDbcMode; /** Enable Modphy power gate when DCI is enable. It must be disabled for 4-wire DCI OOB. Set default to HW default : Disabled 0:Disabled; 1:Enabled **/ UINT8 DciModphyPg; /** USB3 Type-C UFP2DFP kenel / platform debug support. No change will do nothing to UFP2DFP configuration. When enabled, USB3 Type C UFP (upstream-facing port) may switch to DFP (downstream-facing port) for first connection. It must be enabled for USB3 kernel(kernel mode debug) and platform debug(DFx, DMA, Trace) over UFP Type-C receptacle. Refer to definition of DCI_USB_TYPE_C_DEBUG_MODE for supported settings. 0:Disabled; 1:Enabled; 2:No Change **/ UINT8 DciUsb3TypecUfpDbg; } PCH_DCI_PREMEM_CONFIG; #pragma pack (pop) #endif // _DCI_CONFIG_H_