## Automatically generated file; DO NOT EDIT.# SeaBIOS Configuration### General Features## CONFIG_COREBOOT is not set# CONFIG_QEMU is not setCONFIG_CSM=yCONFIG_QEMU_HARDWARE=yCONFIG_THREADS=yCONFIG_RELOCATE_INIT=yCONFIG_BOOTMENU=yCONFIG_BOOTSPLASH=yCONFIG_BOOTORDER=yCONFIG_HOST_BIOS_GEOMETRY=yCONFIG_ENTRY_EXTRASTACK=yCONFIG_MALLOC_UPPERMEMORY=yCONFIG_ROM_SIZE=0## Hardware support#CONFIG_ATA=y# CONFIG_ATA_DMA is not set# CONFIG_ATA_PIO32 is not setCONFIG_AHCI=yCONFIG_SDCARD=yCONFIG_VIRTIO_BLK=yCONFIG_VIRTIO_SCSI=yCONFIG_PVSCSI=yCONFIG_ESP_SCSI=yCONFIG_LSI_SCSI=yCONFIG_MEGASAS=yCONFIG_MPT_SCSI=yCONFIG_FLOPPY=yCONFIG_FLASH_FLOPPY=yCONFIG_NVME=yCONFIG_PS2PORT=yCONFIG_USB=yCONFIG_USB_UHCI=yCONFIG_USB_OHCI=yCONFIG_USB_EHCI=yCONFIG_USB_XHCI=yCONFIG_USB_MSC=yCONFIG_USB_UAS=yCONFIG_USB_HUB=yCONFIG_USB_KEYBOARD=yCONFIG_USB_MOUSE=yCONFIG_SERIAL=yCONFIG_SERCON=yCONFIG_LPT=yCONFIG_RTC_TIMER=yCONFIG_HARDWARE_IRQ=yCONFIG_PMTIMER=yCONFIG_TSC_TIMER=y## BIOS interfaces#CONFIG_DRIVES=yCONFIG_CDROM_BOOT=yCONFIG_CDROM_EMU=yCONFIG_PCIBIOS=yCONFIG_APMBIOS=yCONFIG_PNPBIOS=yCONFIG_OPTIONROMS=yCONFIG_PMM=yCONFIG_BOOT=yCONFIG_KEYBOARD=yCONFIG_KBD_CALL_INT15_4F=yCONFIG_MOUSE=yCONFIG_S3_RESUME=yCONFIG_VGAHOOKS=y# CONFIG_DISABLE_A20 is not setCONFIG_TCGBIOS=y## VGA ROM#CONFIG_NO_VGABIOS=y# CONFIG_VGA_GEODEGX2 is not set# CONFIG_VGA_GEODELX is not set# CONFIG_BUILD_VGABIOS is not setCONFIG_VGA_EXTRA_STACK_SIZE=512## Debugging#CONFIG_DEBUG_LEVEL=1# CONFIG_DEBUG_SERIAL is not set# CONFIG_DEBUG_SERIAL_MMIO is not setCONFIG_DEBUG_IO=y
运行make,生成out/Csm16.bin文件:
复制Csm16.bin文件到edk2目录下:
cp out/Csm16.bin ~/edk2/OvmfPkg/Csm/Csm16/
经测试,仅Arch linux 1.16.0-3-3版本构建的Csm16.bin才能正常引导win7
否则全都显示无法读取boot disk:
编译支持CSM的OVMF:
cd edk2OvmfPkg/build.sh -a X64 -b RELEASE -t GCC5 -D NETWORK_IP6_ENABLE -D TPM_ENABLE -D TLS_ENABLE -D HTTP_BOOT_ENABLE -D CSM_ENABLE -D FD_SIZE_2MB
+--------------------------------------- 4GB (0x100000000)|VTF0(16-bit reset code) and OVMF SEC|(SECFV, 208KB/0x34000)+--------------------------------------- varies based on flash size|| Compressed main firmware image|(FVMAIN_COMPACT)|+--------------------------------------- base +0x20000| Fault-tolerant write(FTW)| Spare blocks(64KB/0x10000)+--------------------------------------- base +0x10000| FTW Work block(4KB/0x1000)+--------------------------------------- base +0x0f000| Event log area(4KB/0x1000)+--------------------------------------- base +0x0e000| Non-volatile variable storage|area(56KB/0xe000)+--------------------------------------- base address
4MB的固件布局如下:
+--------------------------------------- base +0x400000(4GB/0x100000000)|VTF0(16-bit reset code) and OVMF SEC|(SECFV, 208KB/0x34000)+--------------------------------------- base +0x3cc000|| Compressed main firmware image|(FVMAIN_COMPACT, 3360KB/0x348000)|+--------------------------------------- base +0x84000| Fault-tolerant write(FTW)| Spare blocks(264KB/0x42000)+--------------------------------------- base +0x42000| FTW Work block(4KB/0x1000)+--------------------------------------- base +0x41000| Event log area(4KB/0x1000)+--------------------------------------- base +0x40000| Non-volatile variable storage|area(256KB/0x40000)+--------------------------------------- base address(0xffc00000)
近期评论