|
67e8a2dd4b
|
kernel: Do not automatically read the MBR partition table from /dev/cdrom
continuous-integration/drone/pr Build is passing
Since ff952cfe16 made /dev mounted from userspace, /dev/cdrom does not exist when ATA drives are scanned.
|
2023-06-04 11:14:04 +02:00 |
|
|
21f043a7f0
|
kernel/ATA: Route interrupts to the correct drive
|
2023-06-04 11:14:04 +02:00 |
|
|
46c6462d5f
|
kernel: Start reading the MBR partition table from the ATAPI drive
|
2023-06-04 11:14:03 +02:00 |
|
|
7912281f3e
|
ATA: Mark the CDROM as a block device
|
2023-06-04 11:14:03 +02:00 |
|
|
dd439fa2c6
|
kernel/ATA: Pass extra information to DeviceRegistry
This is needed since merging e7d482e from main.
|
2023-06-04 11:14:03 +02:00 |
|
|
b8b6c94cae
|
kernel+init: Create a device node in /dev to access the CDROM from userspace!
Still using PIO, though.
|
2023-06-04 11:14:03 +02:00 |
|
|
cf549b41ea
|
kernel/ATA: Read the CDROM's first sector using ATAPI PIO!!
Sadly, for some reason, DMA is not working right now.
This is a problem, as PIO is inconvenient. But hey, it works for now!
|
2023-06-04 11:14:03 +02:00 |
|
|
a58325ed78
|
kernel/x86_64: Implement writing to PCI fields
|
2023-06-04 11:14:03 +02:00 |
|
|
a5c5339cfa
|
kernel/PCI: Add bit enum for the Command field
|
2023-06-04 11:14:02 +02:00 |
|
|
81bf3740a1
|
kernel: Actually register interrupt handlers properly
|
2023-06-04 11:14:02 +02:00 |
|
|
ac040f6252
|
kernel/ATA: Calculate block sizes for ATA devices as well
|
2023-06-04 11:14:02 +02:00 |
|
|
d27e7cf6e2
|
kernel/ATA: Send a READ CAPACITY packet to an ATA drive on initialization
|
2023-06-04 11:14:02 +02:00 |
|
|
e0f41b0daf
|
kernel/ATA: Read the PCI Busmaster registers and start preparing for DMA
|
2023-06-04 11:14:02 +02:00 |
|
|
5c731b035b
|
kernel/ATA: Read the Busmaster base port and verify it
|
2023-06-04 11:14:01 +02:00 |
|
|
4e413b0615
|
kernel: Handle device BARs properly
|
2023-06-04 11:14:01 +02:00 |
|
|
3630d2f027
|
kernel/ATA: Read ATA strings properly instead of backwards
Now we can see the model string. What does it say...
"QEMU DVD-ROM". Let's go!
|
2023-06-04 11:14:01 +02:00 |
|
|
3168271ad4
|
kernel/ATA: Implement enough to send an IDENTIFY command and read the model number :)
|
2023-06-04 11:14:01 +02:00 |
|
|
66071854e4
|
kernel/ATA: Handle drive IRQs in compatibility mode
|
2023-06-04 11:14:01 +02:00 |
|
|
e8eaff88bd
|
kernel/CPU: Allow passing arbitrary data to interrupt handlers
|
2023-06-04 11:14:00 +02:00 |
|
|
f113ef7e89
|
kernel/ATA: Start reading/writing registers and detecting drives
|
2023-06-04 11:14:00 +02:00 |
|
|
7333249e6e
|
kernel: Warn if no ATA controller is found
|
2023-06-04 11:14:00 +02:00 |
|
|
f1b9a42fc0
|
kernel: Add a KMutex class and use that for ATA::Controller locking
|
2023-06-04 11:14:00 +02:00 |
|
|
6f852e3447
|
kernel/x86_64: Add basic ATA controller and channel identification
|
2023-06-04 11:14:00 +02:00 |
|
|
cbdbf79ae0
|
kernel/PCI: Add more PCI field types
|
2023-06-04 11:13:59 +02:00 |
|
|
dae73bc8f7
|
kernel/x86_64: Add a way to register IRQ handlers from other kernel subsystems
|
2023-06-04 11:13:55 +02:00 |
|
|
3283991ec6
|
kernel: Keep the old Timer::ticks_ms() API.
continuous-integration/drone/push Build is passing
Removing this API broke the ATA branch.
|
2023-06-03 21:02:18 +02:00 |
|
|
8bcec00a9d
|
kernel: Change the timer subsystem to use timespecs natively
continuous-integration/drone/push Build is passing
|
2023-06-03 13:15:10 +02:00 |
|
|
1090815c8d
|
kernel: Honor the sticky bit
|
2023-06-03 11:55:10 +02:00 |
|
|
ff952cfe16
|
kernel+init: Let userspace control devfs mountpoints
continuous-integration/drone/push Build is passing
|
2023-06-02 21:45:31 +02:00 |
|
|
11a4f8cc90
|
kernel: Wake the parent process when a child exits because of a page fault
|
2023-05-28 21:50:13 +02:00 |
|
|
88d1da59e8
|
kernel+libc: Add access()
continuous-integration/drone/push Build is passing
|
2023-05-27 12:04:27 +02:00 |
|
|
bd8aaa917f
|
kernel+libc+ln: Add support for userspace hard link creation
continuous-integration/drone/push Build is passing
|
2023-05-27 11:32:40 +02:00 |
|
|
a98e9e8009
|
kernel: Add /dev/full
continuous-integration/drone/push Build is passing
|
2023-05-27 10:42:45 +02:00 |
|
|
b0506bf88f
|
kernel: Add umask
continuous-integration/drone/push Build is passing
|
2023-05-26 22:27:49 +02:00 |
|
|
d89a823924
|
kernel: Return EACCES when trying to chdir to an unaccessible directory
|
2023-05-26 20:49:13 +02:00 |
|
|
cba0a23db9
|
kernel: Make the framebuffer a block device
continuous-integration/drone/push Build is passing
|
2023-05-26 20:36:35 +02:00 |
|
|
7cdb967730
|
kernel: compilation fix
continuous-integration/drone/push Build is passing
|
2023-05-26 20:30:39 +02:00 |
|
|
62e14e7580
|
kernel+libos+apps: Support block devices and disallow seeking character devices or pipes
continuous-integration/drone/push Build is failing
|
2023-05-26 20:27:47 +02:00 |
|
|
3a51807fa6
|
kernel+stat: Handle pipes correctly in stat()
continuous-integration/drone/push Build is passing
|
2023-05-23 20:54:25 +02:00 |
|
|
9cdfdbc6f9
|
kernel: Handle unnamed pipes in stat()
continuous-integration/drone/push Build is failing
|
2023-05-23 20:49:26 +02:00 |
|
|
1094042a7d
|
kernel: Implement st_dev and st_rdev
continuous-integration/drone/push Build is failing
|
2023-05-23 20:45:24 +02:00 |
|
|
1a6ad11462
|
kernel+libc+libos+ls: Add readlink()
continuous-integration/drone/push Build is passing
|
2023-05-23 15:42:38 +02:00 |
|
|
67a9d130e2
|
kernel: Add initial support for symbolic links :D
|
2023-05-20 21:49:24 +02:00 |
|
|
01111442d3
|
kernel: Add the getrusage() system call
|
2023-05-20 12:48:07 +02:00 |
|
|
1506331872
|
kernel+libc: Add the pstat() system call
Luna-specific, but I like it.
|
2023-05-18 21:48:47 +02:00 |
|
|
84bed3ceb3
|
kernel+libc: Remove mknod()
continuous-integration/drone/push Build is passing
Now that we automatically create files in /dev, mknod() is not needed anymore.
|
2023-05-18 19:42:14 +02:00 |
|
|
d7c563aebd
|
kernel: Add reference counting for mounts
continuous-integration/drone/push Build is passing
This will make sure we cannot unmount a file system while there is another one mounted inside it.
|
2023-05-18 16:22:31 +02:00 |
|
|
3a73d49aa1
|
kernel: Remove a mount from the mountpoint list after unmounting it
|
2023-05-18 16:18:09 +02:00 |
|
|
8f6bd29da3
|
kernel: Make file system reference counting work for current directories
continuous-integration/drone/push Build is passing
Also, make pipes usable again.
|
2023-05-17 20:37:01 +02:00 |
|
|
1f4c4928cc
|
kernel+libc+apps: Add mount and umount syscalls, libc wrappers, and utilities
continuous-integration/drone/push Build is passing
|
2023-05-17 20:30:15 +02:00 |
|