xref: /aosp_15_r20/external/crosvm/acpi_tables/src/lib.rs (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker // Copyright 2020 The ChromiumOS Authors
2*bb4ee6a4SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*bb4ee6a4SAndroid Build Coastguard Worker // found in the LICENSE file.
4*bb4ee6a4SAndroid Build Coastguard Worker 
5*bb4ee6a4SAndroid Build Coastguard Worker //! ACPI table generation.
6*bb4ee6a4SAndroid Build Coastguard Worker 
7*bb4ee6a4SAndroid Build Coastguard Worker pub mod aml;
8*bb4ee6a4SAndroid Build Coastguard Worker pub mod facs;
9*bb4ee6a4SAndroid Build Coastguard Worker pub mod rsdp;
10*bb4ee6a4SAndroid Build Coastguard Worker pub mod sdt;
11*bb4ee6a4SAndroid Build Coastguard Worker 
12*bb4ee6a4SAndroid Build Coastguard Worker pub use self::sdt::HEADER_LEN;
13*bb4ee6a4SAndroid Build Coastguard Worker 
generate_checksum(data: &[u8]) -> u814*bb4ee6a4SAndroid Build Coastguard Worker fn generate_checksum(data: &[u8]) -> u8 {
15*bb4ee6a4SAndroid Build Coastguard Worker     (255 - data.iter().fold(0u8, |acc, x| acc.wrapping_add(*x))).wrapping_add(1)
16*bb4ee6a4SAndroid Build Coastguard Worker }
17