genode/repos/base-hw/src/include/hw/acpi_rsdp.h

41 lines
834 B
C++

/*
* \brief ACPI RSDP structure
* \author Alexander Boettcher
* \date 2017-08-15
*/
/*
* Copyright (C) 2017 Genode Labs GmbH
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU Affero General Public License version 3.
*/
#ifndef _SRC__LIB__HW__ACPI_RSDP_H
#define _SRC__LIB__HW__ACPI_RSDP_H
#include <base/fixed_stdint.h>
namespace Hw {
struct Acpi_rsdp;
}
struct Hw::Acpi_rsdp
{
Genode::uint64_t signature;
Genode::uint8_t checksum;
char oem[6];
Genode::uint8_t revision;
Genode::uint32_t rsdt;
Genode::uint32_t length;
Genode::uint64_t xsdt;
Genode::uint32_t reserved;
bool valid() {
const char sign[] = "RSD PTR ";
return signature == *(Genode::uint64_t *)sign;
}
} __attribute__((packed));
#endif /* _SRC__LIB__HW__ACPI_RSDP_H */