Commit Graph

2725 Commits

Author SHA1 Message Date
4lDO2 cff3cf0d28 Add basic logic to usbscsid and support alternate interface. 2020-02-10 11:23:18 +01:00
4lDO2 62915fadb1 Implement stream transfers.
They only use one stream though, which defeats the purpose of streams,
but at least transfers now work.
2020-02-09 22:35:56 +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
Jeremy Soller e0ca9648ea Merge branch 'bugfix/fix-unnamed-sockets' into 'master'
Fix unnamed sockets

See merge request redox-os/ipcd!3
2020-02-08 14:01:03 +00:00
4lDO2 3fd4bc4b3b Add functions for the HID-specific requests. 2020-02-08 12:28:17 +01:00
Tiago Lam ea4247c0b5 chan: Support turning unnamed into named sockets.
Previous approach, reverted in commit c7cf2ca, would break unnamed
sockets - since it assumed there would always be an interim step were
one would first name an unnamed socket, before "listen" / "connect".

Instead of using the same approach as the "tcp:" scheme in Redox's
netstack, which requires an extra mapping of temporary unnamed sockets,
handle the different use cases in dup(). Thus, if a "buf" is provided
that's not a "connect" or "listen", it must be a new path for turning
the unnamed socket into a named socket and should be handled as such.
2020-02-08 10:29:52 +00:00
Tiago Lam 73570b0926 Revert "chan: Support opening "empty" ChanScheme."
This reverts commit 9526ffa80f.
2020-02-08 10:24:57 +00:00
4lDO2 53ddfbb88e Fix the HID report descriptor parsing. 2020-02-08 11:05:29 +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
Jeremy Soller c7cf2ca0e0 Merge branch 'feature/support-af-unix-sockets' into 'master'
Support AF_UNIX sockets

See merge request redox-os/ipcd!2
2020-02-07 02:18:48 +00:00
4lDO2 1b74f335b0 Add a driver interface accessible to class drivers. 2020-02-06 21:45:44 +01:00
Tiago Lam fad13404d5 chan: Keep path in for new Handle.
While supporting AF_UNIX, once an accept() is called in relibc, in turn,
a dup() is also called with "listen". While processing this ipcd
effectively creates a new handler, losing track of the path of the
previous handler.

However, it is important to keep this path in the newly created Handler
as well, so the socket can be queried later by relibc (when calling
fpath()) and fill in appropriately its sockaddr_un struct.
2020-02-06 08:27:47 +00:00
Tiago Lam 9526ffa80f chan: Support opening "empty" ChanScheme.
Similarly to how the "tcp:" in Redox's netstack supports opening a first
empty scheme, only to later on being dup()'ed and set with an
appropriate path, this follows the same approach - a map of NullFile
structs is kept and initially associated with an id. Next time dup() is
called, the true Handle is created, keeping the same definitions of the
previously created NullFile.

Not that it is important to add support for this in the ipcd to support
AF_UNIX sockets, otherwise the socket() created in relibc won't be
associated with a address / path.
2020-02-06 08:27:47 +00:00
4lDO2 ae0d43c12a Add a framework-ish for USB drivers. 2020-02-03 21:48:35 +01:00
4lDO2 8c158328a3 Add class and vendor device reqs to the API. 2020-02-02 11:31:13 +01:00
4lDO2 d4f1480d1b Add some basic HID descriptor handling. 2020-02-02 10:00:09 +01:00
4lDO2 d66b0c5bd8 Fix the state virtual file. 2020-02-01 23:28:19 +01:00
4lDO2 c4a393e296 Correctly index the dev ctx arr for slot states. 2020-02-01 22:02:20 +01:00
4lDO2 295aa02e5d Support reading the slot state. 2020-02-01 18:20:24 +01:00
4lDO2 cbd9d83b69 SUPPORT CONFIGURE_ENDPOINTS! 2020-02-01 15:05:14 +01:00
4lDO2 93d99c4f4f Add a skeleton for endpoint enabling (in the driver API). 2020-02-01 15:04:56 +01:00
Jeremy Soller 13e472b6eb Implement VTIME 2020-01-28 11:05:46 -07:00
Jeremy Soller ce1d87e2aa Fix resources 2020-01-28 10:57:23 -07:00
Jeremy Soller b6042e673c Implement OPOST and ONLCR 2020-01-26 19:54:18 -07:00
Jeremy Soller f32f5c735d Merge branch 'kalfar' into 'master'
Fix randd TODOs for CSPRNG and allowing entropy write

See merge request redox-os/randd!10
2020-01-20 23:55:19 +00:00
Kalfar 276270fef5 Remove /dev/random TODO comment and add explanation from https://www.2uo.de/myths-about-urandom/ 2020-01-20 21:32:20 +00:00
4lDO2 dd4dd952d0 Improve (subjective...) the descriptor fetching. 2020-01-19 11:37:05 +11:00
4lDO2 8b375518d9 Fix the descriptor parsing by somewhat. 2020-01-19 11:37:05 +11:00
4lDO2 faa29b1854 Add a really basic interface to xhcid. 2020-01-19 11:37:05 +11:00
Jeremy Soller e191e502e1 Merge branch 'master' into 'master'
Add partitioning support to nvmed

See merge request redox-os/drivers!56
2020-01-14 13:34:24 +00:00
Kalfar 0eb534417e Change PRNG to be ChaCha20 PRNG and seeding with 512 bits of entropy from rdrand (if available)
Add permissions to scheme operations
Add ability to change owner/group/mode
Add ability to write entropy to the PRNG scheme
Add streaming of ChaCha20 PRNG output based on file open operation.
Add not seeded message if rdrand not present on CPU
Add extra TODOs for new future work
2020-01-14 05:41:39 +00:00
4lDO2 5807909ed1 Add partitioning support to nvmed. 2020-01-09 10:38:31 +11:00
4lDO2 60f05af555 Move the block-io-to-unaligned-io wrapper to its own crate. 2020-01-08 22:34:28 +11:00
Jeremy Soller 8bd1176cda Merge branch 'master' into 'master'
Add partition support to ahcid

See merge request redox-os/drivers!55
2020-01-05 01:40:27 +00:00
4lDO2 5848f668a6 Don't fail when the blocksize couldn't be retrieved.
This is required for ahcid to work with make qemu_efi.
2020-01-05 12:17:47 +11:00
4lDO2 2a7216c342 It (partition support) works! 2020-01-05 10:43:07 +11:00
4lDO2 119f7a5595 Add partition support for ahcid (untested). 2020-01-04 19:35:16 +11:00
Jeremy Soller 01f30577c1 Update smoltcp 2019-11-29 18:54:09 -07:00
Jeremy Soller 43e8747f0c Update dependencies 2019-10-19 20:56:31 -06:00
Jeremy Soller ac5da3935b Update dependencies 2019-10-19 20:37:35 -06:00
Jeremy Soller 4a32dfea15 Update dependencies 2019-10-19 20:27:36 -06:00
Jeremy Soller f264f99ddd Merge branch 'patch-1' into 'master'
Update README.md to remove broken link.

Closes #1

See merge request redox-os/ipcd!1
2019-10-06 23:45:36 +00:00
Coleman McFarland 3ff2d28a92 Update README.md to remove broken link.
Opting to just remove the link altogether to fix #1
2019-09-22 13:46:46 +00:00
Jeremy Soller 084587ed02 Add TODO to address spurious interrupts 2019-09-11 22:03:34 -06:00
Jeremy Soller c7f02e5e21 rtl8168d: fix calculation of next read size 2019-09-11 21:03:07 -06:00
Jeremy Soller 7f95962fa2 rtl8168d: match 8169 device and add documentation 2019-09-11 20:35:09 -06:00
Jeremy Soller 283ff736c6 Make separate config for xhcid 2019-09-11 20:09:13 -06:00
Jeremy Soller a38a20984e Basic implementation of NVMe IRQ handler 2019-09-05 20:37:20 -06:00