Andreas Kling
6b5d2afd00
Kernel: Clean up and simplify MP table parsing
...
Use map_typed<T> to map physically addressed structs into kernel VM.
This is so much easier than doing address arithmetic everywhere. :^)
2020-05-22 12:01:01 +02:00
Andreas Kling
21d5f4ada1
Kernel: Absorb LibBareMetal back into the kernel
...
This was supposed to be the foundation for some kind of pre-kernel
environment, but nobody is working on it right now, so let's move
everything back into the kernel and remove all the confusion.
2020-05-16 12:00:04 +02:00
Andreas Kling
d92f62db43
Kernel: Remove ref-counting from interrupt override metadata
...
I don't see a reason for these to be reference-counted, and removing it
simplifies a bunch of surrounding data structures.
2020-05-08 21:12:16 +02:00
Liav A
4d44a3bdfe
Kernel: Reorder bitwise operations when creating PCI interrupt overrides
2020-04-09 20:45:44 +02:00
Liav A
e4ad1b92fb
MultiProcessor: Silence debug message spam
2020-04-09 20:45:44 +02:00
Liav A
fec8763c21
Interrupts: Make the MultiProcessorParser functional again
2020-04-09 19:59:53 +02:00
Andreas Kling
7d862dd5fc
AK: Reduce header dependency graph of String.h
...
String.h no longer pulls in StringView.h. We do this by moving a bunch
of String functions out-of-line.
2020-03-23 13:48:44 +01:00
Andreas Kling
b1058b33fb
AK: Add global FlatPtr typedef. It's u32 or u64, based on sizeof(void*)
...
Use this instead of uintptr_t throughout the codebase. This makes it
possible to pass a FlatPtr to something that has u32 and u64 overloads.
2020-03-08 13:06:51 +01:00
Andreas Kling
c6693f9b3a
Kernel: Simplify a bunch of dbg() and klog() calls
...
LogStream can handle VirtualAddress and PhysicalAddress directly.
2020-03-06 15:00:44 +01:00
Liav A
d9d792d37f
Kernel: Print MultiProcessor features
2020-03-06 10:32:32 +01:00
Liav A
0fc60e41dd
Kernel: Use klog() instead of kprintf()
...
Also, duplicate data in dbg() and klog() calls were removed.
In addition, leakage of virtual address to kernel log is prevented.
This is done by replacing kprintf() calls to dbg() calls with the
leaked data instead.
Also, other kprintf() calls were replaced with klog().
2020-03-02 22:23:39 +01:00
Liav A
ca05d54b2b
Kernel: Add MultiProcessor Parser
2020-02-24 11:27:03 +01:00