@@ -52,11 +52,12 @@ pub use elf_sections::{
5252pub use framebuffer:: { FramebufferColor , FramebufferField , FramebufferTag , FramebufferType } ;
5353pub use image_load_addr:: ImageLoadPhysAddr ;
5454pub use memory_map:: {
55- EFIMemoryAreaType , EFIMemoryDesc , EFIMemoryMapTag , MemoryArea , MemoryAreaIter , MemoryAreaType ,
56- MemoryMapTag ,
55+ BasicMemoryInfoTag , EFIMemoryAreaType , EFIMemoryDesc , EFIMemoryMapTag , MemoryArea ,
56+ MemoryAreaIter , MemoryAreaType , MemoryMapTag ,
5757} ;
5858pub use module:: { ModuleIter , ModuleTag } ;
5959pub use rsdp:: { RsdpV1Tag , RsdpV2Tag } ;
60+ pub use smbios:: SmbiosTag ;
6061use tag_type:: TagIter ;
6162pub use tag_type:: { Tag , TagType , TagTypeId } ;
6263pub use vbe_info:: {
@@ -76,6 +77,7 @@ mod image_load_addr;
7677mod memory_map;
7778mod module;
7879mod rsdp;
80+ mod smbios;
7981mod tag_type;
8082mod vbe_info;
8183
@@ -218,6 +220,11 @@ impl BootInformation {
218220 self . get ( ) . total_size as usize
219221 }
220222
223+ /// Search for the basic memory info tag.
224+ pub fn basic_memory_info_tag ( & self ) -> Option < & BasicMemoryInfoTag > {
225+ self . get_tag :: < BasicMemoryInfoTag , _ > ( TagType :: BasicMeminfo )
226+ }
227+
221228 /// Search for the ELF Sections tag.
222229 pub fn elf_sections_tag ( & self ) -> Option < ElfSectionsTag > {
223230 self . get_tag :: < Tag , _ > ( TagType :: ElfSections )
@@ -304,6 +311,11 @@ impl BootInformation {
304311 self . get_tag :: < VBEInfoTag , _ > ( TagType :: Vbe )
305312 }
306313
314+ /// Search for the SMBIOS tag.
315+ pub fn smbios_tag ( & self ) -> Option < & SmbiosTag > {
316+ self . get_tag :: < SmbiosTag , _ > ( TagType :: Smbios )
317+ }
318+
307319 fn get ( & self ) -> & BootInformationInner {
308320 unsafe { & * self . inner }
309321 }
0 commit comments