38 lines
1.9 KiB
Plaintext
38 lines
1.9 KiB
Plaintext
TODOs
|
|
-----
|
|
1. Implement retries for RCODE_BUSY, RCODE_NO_ACK and RCODE_SEND_ERROR
|
|
- I/O is handled asynchronously which presents some issues when error
|
|
conditions occur.
|
|
2. Implement _robust_ console on top of this. The existing prototype console
|
|
driver is not ready for the big leagues yet.
|
|
3. Expose means of controlling attach/detach of peers via sysfs. Include
|
|
GUID-to-port matching/whitelist/blacklist.
|
|
|
|
-- Issues with firewire stack --
|
|
1. This driver uses the same unregistered vendor id that the firewire core does
|
|
(0xd00d1e). Perhaps this could be exposed as a define in
|
|
firewire-constants.h?
|
|
2. MAX_ASYNC_PAYLOAD needs to be publicly exposed by core/ohci
|
|
- otherwise how will this driver know the max size of address window to
|
|
open for one packet write?
|
|
3. Maybe device_max_receive() and link_speed_to_max_payload() should be
|
|
taken up by the firewire core?
|
|
4. To avoid dropping rx data while still limiting the maximum buffering,
|
|
the size of the AR context must be known. How to expose this to drivers?
|
|
5. Explore if bigger AR context will reduce RCODE_BUSY responses
|
|
(or auto-grow to certain max size -- but this would require major surgery
|
|
as the current AR is contiguously mapped)
|
|
|
|
-- Issues with TTY core --
|
|
1. Hack for alternate device name scheme
|
|
- because udev no longer allows device renaming, devices should have
|
|
their proper names on creation. This is an issue for creating the
|
|
fwloop<n> device with the fwtty<n> devices because although duplicating
|
|
roughly the same operations as tty_port_register_device() isn't difficult,
|
|
access to the tty_class & tty_fops is restricted in scope.
|
|
|
|
This is currently being worked around in create_loop_device() by
|
|
extracting the tty_class ptr and tty_fops ptr from the previously created
|
|
tty devices. Perhaps an add'l api can be added -- eg.,
|
|
tty_{port_}register_named_device().
|