]> git.proxmox.com Git - mirror_edk2.git/blob - Vlv2TbltDevicePkg/PlatformDxe/SioPlatformPolicy.c
Vlv2TbltDevicePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / Vlv2TbltDevicePkg / PlatformDxe / SioPlatformPolicy.c
1 /** @file
2
3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
4
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7
8
9 Module Name:
10
11
12 SioPlatformPolicy.c
13
14 Abstract:
15
16 Sio Platform Policy Setting.
17
18
19 --*/
20
21 #include "PlatformDxe.h"
22 #include <Protocol/LpcWpc83627Policy.h>
23
24
25 EFI_WPC83627_POLICY_PROTOCOL mSio83627PolicyData = {
26 { EFI_WPC83627_COM1_ENABLE, // Com1
27 EFI_WPC83627_LPT1_ENABLE, // Lpt1
28 EFI_WPC83627_FDD_DISABLE, // Floppy
29 EFI_WPC83627_FDD_WRITE_ENABLE, // FloppyWriteProtect
30 EFI_WPC83627_RESERVED_DEFAULT, // Port80
31 EFI_WPC83627_ECIR_DISABLE, // CIR
32 EFI_WPC83627_PS2_KBC_ENABLE, // Ps2Keyboard
33 EFI_WPC83627_RESERVED_DEFAULT, // Ps2Mouse
34 EFI_WPC83627_COM2_ENABLE, // Com2
35 EFI_WPC83627_COM3_ENABLE, // Com3
36 EFI_WPC83627_COM4_ENABLE, // Com4
37 EFI_WPC83627_RESERVED_DEFAULT, // Dac
38 0x00 // Rsvd
39 },
40 LptModeEcp, // LptMode
41 };
42
43 /**
44
45 Publish the platform SIO policy setting.
46
47 @retval EFI_SUCCESS
48
49 **/
50 VOID
51 InitSioPlatformPolicy(
52 )
53 {
54
55 EFI_HANDLE Handle;
56 EFI_STATUS Status;
57
58 Handle = NULL;
59
60 if((mSystemConfiguration.Serial) || (mBoardFeatures & B_BOARD_FEATURES_SIO_NO_COM1)) {
61 mSio83627PolicyData.DeviceEnables.Com1 = EFI_WPC83627_COM1_DISABLE;
62 }
63
64 if((mSystemConfiguration.Serial2) || ((mBoardFeatures & B_BOARD_FEATURES_SIO_COM2)==0)) {
65 mSio83627PolicyData.DeviceEnables.Com2 = EFI_WPC83627_COM2_DISABLE;
66 }
67
68 mSio83627PolicyData.LptMode = mSystemConfiguration.ParallelMode;
69 if((!mSystemConfiguration.Parallel) || (mBoardFeatures & B_BOARD_FEATURES_SIO_NO_PARALLEL)) {
70 mSio83627PolicyData.DeviceEnables.Lpt1 = EFI_WPC83627_LPT1_DISABLE;
71 }
72
73 Status = gBS->InstallProtocolInterface (
74 &Handle,
75 &gEfiLpcWpc83627PolicyProtocolGuid,
76 EFI_NATIVE_INTERFACE,
77 &mSio83627PolicyData
78 );
79 ASSERT_EFI_ERROR(Status);
80
81 }
82