$NetBSD: IMPLEMENTATION,v 1.4 2001/05/13 05:01:42 jmc Exp $ At time point in time, there are 3 controller drivers planned: fwochi IEEE 1394 OHCI Controller (PCI & CardBus) fwlynx TI TSB12LV21 (found B&W G3s) fwsony Sony CXD1947A (found on Sony Vaio laptops) (Though as of this time, Sony has declined to release documentation about the CXD1947A). The device heirarchy will look like (using fwohci as the example): # # The controller driver. Handles the device-specific 1394 functions. # fwohci* at pci? dev ? function ? # For each remote 1394 device on the 1394 bus, there will be a corresponding # fwnode. If a 1394 device offers any supported services, they will be # a child of corresponding fwnode. A particular fwnode can be tied to a # specific device by specifing its nodeid as its identifier (XXX this # is a 64 bit quantity and locators used by config must be 32 bit integers). # fwnode0 at fwbus? idhi 0x003065ff idlo 0xfedc46c0 fwnode1 at fwbus? idhi 0x0060e202 idlo 0x0000157e fwnode2 at fwbus? idhi 0x00110600 idlo 0x00003169 fwnode* at fwbus? idhi ? idlo ? # # An ip capable interface can be added to the local bus as a service to offer # on the bus. (the code will only attach to the local bridge so 2 boxes plugged # into each other would only each have fw0, but would see there's another one # out there when they probe the config rom's) # fw* at fwbus? # # NOTE: All fwbus's, fw's, fwnode's derive their device struct from an # ieee1394_softc which allows the various layers to have a standard way to # look at values in their children nodes. (updating nodeid's, etc) # # One of the services that a node might offer is access to SCSI devices via # SBP-2. As decsribed above, this mean a scsibus is a child of fwnode at some # point. (Making it a direct child is bad since that drags in the whole scsi # code base even if all a person wants is an fwnode and camera support) # fwscsi* at fwnode? scsibus* at fwscsi? Note that with advent of highly mobile storage devices, the need for signatures or other mechanisms to identity disks indepentend of their localtion in the device hierarchy is sorely needed. fwohci0 at pci1 dev 12 function 0: NEC uPD72870 IEEE 1394 OHCI Host Controller (rev. 0x01) fwohci0: interrupting at isa irq 15 fwohci0: OHCI 1.0 fw0 at fwohci0: Id 00:d0:f5:20:00:00:5e:84, 400Mb/s, 1024 byte packets max fw0: isochronous channels: 16 transmit, 16 receive fwnode0 at fwohci0: Id xx:xx:xx:xx:xx:xx:xx:xx