Able
1f8ea529f9
fix echo command and add traces to vfs
2022-11-23 01:55:09 -06:00
Erin
f396c3642d
Skeleton for architecture-specific things
2022-11-07 21:21:16 +01:00
Erin
4812e59c09
Threw stuff from the microkernel. Start of moving core parts there.
2022-11-07 20:29:42 +01:00
Erin
d31f17f07e
clippy
2022-11-05 01:43:41 +01:00
Erin
4e6bed0b57
removed module that I forgot to remove + 1.65 stuff
2022-11-05 01:40:38 +01:00
Erin
56700a7986
removed sus messaging module
2022-11-05 00:39:37 +01:00
Erin
b943714093
update
2022-10-29 19:53:08 +02:00
Erin
8ebaf1b244
fixed sound
2022-10-29 19:20:23 +02:00
Erin
84f163f534
merge
2022-08-28 22:04:55 +02:00
Erin
3b1e51d1ba
fixed qr code
2022-08-21 11:45:28 +02:00
able
50410f4dc1
Merge pull request 'IDE disk driver using DMA' ( #27 ) from theoddgarlic/ableos:ata into master
...
Reviewed-on: https://git.ablecorp.us:443/able/ableos/pulls/27
2022-08-17 16:14:43 +00:00
TheOddGarlic
c6f7f7665c
IDE: Implement writing using Bus Mastering DMA
2022-08-17 17:19:27 +03:00
TheOddGarlic
9329059510
IDE: Add LBA28 addressing support
...
LBA28 is obsolete at this point, but we prefer to use it over LBA48
whenever we can because LBA28 is faster.
2022-08-17 15:29:50 +03:00
TheOddGarlic
f993f6d7b9
IDE: clean everything up
2022-08-17 13:29:34 +03:00
TheOddGarlic
8a1c77db58
IDE: Rename PiixIde to PciIde, use it for all IDE controllers
...
If the controller is not a known PCI IDE controller, then we warn about
the controller during PCI device discovery. :^)
2022-08-17 13:29:34 +03:00
TheOddGarlic
f140938ee6
working IDE DMA implementation
2022-08-17 13:29:34 +03:00
TheOddGarlic
998a1d30cf
PCI: device discovery
2022-08-17 13:29:34 +03:00
TheOddGarlic
57d6a5f2bb
PCI: a lot of refactoration
2022-08-17 13:29:34 +03:00
TheOddGarlic
ca3826bfe5
IDE device discovery
2022-08-17 13:29:34 +03:00
TheOddGarlic
012452dec1
ATA device detection
2022-08-17 13:29:34 +03:00
TheOddGarlic
148c66eae2
progress, i guess
2022-08-17 13:29:34 +03:00
TheOddGarlic
3cb666d26e
allocate 16 frames for DMA
2022-08-17 13:29:34 +03:00
TheOddGarlic
6bc74e896c
allocate DMA frame
2022-08-17 13:29:34 +03:00
TheOddGarlic
3836416891
PCI: add PIIX3_IDE to supported devices
...
PIIX4_IDE and PIIX3_IDE are similar enough that we can have one driver
for both.
2022-08-17 13:29:34 +03:00
TheOddGarlic
f5c4db98f9
Devices: Add block devices
2022-08-17 13:29:34 +03:00
TheOddGarlic
ed68ef9fa0
PCI: add INTEL_PIIX4_IDE device
2022-08-17 13:29:34 +03:00
TheOddGarlic
b8f0074aa0
PCI: revision id, programming interface byte and device ID
2022-08-17 13:29:33 +03:00
TheOddGarlic
86b0ac95aa
ATA: configure qemu to boot from an IDE drive
2022-08-17 13:29:33 +03:00
TheOddGarlic
5d1b4ed55d
ATA: get rid of x86_ata
...
We'll be using our own implementation.
2022-08-17 13:29:30 +03:00
Erin
a75279df1f
OOOO MIGHTY CLIPPY, WE SUMMON YOU!!!
2022-08-10 21:47:33 +02:00
Erin
f2bd9ddf4d
Added spawner
2022-08-09 01:32:42 +02:00
able
55b494c154
Merge pull request 'VFS implementation' ( #22 ) from theoddgarlic/ableos:vfs into master
...
Reviewed-on: https://git.ablecorp.us:443/able/ableos/pulls/22
2022-08-08 05:25:07 +00:00
TheOddGarlic
030a5812f7
make stuff use the new VFS interface
2022-08-08 08:22:58 +03:00
TheOddGarlic
8e487e1697
VFS: fix little oopsie
2022-08-08 08:22:58 +03:00
TheOddGarlic
0cc1aaa64f
VFS: path resolution
2022-08-08 08:22:55 +03:00
TheOddGarlic
960da43383
NOT ONE, but TWO deadlocks fixed!
2022-08-08 08:21:35 +03:00
TheOddGarlic
70342c5f46
VFS: move stuff into a VirtualFileSystem struct
2022-08-08 08:21:35 +03:00
TheOddGarlic
b01ce11fab
recursively walk directories
2022-08-08 08:21:35 +03:00
TheOddGarlic
e766229b58
VFS+Ext2: many simplifications and filesystem initialisation
2022-08-08 08:21:35 +03:00
TheOddGarlic
52cd72a949
Ext2: find_dir implementation
2022-08-08 08:21:35 +03:00
TheOddGarlic
e21b34a3e7
Ext2: read_dir implementation
2022-08-08 08:21:35 +03:00
TheOddGarlic
8c9521e893
VFS: simplify everything
2022-08-08 08:21:35 +03:00
TheOddGarlic
91c1783b99
vfs+ext2: initial FsNode::read() implementation
...
The VFS side of things for read() should be done, however due to my
limited ext2 knowledge, I've not implemented partially reading a file,
and in this state only full files can be read.
2022-08-08 08:21:35 +03:00
TheOddGarlic
600a81adf7
vfs: FsNode::release() implementation and weak ref to VFS node in file descriptors
2022-08-08 08:21:35 +03:00
TheOddGarlic
2a163a55ee
vfs: rename FsNode::close() to FsNode::release()
...
FsNode::close() will instead become a method that takes a closes a file descriptor, while release() will close the whole VFS node.
2022-08-08 08:21:35 +03:00
TheOddGarlic
cdb6632f98
vfs+ext2: full implementation of FsNode::open()
2022-08-08 08:21:35 +03:00
TheOddGarlic
aa3667714b
vfs: documentation and a few minor changes
2022-08-08 08:21:35 +03:00
TheOddGarlic
9ed5ffc521
vfs: FsNode::new()
2022-08-08 08:21:35 +03:00
TheOddGarlic
52ff9f8a3c
vfs: remove name from VFS nodes
2022-08-08 08:21:35 +03:00
TheOddGarlic
31a3feb6a0
vfs: move operations into trait StorageDevice, hold StorageDevices in KERNEL_STATE
2022-08-08 08:21:35 +03:00