Re: Device Manager Draft (incomplete)
"Axel Dörfler" <[email protected]> Wed, 09 Apr 2008 00:04:10 +0200 CEST
| Newsgroups | gmane.os.openbeos.kernel.devel |
|---|---|
| Message-ID | <38309145062-BeMail@zon> |
"Salvatore Benedetto" <[email protected]> wrote: > What I am more personally interesting in is to understand how > subsystem are supposed to talk to each other. Especialy because of > usb_scsi thing. > > Beside describing the API, could you try and post something about how > things fits all together? Remember about the bus factor! :-D That was also part of the piece of paper, and I didn't get as far again yet :-) In short, though, the drivers will talk to each other via the device_nodes. For example, the PCI bus manager will have a device_node of its own, and then another device_node for each PCI device. A device_node consists of device attributes and a node specific API. In the example for USB-SCSI the relevant part of the device_node tree would look like more or less like this: device root | PCI bus manager + PCI device (ie. the bus, will provide functions like get_pci_config(), read8(), ...) | USB bus (ie. EHCI, ...) | USB bus manager + USB device (ie. the mass-storage device) | USB SCSI bus | SCSI bus manager + SCSI disk | SCSI cd/disk driver I used "+" to mark the private connection between the bus manager and the children it publishes. HTH, Bye, Axel. ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Register now and save $200. Hurry, offer ends at 11:59 p.m., Monday, April 7! Use priority code J8TLD2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone