NetBSD/sys/dev/ieee1394/TODO
jmc 1db8069fe5 First pass (checkpoint checkin) for firewire scsi code.
There are a number of issues here for anyone trying to use this today:

1. On my test drive the command engine on the drive seems to stall after the
   inquire is done. So the mode sense times out for a long time before
   aborting. This obviously needs to be tracked down and fixed.

   However it does do a proper inquire:

scsibus0 at sbpscsi0: 1 target, 1 lun per target
sd0 at scsibus0 target 0 lun 0: <Maxtor, 1394 storage, 60> disk fixed

2. This code is quite ugly in places as debug code was added to test things.
   Definitly needs cleanup/documention in places where it's using command
   structures. The structure for alloc'ing orbs, running them through the
   command engine and getting state back is mostly set but implementation needs
   an overhaul in places.

3. For testing I use the following config options:

fwohci* at cardbus? dev ? function ?    # IEEE1394 Controller
fw*     at fwbus?
options FW_DEBUG
options FWNODE_DEBUG
options P1212_DEBUG
options SBP2_DEBUG
options SBPSCSI_DEBUG
fwnode* at fwbus?
sbpscsi* at fwnode?
scsibus* at sbpscsi?
2002-11-22 16:28:54 +00:00

42 lines
1.5 KiB
Plaintext

Rewrite handler_set to allow sub regions, minimums, etc without having to
register 100 callbacks for 100 quad reads.
done - Use handler set (with NULL cb) to create a higher level <bus>_unreg
Move all mbuf code to if_fw.c. Make if_fw use the generic read/write/inreg and
then it can translate the packets into the appropriate mbuf's.
Need a tlabel alloc routine within fwohci and a way to use 64 tlabel's per
node (rather than a global set of 64 as it's used now).
Flesh out the documentation of the high level API in fwohci.c (fwlynx will need
to implement the same thing so this should be more than just comments in
fwohci.c)
done - Move SBP2 routines into their own file.
done - Rewrite ROM parsing/validation. Unroll all recursion, add ref counting,
path elimination, etc.
done - Move rom routines into their own files to allow easier cross usage.
done - Write sub match setup for fwnode/fwscsi so matching devices listed in
the ROM can be done via autoconf.
done - Remove all of the devcap stuff.
SBP2 needs a complete API written up: logins, ORB management/allocation, etc.
done - Add locator detection/usage into fwohci code.
Should do topology maps, speed maps, the various bus managers, etc.
done - change all FW_DEBUG wrapped printf's to DPRINTF macro's
done - ack errors from a TX complete should get passed up to any registered callbacks
Track down issues where multiple hosts plugged into a firewire hub don't
init/see all devices on resets sometimes.
done - Make fwohci detach correctly (for cardbus/etc type interfaces)