Fixed a bunch of warnings

This commit is contained in:
Connor Wood
2017-07-22 13:32:02 +01:00
parent 76316aa8d6
commit 3c2b3b3f5e
14 changed files with 52 additions and 99 deletions

View File

@@ -1,6 +1,5 @@
use collections::vec::Vec;
use collections::string::String;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{ AmlParseType, ParseResult, AmlExecutionContext, ExecutionState };

View File

@@ -1,11 +1,7 @@
//! # AML
//! Code to parse and execute AML tables
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use collections::btree_map::BTreeMap;
use core::fmt::Debug;
use core::str::FromStr;
use super::sdt::Sdt;
@@ -24,7 +20,7 @@ mod type1opcode;
mod type2opcode;
mod parser;
use self::parser::{ ParseResult, AmlExecutionContext };
use self::parser::AmlExecutionContext;
use self::termlist::parse_term_list;
pub use self::namespace::AmlValue;

View File

@@ -1,15 +1,11 @@
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use core::str::FromStr;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{ AmlParseType, ParseResult, AmlParseTypeGeneric, AmlExecutionContext, ExecutionState };
use super::namespace::{ AmlValue, ObjectReference, FieldSelector, Method, get_namespace_string, Accessor };
use super::namestring::{parse_name_string, parse_name_seg};
use super::termlist::{parse_term_arg, parse_term_list, parse_object_list};
use super::termlist::{parse_term_arg, parse_object_list};
use super::pkglength::parse_pkg_length;
use super::type2opcode::parse_def_buffer;
@@ -159,9 +155,8 @@ fn parse_def_bank_field(data: &[u8],
bank_selector: Box::new(bank_value.val)
};
let field_list = parse_field_list(
&data[3 + pkg_length_len + region_name.len + bank_name.len + bank_value.len ..
2 + pkg_length], ctx, selector, &mut flags)?;
parse_field_list(&data[3 + pkg_length_len + region_name.len + bank_name.len + bank_value.len ..
2 + pkg_length], ctx, selector, &mut flags)?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -191,7 +186,7 @@ fn parse_def_create_bit_field(data: &[u8],
source_buf: Box::new(source_buf.val),
index: Box::new(bit_index.val),
length: Box::new(AmlValue::IntegerConstant(1))
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -221,7 +216,7 @@ fn parse_def_create_byte_field(data: &[u8],
source_buf: Box::new(source_buf.val),
index: Box::new(bit_index.val),
length: Box::new(AmlValue::IntegerConstant(8))
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -251,7 +246,7 @@ fn parse_def_create_word_field(data: &[u8],
source_buf: Box::new(source_buf.val),
index: Box::new(bit_index.val),
length: Box::new(AmlValue::IntegerConstant(16))
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -311,7 +306,7 @@ fn parse_def_create_qword_field(data: &[u8],
source_buf: Box::new(source_buf.val),
index: Box::new(bit_index.val),
length: Box::new(AmlValue::IntegerConstant(64))
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -342,7 +337,7 @@ fn parse_def_create_field(data: &[u8],
source_buf: Box::new(source_buf.val),
index: Box::new(bit_index.val),
length: Box::new(num_bits.val)
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -379,7 +374,7 @@ fn parse_def_data_region(data: &[u8],
write: |x, y| ()
},
accessed_by: None
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -402,7 +397,7 @@ fn parse_def_event(data: &[u8],
let name = parse_name_string(&data[2..], ctx)?;
let local_scope_string = get_namespace_string(ctx.scope.clone(), name.val);
ctx.add_to_namespace(local_scope_string, AmlValue::Event(0));
ctx.add_to_namespace(local_scope_string, AmlValue::Event(0))?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -431,7 +426,7 @@ fn parse_def_device(data: &[u8],
parse_object_list(&data[2 + pkg_length_len + name.len .. 2 + pkg_length], &mut local_ctx)?;
ctx.add_to_namespace(local_scope_string, AmlValue::Device(local_ctx.namespace_delta.clone()));
ctx.add_to_namespace(local_scope_string, AmlValue::Device(local_ctx.namespace_delta.clone()))?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -480,7 +475,7 @@ fn parse_def_op_region(data: &[u8],
write: |x, y| ()
},
accessed_by: None
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -525,7 +520,7 @@ fn parse_def_field(data: &[u8],
let selector = FieldSelector::Region(name.val.get_as_string()?);
let field_list = parse_field_list(&data[3 + pkg_length_len + name.len .. 2 + pkg_length], ctx, selector, &mut flags)?;
parse_field_list(&data[3 + pkg_length_len + name.len .. 2 + pkg_length], ctx, selector, &mut flags)?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -574,8 +569,8 @@ fn parse_def_index_field(data: &[u8],
data_selector: data_name.val.get_as_string()?
};
let field_list = parse_field_list(
&data[3 + pkg_length_len + idx_name.len + data_name.len .. 2 + pkg_length], ctx, selector, &mut flags)?;
parse_field_list(&data[3 + pkg_length_len + idx_name.len + data_name.len .. 2 + pkg_length],
ctx, selector, &mut flags)?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -642,7 +637,7 @@ fn parse_field_element(data: &[u8],
flags: flags.clone(),
offset: offset.clone(),
length: field.val.length
});
})?;
*offset += field.val.length;
field.len
@@ -681,7 +676,7 @@ fn parse_named_field(data: &[u8],
Ok(AmlParseTypeGeneric {
val: NamedField { name, length },
len: 4 + length_len
len: name_seg_len + length_len
})
}
@@ -796,7 +791,7 @@ fn parse_def_method(data: &[u8],
serialized,
sync_level,
term_list: term_list.to_vec()
}));
}))?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -821,7 +816,7 @@ fn parse_def_mutex(data: &[u8],
let sync_level = flags & 0x0F;
let local_scope_string = get_namespace_string(ctx.scope.clone(), name.val);
ctx.add_to_namespace(local_scope_string, AmlValue::Mutex((sync_level, None)));
ctx.add_to_namespace(local_scope_string, AmlValue::Mutex((sync_level, None)))?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -858,7 +853,7 @@ fn parse_def_power_res(data: &[u8],
system_level,
resource_order,
obj_list: local_ctx.namespace_delta.clone()
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -897,7 +892,7 @@ fn parse_def_processor(data: &[u8],
proc_id: proc_id,
p_blk: if p_blk_len > 0 { Some(p_blk_addr) } else { None },
obj_list: local_ctx.namespace_delta.clone()
});
})?;
Ok(AmlParseType {
val: AmlValue::None,
@@ -925,7 +920,7 @@ fn parse_def_thermal_zone(data: &[u8],
let mut local_ctx = AmlExecutionContext::new(local_scope_string.clone());
parse_object_list(&data[2 + pkg_len_len + name.len .. 2 + pkg_len], &mut local_ctx)?;
ctx.add_to_namespace(local_scope_string, AmlValue::ThermalZone(local_ctx.namespace_delta.clone()));
ctx.add_to_namespace(local_scope_string, AmlValue::ThermalZone(local_ctx.namespace_delta.clone()))?;
Ok(AmlParseType {
val: AmlValue::None,

View File

@@ -1,9 +1,7 @@
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use collections::btree_map::BTreeMap;
use core::str::FromStr;
use core::fmt::{Debug, Formatter, Error};
use super::termlist::parse_term_list;

View File

@@ -1,11 +1,6 @@
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{AmlParseType, ParseResult, AmlParseTypeGeneric, AmlExecutionContext, ExecutionState};
use super::namespace::{AmlValue, ObjectReference, FieldSelector, get_namespace_string};
use super::parser::{AmlParseType, ParseResult, AmlExecutionContext, ExecutionState};
use super::namespace::{AmlValue, ObjectReference, get_namespace_string};
use super::pkglength::parse_pkg_length;
use super::namestring::parse_name_string;
use super::termlist::parse_term_list;

View File

@@ -1,10 +1,9 @@
use collections::vec::Vec;
use collections::string::String;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{AmlParseType, ParseResult, AmlParseTypeGeneric, AmlExecutionContext, ExecutionState};
use super::namespace::{AmlValue, ObjectReference, FieldSelector, get_namespace_string};
use super::parser::{AmlParseType, ParseResult, AmlExecutionContext, ExecutionState};
use super::namespace::AmlValue;
use super::dataobj::{parse_arg_obj, parse_local_obj};
use super::type2opcode::parse_type6_opcode;

View File

@@ -113,7 +113,7 @@ impl AmlExecutionContext {
match name {
AmlValue::None => (),
AmlValue::ObjectReference(r) => match r {
ObjectReference::ArgObj(i) => (),
ObjectReference::ArgObj(_) => (),
ObjectReference::LocalObj(i) => self.local_vars[i as usize] = value,
_ => ()
},

View File

@@ -1,11 +1,8 @@
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{ AmlParseType, ParseResult, AmlParseTypeGeneric, AmlExecutionContext, ExecutionState };
use super::namespace::{AmlValue, ObjectReference, FieldSelector, get_namespace_string};
use super::parser::{ AmlParseType, ParseResult, AmlExecutionContext, ExecutionState };
use super::namespace::{AmlValue, get_namespace_string};
use super::namespacemodifier::parse_namespace_modifier;
use super::namedobj::parse_named_obj;
use super::dataobj::{parse_data_obj, parse_arg_obj, parse_local_obj};

View File

@@ -1,11 +1,6 @@
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{AmlParseType, ParseResult, AmlExecutionContext, ExecutionState};
use super::namespace::{AmlValue, ObjectReference};
use super::namespace::AmlValue;
use super::pkglength::parse_pkg_length;
use super::termlist::{parse_term_arg, parse_term_list};
use super::namestring::{parse_name_string, parse_super_name};
@@ -248,7 +243,7 @@ fn parse_def_reset(data: &[u8],
parser_opcode_extended!(data, 0x26);
let object = parse_super_name(&data[2..], ctx)?;
let event = ctx.get(object.val.clone()).get_as_event()?;
ctx.get(object.val.clone()).get_as_event()?;
ctx.modify(object.val.clone(), AmlValue::Event(0));

View File

@@ -1,7 +1,6 @@
use alloc::boxed::Box;
use collections::string::String;
use collections::vec::Vec;
use collections::btree_map::BTreeMap;
use super::AmlError;
use super::parser::{AmlParseType, ParseResult, AmlExecutionContext, ExecutionState};
@@ -153,7 +152,7 @@ pub fn parse_def_package(data: &[u8],
if elements.len() > numelements {
elements = elements[0 .. numelements].to_vec();
} else if numelements > elements.len() {
for i in 0..numelements - elements.len() {
for _ in 0..numelements - elements.len() {
elements.push(AmlValue::Uninitialized);
}
}
@@ -187,7 +186,7 @@ pub fn parse_def_var_package(data: &[u8],
if elements.len() > numelements {
elements = elements[0 .. numelements].to_vec();
} else if numelements > elements.len() {
for i in 0..numelements - elements.len() {
for _ in 0..numelements - elements.len() {
elements.push(AmlValue::Uninitialized);
}
}
@@ -365,12 +364,6 @@ fn parse_def_acquire(data: &[u8],
}
}
}
Ok(AmlParseType {
val: AmlValue::Uninitialized,
len: 4 + obj.len
})
// This should never run
}
fn parse_def_increment(data: &[u8],
@@ -1056,11 +1049,6 @@ fn parse_def_wait(data: &[u8],
}
}
}
Ok(AmlParseType {
val: AmlValue::Uninitialized,
len: 2 + obj.len + timeout_obj.len
})
}
fn parse_def_cond_ref_of(data: &[u8],
@@ -1353,11 +1341,11 @@ fn parse_def_match(data: &[u8],
match second_operation {
MatchOpcode::MTR => (),
MatchOpcode::MEQ => if val != i { continue },
MatchOpcode::MLE => if val > i { continue },
MatchOpcode::MLT => if val >= i { continue },
MatchOpcode::MGE => if val < i { continue },
MatchOpcode::MGT => if val <= i { continue }
MatchOpcode::MEQ => if val != j { continue },
MatchOpcode::MLE => if val > j { continue },
MatchOpcode::MLT => if val >= j { continue },
MatchOpcode::MGE => if val < j { continue },
MatchOpcode::MGT => if val <= j { continue }
}
return Ok(AmlParseType {
@@ -1384,11 +1372,11 @@ fn parse_def_match(data: &[u8],
match second_operation {
MatchOpcode::MTR => (),
MatchOpcode::MEQ => if val != i { continue },
MatchOpcode::MLE => if val > i { continue },
MatchOpcode::MLT => if val >= i { continue },
MatchOpcode::MGE => if val < i { continue },
MatchOpcode::MGT => if val <= i { continue }
MatchOpcode::MEQ => if val != j { continue },
MatchOpcode::MLE => if val > j { continue },
MatchOpcode::MLT => if val >= j { continue },
MatchOpcode::MGE => if val < j { continue },
MatchOpcode::MGT => if val <= j { continue }
}
return Ok(AmlParseType {
@@ -1416,11 +1404,11 @@ fn parse_def_match(data: &[u8],
match second_operation {
MatchOpcode::MTR => (),
MatchOpcode::MEQ => if val != i { continue },
MatchOpcode::MLE => if val > i { continue },
MatchOpcode::MLT => if val >= i { continue },
MatchOpcode::MGE => if val < i { continue },
MatchOpcode::MGT => if val <= i { continue }
MatchOpcode::MEQ => if val != j { continue },
MatchOpcode::MLE => if val > j { continue },
MatchOpcode::MLT => if val >= j { continue },
MatchOpcode::MGE => if val < j { continue },
MatchOpcode::MGT => if val <= j { continue }
}
return Ok(AmlParseType {

View File

@@ -5,11 +5,10 @@ use core::intrinsics::{atomic_load, atomic_store};
use core::sync::atomic::Ordering;
use collections::btree_map::BTreeMap;
use collections::string::String;
use alloc::boxed::Box;
use syscall::io::{Io, Pio};
use spin::{Mutex, RwLock};
use spin::RwLock;
use device::local_apic::LOCAL_APIC;
use interrupt;

View File

@@ -1,8 +1,3 @@
use core::intrinsics::{volatile_load, volatile_store};
use memory::Frame;
use paging::{entry, ActivePageTable, PhysicalAddress, Page, VirtualAddress};
use acpi::hpet::Hpet;
static LEG_RT_CNF: u64 = 2;
@@ -14,8 +9,8 @@ static TN_INT_ENB_CNF: u64 = 0x04;
static CAPABILITY_OFFSET: usize = 0x00;
static GENERAL_CONFIG_OFFSET: usize = 0x10;
static GENERAL_INTERRUPT_OFFSET: usize = 0x20;
static MAIN_COUNTER_OFFSET: usize = 0xF0;
// static GENERAL_INTERRUPT_OFFSET: usize = 0x20;
// static MAIN_COUNTER_OFFSET: usize = 0xF0;
static T0_CONFIG_CAPABILITY_OFFSET: usize = 0x100;
static T0_COMPARATOR_OFFSET: usize = 0x108;

View File

@@ -1,6 +1,5 @@
use paging::ActivePageTable;
use acpi::ACPI_TABLE;
use syscall::io::{Pio, Io};
pub mod cpu;
pub mod local_apic;

View File

@@ -15,8 +15,6 @@ use memory;
use paging::{self, entry, Page, VirtualAddress};
use paging::mapper::MapperFlushAll;
use stop;
/// Test of zero values in BSS.
static BSS_TEST_ZERO: usize = 0;
/// Test of non-zero values in data.