mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-31 15:32:51 +00:00
Kernel/SysFS: Split the bulky BIOS.h file into multiple files
This commit is contained in:
parent
9c6834698f
commit
4d05a41b30
Notes:
sideshowbarker
2024-07-17 10:07:42 +09:00
Author: https://github.com/supercomputer7
Commit: 4d05a41b30
Pull-request: https://github.com/SerenityOS/serenity/pull/13772
12 changed files with 297 additions and 180 deletions
42
Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.h
Normal file
42
Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.h
Normal file
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
* Copyright (c) 2022, Liav A. <liavalb@hotmail.co.il>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AK/RefPtr.h>
|
||||
#include <AK/Types.h>
|
||||
#include <AK/Vector.h>
|
||||
#include <Kernel/FileSystem/SysFS.h>
|
||||
#include <Kernel/FileSystem/SysFS/Subsystems/Firmware/Directory.h>
|
||||
#include <Kernel/PhysicalAddress.h>
|
||||
|
||||
namespace Kernel {
|
||||
|
||||
class BIOSSysFSDirectory : public SysFSDirectory {
|
||||
public:
|
||||
virtual StringView name() const override { return "bios"sv; }
|
||||
static NonnullRefPtr<BIOSSysFSDirectory> must_create(FirmwareSysFSDirectory&);
|
||||
|
||||
void create_components();
|
||||
|
||||
private:
|
||||
explicit BIOSSysFSDirectory(FirmwareSysFSDirectory&);
|
||||
|
||||
void set_dmi_64_bit_entry_initialization_values();
|
||||
void set_dmi_32_bit_entry_initialization_values();
|
||||
void initialize_dmi_exposer();
|
||||
|
||||
Optional<PhysicalAddress> find_dmi_entry64bit_point();
|
||||
Optional<PhysicalAddress> find_dmi_entry32bit_point();
|
||||
|
||||
PhysicalAddress m_dmi_entry_point;
|
||||
PhysicalAddress m_smbios_structure_table;
|
||||
bool m_using_64bit_dmi_entry_point { false };
|
||||
size_t m_smbios_structure_table_length { 0 };
|
||||
size_t m_dmi_entry_point_length { 0 };
|
||||
};
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue