Skip to content

Commit 1ea1e11

Browse files
committed
Add updates for uefi, bootloader, multiboot2, and pic_8259
1 parent 1f5d7cb commit 1ea1e11

File tree

1 file changed

+60
-0
lines changed

1 file changed

+60
-0
lines changed

content/this-month/2021-08/index.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,66 @@ Other changes were:
6969
- [`aml`: implement the `DefIncrement` and `DefDecrement` opcodes](https://github.com/rust-osdev/acpi/commit/b854d5491e48e5a4f332ff259ce185cb357261d0)
7070
- [`aml`: implement the `ToInteger` opcode](https://github.com/rust-osdev/acpi/commit/00a61d8b7471dae725283296f4ee9c0c20013156)
7171

72+
### [`uefi-rs`](https://github.com/rust-osdev/uefi-rs)
73+
74+
The `uefi` crate provides safe and performant wrappers for [UEFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface), the successor to the BIOS.
75+
76+
In August, [@nicholasbishop](https://github.com/nicholasbishop) joined as a co-maintainer of the crate. Welcome!
77+
78+
Many improvements were merged this month:
79+
80+
- [Add `BootServices::exit` method; Make `PointerMode`'s fields public for checking against support of a pointer device](https://github.com/rust-osdev/uefi-rs/pull/261)
81+
- [Implement `PartialEq`+`Eq` for `DevicePath`](https://github.com/rust-osdev/uefi-rs/pull/265)
82+
- [System table can get debug-formatted](https://github.com/rust-osdev/uefi-rs/pull/248)
83+
- [loaded image: add set_image function](https://github.com/rust-osdev/uefi-rs/pull/266)
84+
- [Better `CStr16` to `String` and `str` conversions](https://github.com/rust-osdev/uefi-rs/pull/249)
85+
- [Add a minimal UEFI application template](https://github.com/rust-osdev/uefi-rs/pull/268)
86+
- [Use the built-in `aarch64-unknown-uefi` target](https://github.com/rust-osdev/uefi-rs/pull/269)
87+
- [Make `GraphicsOutput.query_mode(...)` public](https://github.com/rust-osdev/uefi-rs/pull/270)
88+
- [Publish new versions of all the crates](https://github.com/rust-osdev/uefi-rs/pull/276) <span class="gray">(published `uefi v0.12.0`, `uefi-macros v0.4.0`, and `uefi-services v0.9.0`)</span>
89+
- [Add newtype enum for variable vendors and add `IMAGE_SECURITY_DATABASE` to it](https://github.com/rust-osdev/uefi-rs/pull/273)
90+
- [Fix doc link and make CI lints stricter](https://github.com/rust-osdev/uefi-rs/pull/272)
91+
- [Add num_bytes method to `CStr16`](https://github.com/rust-osdev/uefi-rs/pull/274)
92+
- [Add `CString16`](https://github.com/rust-osdev/uefi-rs/pull/275)
93+
- [Enhance `Guid::from_values` and `Guid::fmt`](https://github.com/rust-osdev/uefi-rs/pull/280)
94+
- [Handle panics by unwinding the stack and implement check_event method](https://github.com/rust-osdev/uefi-rs/pull/282)
95+
96+
Thanks to [@HTG-YT](https://github.com/HTG-YT), [@phip1611](https://github.com/phip1611), [@Andy-Python-Programmer](https://github.com/Andy-Python-Programmer), and [@timrobertsdev](https://github.com/timrobertsdev) for their contributions!
97+
98+
### [`bootloader`](https://github.com/rust-osdev/bootloader)
99+
100+
The `bootloader` crate implements a custom Rust-based bootloader for easy loading of 64-bit ELF executables.
101+
102+
This month, we merged the following changes:
103+
104+
- [[v0.9] Set `relocation-model: static` and `panic-strategy: abort` and fix `.intel_syntax` warnings] <span class="gray">(published as `v0.9.19`)</span>
105+
- [Fix relocation-model field name in the target spec json](https://github.com/rust-osdev/bootloader/pull/186) <span class="gray">(published as `v0.10.7`)</span>
106+
- [Pad uefi fat file length](https://github.com/rust-osdev/bootloader/pull/180)
107+
- [Also check cfg gated target field for bootloader dependency](https://github.com/rust-osdev/bootloader/pull/182) <span class="gray">(published as `v0.10.8`)</span>
108+
- [Fix typo in link in changelog](https://github.com/rust-osdev/bootloader/pull/194)
109+
110+
Thanks to [@vinc](https://github.com/vinc), [@bjorn3](https://github.com/bjorn3), [@Freax13](https://github.com/Freax13), [@yusdacra](https://github.com/yusdacra), and [@martica](https://github.com/martica) for their contributions!
111+
112+
### [`multboot2`](https://github.com/rust-osdev/multiboot2)
113+
114+
The `multiboot2` crate provides abstraction types for the boot information of multiboot2 bootloaders.
115+
116+
The following changes were merged this month:
117+
118+
- [Unpublic tags bugfix](https://github.com/rust-osdev/multiboot2/pull/89) <span class="gray">(published as `v0.12.1`)</span>
119+
- [Fix `ModuleTag` cmdline](https://github.com/rust-osdev/multiboot2/pull/91)
120+
- [Stricter typing + better split of modules + bugfix](https://github.com/rust-osdev/multiboot2/pull/90)
121+
122+
### [`pic_8259`](https://github.com/rust-osdev/pic8259)
123+
124+
The `pic_8259` crate provides abstractions for 8259 and 8259A Programmable Interrupt Controllers (PICs).
125+
126+
In August, we added cargo features to make the crate buildable on stable:
127+
128+
- [Add `nightly` and `stable` feature flags to enable compilation on stable Rust](https://github.com/rust-osdev/pic8259/pull/1) <span class="gray">(published as `v0.10.2`)</span>
129+
130+
Thanks to [@toku-sa-n](https://github.com/toku-sa-n) for this contribution!
131+
72132
## Call for Participation
73133

74134
Want to contribute to a Rust OSDev project, but don't know where to start? Pick up one of these outstanding

0 commit comments

Comments
 (0)