summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-02-24Userland: Add a utility for viewing interrupts from ProcFSLiav A
2020-02-24Kernel: Create an entry for viewing interrupts in ProcFSLiav A
2020-02-24Kernel: Delete unused filesLiav A
2020-02-24Build: Update the Kernel makefile to build the latest changesLiav A
2020-02-24Kernel: Update the init stage to use all the latest changesLiav A
gdt_init() and idt_init() will be invoked earlier in the boot process. Also, setup_interrupts() will be called to setup the interrupt mode.
2020-02-24CPU: Use the new interrupt componentsLiav A
Now we use the GenericInterruptHandler class instead of IRQHandler in the CPU functions. This commit adds an include to the ISR stub macros header file. Also, this commit adds support for IRQ sharing, so when an IRQHandler will try to register to already-assigned IRQ number, a SharedIRQHandler will be created to register both IRQHandlers.
2020-02-24Kernel: Add the new APIC namespaceLiav A
Also, the enable() function is now correct and will use the right registers and values. In addition to that, write_register() and read_registers() are not relying on identity mapping anymore.
2020-02-24CPU: Add 2 files with ISR stub macrosLiav A
2020-02-24Kernel: Update SB16 driver to use the new IRQHandler classLiav A
Also, add methods to allow changing of IRQ line in the SB16 card.
2020-02-24Kernel: Include the new PIT class in system componentsLiav A
2020-02-24Kernel: Update PATAChannel implementation to use the PIT classLiav A
Also, update the class implementation to use PCI::Device class accordingly. The create() helper will now search for an IDE controller in the PCI bus, allowing to simplify the initialize() method.
2020-02-24Kernel: Update PATAChannel class to use the PCI::Device classLiav A
PATAChannel class will inherit from the PCI::Device class, thus, can still implement IRQ handling.
2020-02-24Kernel: Add MSIHandler classLiav A
This is a stub for now, since we don't support Message Signaled Interrupts yet.
2020-02-24Kernel: Add UnhandledInterruptHandler classLiav A
This class will be used to represent an IRQ vector handler that wasn't assigned to any IRQ Handler.
2020-02-24Kernel: Add SharedIRQHandler classLiav A
This class represents a shared interrupt handler. This class will not be created automatically but only if two IRQ Handlers are sharing the same IRQ number.
2020-02-24Kernel: Update system components to use the new IRQHandler classLiav A
2020-02-24ACPI: Run clang-format on the definitions fileLiav A
2020-02-24Kernel: Introduce the PIT classLiav A
The PIT class inherits from HardwareTimer class, and is replacing the PIT namespace.
2020-02-24Kernel: Update Network adapter classes to use the PCI::Device classLiav A
Those classes will inherit from the PCI::Device class, thus, they can still implement IRQ handling.
2020-02-24Kernel: Update PCI::Device class to use the new IRQHandler classLiav A
2020-02-24Kernel: Add HardwareTimer classLiav A
This is an abstraction layer for future hardware timers that will be implemented.
2020-02-24Kernel: Add new IRQHandler classLiav A
This class will replace the old IRQHandler class later.
2020-02-24Kernel: Add Interrupt Management and Generic Interrupt HandlerLiav A
The GenericInterruptHandler class will be used to represent an abstract interrupt handler. The InterruptManagement class will represent a centralized component to manage interrupts.
2020-02-24ACPI: Adding definitions for HPETLiav A
Also, definitions were added for MADT entries, like IOAPIC and GSI overriding information.
2020-02-24Kernel: Add the IOAPIC classLiav A
This class inherits from IRQController class, and represents the 82093AA IOAPIC chip.
2020-02-24Kernel: Add the PIC classLiav A
This class inherits from IRQController class, and represents the common Intel 8259 PIC chip.
2020-02-24Kernel: Add IRQController classLiav A
This class is an abstraction layer for different IRQ controllers that are present in a typical system.
2020-02-24Kernel: Fix a wrong debug message in ACPIStaticParserLiav A
2020-02-24Kernel: Add PCI helpers to enable and disable the interrupt lineLiav A
2020-02-24Kernel: Add MultiProcessor ParserLiav A
2020-02-24LibGUI: Implement keyboard and mouse wheel events for SpinBoxTibor Nagy
2020-02-24AK: Zero-initialize the internal storage of OptionalAndreas Kling
2020-02-24AK: Make Bitmap use size_t for its sizeAndreas Kling
Also rework its API's to return Optional<size_t> instead of int with -1 as the error value.
2020-02-24AK: Make HashTable and HashMap use size_t for size and capacityAndreas Kling
2020-02-24LibGUI: Fix silly nullptr dereference in MessageBox::show()Andreas Kling
Since we take the parent object as a raw pointer, we should handle the case where it's null.
2020-02-23SystemMenu: Migrate PowerDialog to (widget)->add like in 3d20da9ethatlittlegit
This also fixes the build.
2020-02-23Userland+Kernel: Set shutdown/reboot to only be run by the `phys` groupthatlittlegit
2020-02-23SystemMenu: Move SystemDialog into SystemMenu and remove INI configthatlittlegit
I probably would've done INI config removal in another commit, but it fit well here because I didn't want to pledge wpath for SystemMenu if I didn't need to. Frankly, that's something that I think should be done: allow ConfigFile to be used read-only.
2020-02-23SystemDialog+Base: Add icon for SystemDialogthatlittlegit
2020-02-23SystemMenu: Remove --shutdown argument when calling SystemDialogthatlittlegit
2020-02-23SystemDialog: Revamp to be more Win95-likethatlittlegit
Only thing I don't like right now is the fact that we rely on the shell.
2020-02-23LibGUI: Add helper for constructing new TabWidget tabsAndreas Kling
This patch adds the following convenience helper: auto tab_widget = GUI::TabWidget::construct(); auto my_widget = tab_widget->add_tab<GUI::Widget>("My tab", ...); The above is equivalent to: auto tab_widget = GUI::TabWidget::construct(); auto my_widget = GUI::Widget::construct(...); tab_widget->add_widget("My tab", my_widget);
2020-02-23Demos: Remove silly HelloWorld2 demoAndreas Kling
This was just a tiny test app made with the old VisualBuilder. It's not really useful for anything.
2020-02-23LibGUI: Remove parent parameter to GUI::Widget constructorAndreas Kling
2020-02-23Inspector: Use Core::Object::add()Andreas Kling
2020-02-23FontEditor: Fix focus and implement keyboard navigation in the glyph mapTibor Nagy
2020-02-23LibGfx: Fix accidentally hardcoded font height in Font::clone()Tibor Nagy
2020-02-23LibGUI: Make GUI::Frame have the 2px sunken container look by defaultAndreas Kling
The overwhelming majority of GUI::Frame users set the same appearance, so let's just make it the default.
2020-02-23Userspace: Use Core::Object::add() when building interfacesAndreas Kling
2020-02-23Kernel: Dump all kernel regions when we hit a page fault during IRQAndreas Kling
This way you can try to figure out what the faulting address is.