1
0
Fork 0
forked from koniifer/ableos

Revert "get ableOS running proper on limine sans graphics"

This reverts commit 1e1d004240.
This commit is contained in:
Able 2022-11-23 06:00:38 -06:00
parent 1e1d004240
commit a2d6d7245a
6 changed files with 8 additions and 13 deletions

4
Cargo.lock generated
View file

@ -344,9 +344,9 @@ source = "git+https://git.ablecorp.us/able/libwasm.git#4ffcd290f8bc918ca4adf5e23
[[package]]
name = "limine"
version = "0.1.9"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c847ac148a0c53ba3755dfa9830722b1043179584009869e6afc2b413e13f105"
checksum = "eac64618e505bab2387986e5b1014f5d344130d609685bbd8b71a10af3ee599d"
[[package]]
name = "linked_list_allocator"

View file

@ -108,8 +108,7 @@ git = "https://git.ablecorp.us:443/able/externc-libm.git"
riscv = "*"
[target.'cfg(target_arch = "x86_64")'.dependencies]
limine = "0.1.9"
limine = "0.1"
cpuio = { git = "https://git.ablecorp.us/ondra05/cpuio.git" }
pic8259 = "0.10.1"
uart_16550 = "0.2.0"

View file

@ -1,7 +1,8 @@
use limine::{LimineMemmapResponse, LimineMemoryMapEntryType};
use x86_64::{
structures::paging::{
FrameAllocator, FrameDeallocator, OffsetPageTable, PageTable, PhysFrame, Size4KiB,
FrameAllocator, FrameDeallocator, OffsetPageTable, PageTable, PhysFrame,
Size4KiB,
},
PhysAddr, VirtAddr,
};
@ -38,9 +39,7 @@ impl BootInfoFrameAllocator {
}
fn usable_frames(&self) -> impl Iterator<Item = PhysFrame> {
self.memory_map
.memmap()
.iter()
self.memory_map.mmap().unwrap().iter()
.filter(|r| r.typ == LimineMemoryMapEntryType::Usable)
.map(|r| r.base..r.base + r.len)
.flat_map(|r| r.step_by(4096))

View file

@ -18,7 +18,7 @@ use crate::serial_println;
use self::drivers::allocator;
static HHDM: LimineHhdmRequest = LimineHhdmRequest::new(0);
static MMAP: LimineMemmapRequest = LimineMemmapRequest::new(0);
static MMAP: LimineMmapRequest = LimineMmapRequest::new(0);
#[no_mangle]
pub fn x86_64_start() -> ! {

View file

@ -5,6 +5,7 @@
*/
#![allow(clippy::empty_loop)]
use core::sync::atomic::AtomicU64;
use crate::arch::memory::BootInfoFrameAllocator;
@ -15,7 +16,6 @@ use crate::{boot_conf::KernelConfig, scratchpad, systeminfo::RELEASE_TYPE};
// use crate::{boot_conf::KernelConfig, scratchpad, systeminfo::RELEASE_TYPE, TERM};
use crate::{filesystem, hardware};
use kernel::KERNEL_VERSION;
use limine::LimineTerminalRequest;
use spin::Lazy;
// FIXME: platform agnostic paging stuff
@ -24,7 +24,6 @@ use x86_64::structures::paging::{Mapper, Size4KiB};
// TODO: Change this structure to allow for multiple cores loaded
pub static KERNEL_CONF: Lazy<KernelConfig> = Lazy::new(KernelConfig::new);
static TERMINAL_REQUEST: LimineTerminalRequest = LimineTerminalRequest::new(0);
/// The main entry point of the kernel
pub fn kernel_main(
mut mapper: impl Mapper<Size4KiB>,
@ -32,7 +31,6 @@ pub fn kernel_main(
) -> ! {
init::init();
// panic!();
// /*
if KERNEL_CONF.logging.enabled {
log::set_max_level(KERNEL_CONF.log_level());

View file

@ -22,7 +22,6 @@
#![feature(custom_test_frameworks)]
#![reexport_test_harness_main = "test_main"]
#![test_runner(crate::test_runner)]
// #![feature(llvm_asm)]
#[macro_use]
pub extern crate log;