]>
git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/Csm/LegacyBiosDxe/LegacyBda.c
2 This code fills in BDA (0x400) and EBDA (pointed to by 0x4xx)
3 information. There is support for doing initializeation before
4 Legacy16 is loaded and before a legacy boot is attempted.
6 Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
8 SPDX-License-Identifier: BSD-2-Clause-Patent
12 #include "LegacyBiosInterface.h"
15 Fill in the standard BDA and EBDA stuff before Legacy16 load
17 @param Private Legacy BIOS Instance data
19 @retval EFI_SUCCESS It should always work.
24 IN LEGACY_BIOS_INSTANCE
*Private
30 Bda
= (BDA_STRUC
*)((UINTN
)0x400);
31 Ebda
= (UINT8
*)((UINTN
)0x9fc00);
41 Bda
->FloppyData
= 0x00;
42 Bda
->FloppyTimeout
= 0xff;
44 Bda
->KeyStart
= 0x001E;
46 Bda
->KeyboardStatus
= 0x10;
50 // Move LPT time out here and zero out LPT4 since some SCSI OPROMS
51 // use this as scratch pad (LPT4 is Reserved)
53 Bda
->Lpt1_2Timeout
= 0x1414;
54 Bda
->Lpt3_4Timeout
= 0x1400;
58 ZeroMem (Ebda
, 0x400);