Commit Graph

95 Commits

Author SHA1 Message Date
4lDO2 21e30b7339 Replace syscall::clone() with libc::fork(). 2022-07-27 16:25:01 +02:00
4lDO2 322af701d6 Use aligned addresses in physmap. 2022-07-27 15:33:21 +02:00
Jeremy Soller 860821c150 Support compilation on more architectures 2022-07-26 16:01:54 -06:00
Jeremy Soller fd45fa2818 Update Cargo.lock 2022-07-26 15:21:04 -06:00
4lDO2 07f10fb4d1 Update redox_syscall to v0.2.12 2022-03-24 16:06:00 +01:00
4lDO2 d426ffacea Update toolchain to 2022-03-18. 2022-03-19 15:06:29 +01:00
Jeremy Soller c5a1013bc2 rtl8168d: use syscall::Daemon 2022-03-01 20:34:27 -07:00
Jeremy Soller d40a908cfd Add logging to usbhidd 2022-02-14 09:38:40 -07:00
Jeremy Soller 36b3af4262 ihdad logging 2021-12-01 16:14:15 -07:00
4lDO2 7a2b3d7656 Update dependencies. 2021-06-17 18:18:27 +02:00
Jeremy Soller 5a279d4081 Use redox-log in ahcid 2021-06-01 21:37:52 -06:00
4lDO2 c6efa649be Add DMAR parsing.
In the future, this will probably be moved into its own driver, probably
called `intelvtdd` or `intelvfiod`. This is because `acpid` already
provides an interface to read from ACPI tables, which `pcid` has used
for quite long (when that scheme was provided by the kernel). AMD
implements IOMMU as a PCI function, so letting these be separate drivers
would certainly be beneficial.

The same thing might apply for HPET or MADT, which are the only ACPI
tables still parsed in the kernel.
2021-03-13 12:34:56 +01:00
4lDO2 5d661eab59 Successfully load physical SDTs, and handle kstop*
Well, while it does now wait for the kstop pipe, that is not to say that
it actually performs the ACPI shutdown... yet.
2021-03-10 14:38:43 +01:00
4lDO2 be984885bb WIP: Move ACPI code from kernel to drivers. 2021-03-10 11:24:27 +01:00
jD91mZM2 c255a869ba Don't use a local dependency lmao 2020-10-29 15:57:09 +01:00
jD91mZM2 ca2b3fa2d4 Update to cargo release of redox_syscall 2020-08-27 17:55:01 +02:00
jD91mZM2 ac64d09186 vesad: Provide legacy fmap implementation 2020-08-17 16:28:02 +02:00
jD91mZM2 321f708d0f vesad: Update redox_syscall 2020-08-17 14:39:25 +02:00
Jeremy Soller be101621cc Update to newer syscall 2020-08-02 15:25:03 -06:00
Wren Turkal 65982d5e02 Add more structure cli to pcid.
This change adds a structopt commandline interface to the pcid tool.
This add some help for the arguments that pcid takes.

Signed-off-by: Wren Turkal <wt@penguintechs.org>
2020-08-01 18:16:31 +00:00
4lDO2 6bd4bb814f Support xHCs that only support 32-bit physical addresses. 2020-06-18 19:17:20 +00:00
Jeremy Soller 7ccf8d27b0 Remove pbr patch 2020-05-28 11:54:30 -06:00
Jeremy Soller 713058f183 Update dependencies, add patches 2020-05-22 09:06:03 -06:00
4lDO2 cbeb0070ec WIP: Asyncify namespace identification. 2020-04-29 20:44:38 +02:00
4lDO2 6c2f103841 WIP: Complete the NVME CQ reactor (doesn't compile yet) 2020-04-29 19:35:48 +02:00
4lDO2 e6a46bb6a6 Begin with NVME MSI support. 2020-04-25 23:02:16 +02:00
4lDO2 7b69d5b9b5 WIP: Use the enhanced pcid IPC. 2020-04-22 21:21:55 +02:00
4lDO2 fe95c942ac Add pcid logging. 2020-04-22 18:27:43 +02:00
4lDO2 aea6e1b84c Improve xhcid logging. 2020-04-22 18:09:56 +02:00
Jeremy Soller 1d3978c69f Merge branch 'ps2d' 2020-04-20 14:16:30 -06:00
Jeremy Soller 255e5fcb68 WIP: ps2d interrupt fixes 2020-04-19 14:27:44 -06:00
4lDO2 31d5a95cf9 Add MCFG parsing for PCIe. 2020-04-19 17:32:45 +02:00
4lDO2 0e802e2085 Fix two deadlocks. 2020-04-19 14:45:46 +02:00
4lDO2 80d3affa1c Enable xhci logging, powered by redox-log. 2020-04-19 14:45:46 +02:00
4lDO2 ae49a0ba30 Update chashmap version. 2020-04-19 14:45:46 +02:00
4lDO2 443b160b6d Add internal locking to the Xhci struct. 2020-04-19 14:45:46 +02:00
4lDO2 cb5a72fbc1 Successfully recognize (only one) MSI-X IRQ.
Somehow it only happens once though.
2020-04-19 14:45:46 +02:00
4lDO2 735c55f656 Rebase. 2020-04-19 14:45:46 +02:00
4lDO2 7536048ceb Parse some of the PCI capabilities, and setup IPC. 2020-04-19 14:45:46 +02:00
4lDO2 034e6bce70 Set up a basic SCSI scheme, and get disk size.
Some commands are unused though, and probably won't be used, for example
ReportSuppOpcodes. Also, there appears to be lots of different versions
of the SCSI specification.
2020-02-14 00:02:13 +01:00
4lDO2 73ca576558 Use the real DCIs instead of driver-level numbers.
Sidenote: instead of STALLing because the driver didn't configure the
endpoints properly, regular transfers now work. Thus, QEMU was able to
recognize that it received a Bulk-Only Transport CBW. Yay!

Additionally, to make life easier when debugging, usbctl was added; now
it can get endpoint statuses which were previously non-accessible from
shell scripts, after the transition to the new ctl+data endpoint
interface.
2020-02-12 22:07:37 +01:00
4lDO2 e052c5968d Support detecting USB port speeds. 2020-02-10 16:23:19 +01:00
4lDO2 cff3cf0d28 Add basic logic to usbscsid and support alternate interface. 2020-02-10 11:23:18 +01:00
4lDO2 6b70e80d20 Add (untested) transfer support. 2020-02-09 17:17:36 +01:00
4lDO2 ae76f57162 Prepare for orbital communication. 2020-02-09 11:12:18 +01:00
4lDO2 1013daf606 IT WORKS! 2020-02-08 17:18:09 +01:00
4lDO2 3fd4bc4b3b Add functions for the HID-specific requests. 2020-02-08 12:28:17 +01:00
4lDO2 b308dad7c6 Add a basic HID driver unable to parse report descs.
Custom device requests are now implemented though.
2020-02-08 10:21:21 +01:00
4lDO2 ae0d43c12a Add a framework-ish for USB drivers. 2020-02-03 21:48:35 +01:00
4lDO2 cbd9d83b69 SUPPORT CONFIGURE_ENDPOINTS! 2020-02-01 15:05:14 +01:00