diff --git a/src/fdt/fdt-header.hpp b/src/fdt/fdt-header.hpp index 73e37d5..fe09c1e 100644 --- a/src/fdt/fdt-header.hpp +++ b/src/fdt/fdt-header.hpp @@ -2,9 +2,7 @@ #include -namespace fdt { - -namespace raw { +namespace fdt::decode { struct header { u32 magic; u32 totalsize; @@ -22,18 +20,17 @@ struct property { u32 len; u32 nameoff; }; -}; // namespace raw -constexpr auto is_magic_invalid(const fdt::raw::header &v) -> bool { +constexpr auto is_magic_invalid(const header &v) -> bool { constexpr auto header_magic_value = 0xD00DFEED; return v.magic != header_magic_value; } -constexpr auto is_version_unsupported(const fdt::raw::header &v) -> bool { +constexpr auto is_version_unsupported(const header &v) -> bool { constexpr auto header_support_above = 16; return v.version <= header_support_above; } -}; // namespace fdt -static_assert(sizeof(fdt::raw::header) == 40); -static_assert(sizeof(fdt::raw::property) == 8); +} // namespace fdt::decode +static_assert(sizeof(fdt::decode::header) == 40); +static_assert(sizeof(fdt::decode::property) == 8); diff --git a/src/fdt/fdt-parser.cpp b/src/fdt/fdt-parser.cpp index 7d850b5..a421c27 100644 --- a/src/fdt/fdt-parser.cpp +++ b/src/fdt/fdt-parser.cpp @@ -34,7 +34,7 @@ auto parse(token_types::node_end &&token, context &) -> fdt::parser::token { } auto parse(token_types::property &&token, context &ctx) -> fdt::parser::token { - const auto header = read_data_32be(ctx.state.data); + const auto header = read_data_32be(ctx.state.data); ctx.state.skip += align(sizeof(header)) + align(header.len); ctx.state.data += sizeof(header); @@ -72,18 +72,18 @@ auto foreach_token_type(std::variant, const u32 token_id, fdt::parser::co auto fdt::parser::parse(std::string_view view, std::string_view root_name) -> std::expected { using error = fdt::parser::error; - if (view.size() < sizeof(fdt::raw::header)) + if (view.size() < sizeof(decode::header)) return std::unexpected(error::invalid_header); - const auto header = read_data_32be(view.data()); + const auto header = read_data_32be(view.data()); - if (fdt::is_magic_invalid(header)) + if (decode::is_magic_invalid(header)) return std::unexpected(error::invalid_magic); if (view.size() < header.totalsize) return std::unexpected(error::data_truncated); - if (fdt::is_version_unsupported(header)) + if (decode::is_version_unsupported(header)) return std::unexpected(error::unsupported_version); const auto dt_struct = view.data() + header.off_dt_struct;