ladybird/Kernel
Pankaj Raghav 8f62e62cfe Kernel: Add MSI support in PCI Device
Extend reserve_irqs, allocate_irq, enable_interrupt and
disable_interrupt API to add MSI support in PCI device.

The current changes only implement single MSI message support.
TODOs have been added to support Multiple MSI Message (MME) support in
the future.
2023-05-16 23:22:12 +02:00
..
API Kernel: Allow configuring a Jail to not impose PID isolation restriction 2023-04-24 12:15:29 +02:00
Arch Kernel/aarch64: Make REGISTER_STATE_SIZE a multiple of 16 bytes 2023-05-15 17:16:06 -06:00
Bus Kernel: Add MSI support in PCI Device 2023-05-16 23:22:12 +02:00
Devices Kernel/HID: Don't use *LockRefPtrs in the I8042Controller code 2023-04-15 12:53:31 +02:00
FileSystem Kernel: Remove FIFO::{attach,detach}(Direction) 2023-05-15 07:00:29 +02:00
Firmware Kernel/PCI: Hold a reference to DeviceIdentifier in the Device class 2023-01-26 23:04:26 +01:00
Graphics Kernel/VirtIO: Use proper error propagation from the get_config method 2023-04-30 06:03:47 +02:00
Heap Kernel+LibC: Move name length constants to Kernel/API from limits.h 2023-01-21 10:43:59 -07:00
Interrupts Kernel: Introduce PCIIRQHandler 2023-05-07 21:16:41 +02:00
Library Kernel: Switch LockRefPtr<Inode> to RefPtr<Inode> 2023-03-09 21:54:59 +01:00
Locking Kernel: Don't ref/unref the holder thread in Mutex 2023-04-04 10:33:42 +02:00
Memory Everywhere: Change spelling of 'behaviour' to 'behavior' 2023-05-07 01:05:09 +02:00
Net Kernel/Net: Iron out the locking mechanism across the subsystem 2023-04-14 19:27:56 +02:00
Prekernel Revert "Kernel/x86: Bake the Prekernel and the Kernel into one image" 2023-04-28 23:24:19 +02:00
Storage Kernel: Add MSIx support to NVMe 2023-05-07 21:16:41 +02:00
Syscalls Kernel: Allow configuring a Jail to not impose PID isolation restriction 2023-04-24 12:15:29 +02:00
Tasks Kernel: Simplify Process factory functions 2023-04-04 10:33:42 +02:00
Time Kernel: Remove is_sharing_with_others API from GenericInterruptHandler 2023-04-25 10:18:39 +02:00
TTY Kernel: Remove redundant HID name from all associated files 2023-04-09 18:11:37 +02:00
AddressSanitizer.cpp
AddressSanitizer.h
Assertions.h
AtomicEdgeAction.h
BootInfo.h Kernel: Store the kernel command line in a StringView 2023-04-29 08:24:18 +02:00
CMakeLists.txt Kernel: Restore kernel8.img for aarch64 build 2023-05-16 09:47:37 +02:00
CommandLine.cpp Kernel: Store the kernel command line in a StringView 2023-04-29 08:24:18 +02:00
CommandLine.h Kernel: Store the kernel command line in a StringView 2023-04-29 08:24:18 +02:00
Coredump.cpp Kernel: Stop using *LockRefPtr for Process pointers 2023-04-04 10:33:42 +02:00
Coredump.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
CrashHandler.cpp Kernel: Add optional userspace backtrace to Process::crash 2023-02-08 18:19:48 +00:00
Credentials.cpp Everywhere: Use ReadonlySpan<T> instead of Span<T const> 2023-02-08 19:15:45 +00:00
Credentials.h Everywhere: Use ReadonlySpan<T> instead of Span<T const> 2023-02-08 19:15:45 +00:00
Debug.h.in Meta: Remove unused debug flags, add missing GENERATE_DEBUG 2023-05-14 16:01:57 -06:00
DoubleBuffer.cpp
DoubleBuffer.h
embedmap.sh
ExecutionMode.h Kernel: Factor our PreviousMode into RegisterState::previous_mode 2023-01-27 11:41:43 +01:00
Forward.h Kernel/FileSystem: Simplify the ProcFS significantly 2023-02-24 22:14:18 +01:00
FutexQueue.cpp
FutexQueue.h
generate-version-file.sh
InterruptDisabler.h
IOWindow.cpp Kernel: Add bar_address_mask to mask the last 4 bits of a BAR address 2023-04-24 21:41:54 +02:00
IOWindow.h Kernel: Remove declarations for non-existent methods 2023-01-27 20:33:18 +00:00
Jail.cpp Kernel: Allow configuring a Jail to not impose PID isolation restriction 2023-04-24 12:15:29 +02:00
Jail.h Kernel: Allow configuring a Jail to not impose PID isolation restriction 2023-04-24 12:15:29 +02:00
KBuffer.h Everywhere: Remove string.h include from AK/Traits.h and resolve fallout 2023-01-21 10:43:59 -07:00
KBufferBuilder.cpp
KBufferBuilder.h Kernel: Remove includes to LibC stdarg definitions 2023-03-01 19:36:53 -07:00
KLexicalPath.cpp
KLexicalPath.h
kprintf.cpp Kernel: Remove includes to LibC stdarg definitions 2023-03-01 19:36:53 -07:00
kstdio.h Kernel: Remove includes to LibC stdarg definitions 2023-03-01 19:36:53 -07:00
KString.cpp
KString.h AK: Add support for "debug only" formatters 2023-01-13 21:09:26 +00:00
KSyms.cpp Kernel: Add optional userspace backtrace to Process::crash 2023-02-08 18:19:48 +00:00
KSyms.h
MiniStdLib.cpp
mkmap.sh
Multiboot.h
Panic.cpp
Panic.h
PerformanceEventBuffer.cpp AK+Kernel: Add includes before removing Kernel/ProcessExposed.h 2023-02-24 22:14:18 +01:00
PerformanceEventBuffer.h Everywhere: Remove needless copies of Error / ErrorOr instances 2023-02-10 09:08:52 +00:00
PerformanceManager.h AK+Kernel: Add includes before removing Kernel/ProcessExposed.h 2023-02-24 22:14:18 +01:00
PhysicalAddress.h
Process.cpp Kernel: Ensure jailed processes can be reaped by a jailed parent process 2023-04-09 18:49:01 +02:00
Process.h Kernel: Add the futimens syscall 2023-04-10 10:21:28 +02:00
ProcessGroup.cpp Kernel: Make ProcessGroup a ListedRefCounted and fix two races 2023-04-05 11:37:27 +02:00
ProcessGroup.h Kernel: Make ProcessGroup a ListedRefCounted and fix two races 2023-04-05 11:37:27 +02:00
ProcessList.cpp Kernel: Make the Jails' internal design a lot more sane 2023-03-12 10:21:59 -06:00
Random.cpp Kernel/aarch64: Add TimeManagement fallback entropy source to Random.cpp 2023-02-08 18:19:48 +00:00
Random.h
SanCov.cpp
Scheduler.cpp Kernel: Mark the idle thread as active before switching it in 2023-04-17 20:30:17 +02:00
Scheduler.h
ScopedCritical.cpp
ScopedCritical.h
Sections.h Kernel/aarch64: Change base address of the kernel to 0x2000000000 2023-01-24 14:54:44 +00:00
StdLib.cpp
StdLib.h Kernel/StdLib: Change try_copy_n_to_user to copy_n_to_user 2023-03-24 18:25:12 +01:00
Syscall.cpp Kernel: Add optional userspace backtrace to Process::crash 2023-02-08 18:19:48 +00:00
Thread.cpp Kernel: Make dispatch_signal work for aarch64 2023-04-06 21:19:58 +03:00
Thread.h Kernel: Stop using *LockRefPtr for Kernel::Timer 2023-04-04 10:33:42 +02:00
ThreadBlockers.cpp Kernel: Stop using *LockRefPtr for ProcessGroup 2023-04-04 10:33:42 +02:00
ThreadTracer.cpp
ThreadTracer.h
TimerQueue.cpp Kernel: Stop using *LockRefPtr for Kernel::Timer 2023-04-04 10:33:42 +02:00
TimerQueue.h Kernel: Stop using *LockRefPtr for Kernel::Timer 2023-04-04 10:33:42 +02:00
UBSanitizer.cpp
UnixTypes.h
UserOrKernelBuffer.cpp
UserOrKernelBuffer.h
VirtualAddress.h
WaitQueue.cpp
WaitQueue.h
WorkQueue.cpp Kernel/aarch64: Make sure no reordering of DAIF::read is possible 2023-04-13 20:22:08 +02:00
WorkQueue.h Kernel: Stop using *LockRefPtr for Thread 2023-04-04 10:33:42 +02:00