HAL 0.1 release
Bryan W. Headley
bwheadley at earthlink.net
Sat Oct 11 01:06:17 EEST 2003
David Zeuthen wrote:
> On Fri, 2003-10-10 at 22:13, Bryan W. Headley wrote:
>>On the other hand, let's consider my multi-function printer: it's a
>>printer, fax, copier, scanner, AND it has a slot to plug in those camera
>>memory cards. (And yes, it does let me mount the cards from there,
>>although the intent was more to have a 'camera printer')
>>So what you are looking at is this:
>><interface_point bus="USB" path="2-2:1.0">
>> <device type="Printer">
>> <printer-capacities> ... </printer-capacities>
>> <device type="Scanner">
>> <scanner-capacities> ... </scanner-capacities>
>> <!-- ... -->
> USB device with multiple interfaces, yes.. I thought the only example
> was USB speakers (audio and HID). So basically, I suspect that the
> device info file would assign (please shoot this down if it is not
> efficient enough).
Keyboards with built in mice & joysticks...
> Capability = Printer, Modem, Copier, Scanner, Storage
Are you describing that grayish box as a single entity. Then yes, it has
Capability = Printer, Scanner, etc.
If you are unconcerned that all those hardware capabilities are
contained in a single grayish box, or a single USB endpoint, then it's 5
entries, each with one capability (of equal importance to one another)
> The thing is really that HAL doesn't need to care. No matter what, you
> will still need use a ''capability'' specific library to do the hard
> magic (and as Joe points out CUPS would do this).
Well, it's a question of where the single-source information about
hardware & available attributes/capacities are kept. Looking at the
current situation, CUPS seems to know about printers. XFree seems to
know about keyboards, mice, video cards. Neither of them know anything,
but someone TOLD THEM what they have, and they keep it in a config file
Mind you, people like RedHat make little hardware-recognizing programs
to write out those config files, and that confuses us to the abilities
CUPS and XFree seem to have, and the abilities they truly have. It also
blurs the line over what capacities they should have.
> ps. Does this device exist? Does it show up as a single USB device with
> multiple interfaces? My USB keyboard with hub shows up as two devices
> actually. Either way, you make a good point!
It's an HP OfficeJet PSC-2200. It looks like a hub with several things
hardwired into it. The kernel recognizes it as several devices when
plugged in, including usblp and usbscanner.
>>1. The responsibility to broadcast availability rests with each element
> Depends - your device may be a single object with multiple capabilities.
> Or multiple devices with single capabilities; that's really vendor
I think we agree: if I have one device with an array of 6 capacities,
and you have a device with an array of one capacity, we both agree with
our devices should announce each of their capacities.
If I were the writer for a multi-"Capacity" device, then I know it's my
responsibility to announce each Capacity individually. As in, "here's a
camera; here is a memory card reader"
>>2. We're not overly concerned that all these devices come from the same
>>interface point. Or, physically, from the same box. Maybe the OS is,
>>especially if you try to copy while scanning, but that is its issue.
> So we could show each USB interface as a single device?
No. You show it as being as many Capacities as that endpoint says it
has. A card reader, printer, refridgerator and a dangerous poker player...
Lovely little btree, huh?
____ .:. ____
Bryan W. Headley - bwheadley at earthlink.net
More information about the xdg