Jeremy Soller
28dd3596f3
More logging adjustments and set default level to info
2025-11-02 07:55:32 -07:00
Jeremy Soller
6d5523de2a
Set all log levels, reduce unnecessary logs
2025-11-01 19:36:38 -06:00
Jeremy Soller
8bf5d60e96
Adjust logging, ensure drivers get unique logfiles
2025-10-24 08:19:34 -06:00
bjorn3
b9ce02ea90
storage/nvmed: Remove unused InterruptSources methods and fields
2025-08-30 20:11:05 +02:00
bjorn3
2945b86b82
pcid: Helper to allocate first MSI interrupt
2025-08-30 19:14:01 +02:00
bjorn3
0a314b0bad
nvmed: Use std::hint::spin_loop
2025-08-30 19:14:01 +02:00
bjorn3
0b6b5e0d04
pcid: Move MappedMsixRegs to pcid_interface
2025-08-30 19:14:01 +02:00
bjorn3
a1b0feaadb
storage: Notify readiness as soon as the disk scheme has been created
...
This prevents boot hangs when the disk driver hangs between creating the
disk scheme and being fully initialized, while still preventing race
conditions.
2025-05-20 22:03:01 +02:00
Jeremy Soller
5e4d4427db
Timeout of five seconds for nvmed init
2025-04-25 12:14:09 -06:00
4lDO2
6b0d4da2a2
Remove 'async' Cargo feature from nvmed.
2025-03-29 10:19:05 +01:00
4lDO2
ab549721e9
Use async executor for nvmed.
2025-03-29 10:19:05 +01:00
bjorn3
865ca86666
storage: Mostly unify disk scheme implementations
...
lived and usbscsid still keep their old scheme implementations.
2025-03-08 13:06:31 +01:00
bjorn3
60a141b51c
storage: Move most partition handling into DiskWrapper
2025-03-07 22:49:22 +01:00
bjorn3
b1dcda4cf7
storage/nvmed: Use DiskWrapper
2025-03-07 22:35:01 +01:00
bjorn3
dfe23b0683
storage/driver-block: Make Disk::block_length infallible
...
It should be read when creating the struct implementing Disk and every
disk needs to have some block length.
2025-03-07 21:35:49 +01:00
bjorn3
f01a8c8d3e
storage: Use DiskWrapper::pt in nvmed and virtio-blkd
2025-03-07 20:58:01 +01:00
bjorn3
ebdfc89e7a
storage/nvmed: Pass NvmeNamespace by value and remove the separate nsid arguments
2025-03-07 20:46:33 +01:00
bjorn3
03329430b4
storage/driver-block: Handle block_read read buffer internally
2025-03-07 20:34:33 +01:00
bjorn3
f6c3be42e7
storage: Vendor partitionlib to make it easier to change
2025-03-06 22:18:08 +01:00
bjorn3
e7fe3183b0
Make all pcid_interface methods abort the process on errors
...
Effectively the only way to recover from errors in the communication
with pcid is by restarting the driver from scratch possibly after
restarting pcid. As such moving the aborts from individual drivers to
pcid_interface simplifies drivers while at the same time allowing nicer
error messages.
2025-03-02 12:36:35 +01:00
bjorn3
581d9eea33
Replace a whole bunch more repr(packed) with repr(C, packed)
2025-02-22 16:19:25 +01:00
bjorn3
e973f89139
Remove unnecessary feature gates
...
Some of these have been stabilized while others were likely no longer
used at all.
2025-02-22 14:38:33 +01:00
bjorn3
b1743d800c
Remove all dup impls that only accept empty paths
...
Those dups are handled by the kernel already by creating a new reference
to the underlying file descriptor.
2024-12-27 15:13:42 +01:00
bjorn3
2c042f8c98
Fix a ton of unused import warnings
2024-12-26 16:05:04 +01:00
bjorn3
8eabb75524
Update redox-scheme to 0.3.0
2024-12-26 15:50:30 +01:00
Andrey Turkin
18b688a49c
Partial risc-v support
2024-10-17 20:07:17 +03:00
Andrey Turkin
09b5033fbd
Wholesale cargo fmt to get CI back to green
2024-10-17 20:07:05 +03:00
Kamil Koczurek
d2c82add9d
Move Io/Pio/Mmio from redox_syscall to common
...
* Fix Mmio repr from transparent to packed.
* Rename Mmio::from to Mmio::new.
* Remove dead imports around affected code.
* Minor formatting.
2024-09-30 13:01:36 +02:00
bjorn3
7935ed0248
Deduplicate setup_logging between all drivers
...
This will make it easier to change the way logging is done for all
drivers. This also fixes the log category for a couple of drivers as
well as makes failing to set the logger a fatal error. Only when a
logger is already set is it impossible to set another logger.
2024-07-24 22:00:40 +02:00
bjorn3
fd8dabd1bc
Use the new scheme format in most places
...
The graphics subsystem still uses the old format as orbital manually
parses the fpath result.
2024-07-11 21:14:45 +02:00
bjorn3
23ac696491
pcid: Add PciFunctionHandle::map_bar method
...
This will enable the pcid driver interface to safely map the MSI-X table
in the future without having to worry about a BAR being mapped twice.
2024-06-15 15:47:48 +02:00
bjorn3
a3b957c2e5
pcid: Fetch config in PciFunctionHandle::connect_default()
2024-06-15 15:16:09 +02:00
bjorn3
fdb9ea816b
pcid: Rename PcidServerHandle to PciFunctionHandle
2024-06-15 15:05:59 +02:00
bjorn3
3299a070f2
pcid: Also return bar size from physmap_mem and use it in two more drivers
2024-06-15 14:01:06 +02:00
4lDO2
05ec7464ea
Update syscall.
2024-06-14 14:22:01 +02:00
4lDO2
2b146f8778
Properly pass POSITIONED new fd flag.
2024-06-14 13:51:13 +02:00
4lDO2
0058d7c948
Positioned IO.
2024-06-14 13:51:13 +02:00
4lDO2
9dee2c12ae
Migrate nvmed to schemev2.
2024-06-14 13:51:13 +02:00
bjorn3
4f583b1cfb
Store decoded MSI info instead of full capability in PciFeatureInfo
2024-06-11 16:48:43 +02:00
bjorn3
df66633111
pcid: Store decoded MsixInfo instead of full capability in PciFeatureInfo
2024-06-10 21:00:07 +02:00
bjorn3
7c112c34dd
pcid: Remove some unused methods on MsixCapability
2024-06-10 19:44:12 +02:00
bjorn3
588bbfe6a3
pcid: Stop returning feature enable status from fetch_all_features
...
For the same reason the feature_status method was removed.
2024-06-10 19:44:12 +02:00
Jeremy Soller
ccfe5ece20
Update feature required for aarch64 yield
2024-05-11 14:16:08 -06:00
Jacob Lorentzon
ff956fd3bb
Switch to libredox where applicable (fixed)
2024-03-18 22:09:25 +00:00
Jeremy Soller
98078650f8
Revert "Switch to libredox where applicable."
...
This reverts commit 2e7dbf1cc1 .
2024-03-18 15:00:52 -06:00
Jeremy Soller
ae3129e582
Merge branch 'libredox' into 'master'
...
Switch to libredox where applicable.
See merge request redox-os/drivers!149
2024-03-18 20:37:19 +00:00
4lDO2
2e7dbf1cc1
Switch to libredox where applicable.
2024-03-18 19:23:05 +01:00
bjorn3
5286f45311
Fix potential race in nvmed
...
Previously it was possible to submit commands before the event queue is
created by the irq handler thread.
2024-03-17 21:03:23 +01:00
bjorn3
20bc47f228
Move DiskWrapper into a new driver-block crate
...
Also merge block-io-wrapper into this crate.
2024-03-06 21:09:38 +01:00
bjorn3
c75b560def
Move all storage drivers to storage/
2024-02-29 15:41:05 +01:00