Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit b7d9f26

Browse files
gil0mendesGabrielMajeri
authored andcommitted
Implement set_watchdog_timer (#27)
1 parent dc7a34d commit b7d9f26

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

‎src/table/boot.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ pub struct BootServices {
5050
// Misc services
5151
get_next_monotonic_count: usize,
5252
stall: extern "C" fn(usize) -> Status,
53-
set_watchdog_timer: usize,
53+
set_watchdog_timer: extern"C"fn(timeout:usize,watchdog_code:u64,data_size:usize,watchdog_data:*mutu16) -> Status,
5454

5555
// Driver support services
5656
connect_controller: usize,
@@ -236,6 +236,11 @@ impl BootServices {
236236
assert_eq!((self.stall)(time), Status::Success);
237237
}
238238

239+
/// Set the watchdog timer.
240+
pub fn set_watchdog_timer(&self, timeout: usize, watchdog_code: u64, data_size: usize, watchdog_data: *mut u16) {
241+
assert_eq!((self.set_watchdog_timer)(timeout, watchdog_code, data_size, watchdog_data), Status::Success);
242+
}
243+
239244
/// Copies memory from source to destination. The buffers can overlap.
240245
pub fn memmove(&self, dest: *mut u8, src: *const u8, size: usize) {
241246
(self.copy_mem)(dest, src, size);

‎uefi-test-runner/src/boot/misc.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
use uefi::table::boot::BootServices;
2+
use core::ptr;
3+
4+
pub fn test(bt: &BootServices) {
5+
test_watchdog(bt);
6+
}
7+
8+
fn test_watchdog(bt: &BootServices) {
9+
bt.set_watchdog_timer(0, 0, 0, ptr::null_mut());
10+
}

‎uefi-test-runner/src/boot/mod.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ use uefi::table::boot::BootServices;
22

33
pub fn test(bt: &BootServices) {
44
memory::test(bt);
5+
misc::test(bt);
56
}
67

78
mod memory;
9+
mod misc;

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /