Re: Device information for PDAs



On Tue, 2005-03-29 at 15:42 -0500, David Zeuthen wrote:

> > I've seen a fdi file that comes with HAL for Palm PDAs, but I would
> > rather treat that as an example of what properties a PDA device can
> > have, not an example of how it should appear in HAL. So here's what I
> > propose for the PDAs in HAL:
> > 
> > 1) A "pda" capability and category. This should be set for the usb
> > interface of pda devices [2].
> > 2) A "pda.*" namespace with the following possible proprerties:
> >      pda.platform (string, mandatory) - this can be 'PalmOS',
> > 'PocketPC', 'Linux' or 'Symbian' or whatever else existing in this
> > world, indicating to the 3rd-party applications how the device should be
> > treated. Acquiring this information is a matter of knowing what driver
> > is used for the interface [2] under linux (at least that's 'ipaq' for
> > Pocket PCs and 'visor' for Palms and that's about 90%  PDAs in the
> > world) or matching the usb vendor/product id's of the usb-device.
> >      pda.platform.version (string, optional) - even more details about
> > the platform. Examples: '5.0' or '4.1' or whatever else for PalmOS;
> > 'WM2003', 'PocketPC2002', etc. for WindowsMobile devices; 'Series60' or
> > whatever else for Symbian OS; etc.
> >      pda.serial_device  (strlist, optional) - the serial device(s) that
> > can be used to talk to the pda. All of the PDAs I know of are usb-serial
> > devices, however some of them (PalmOS devices for instance) have 2
> > serial ports, however only one is used for the connection, the other is
> > exported for some different use [2]. The one used for serial link could
> > be listed as such so that the application that establishes a connection
> > knows what serial port to talk thru.
> 
> I think this sounds good; propose to just put the 'pda' capability and
> assorted properties on the serial interface we want to use, e.g. here
> 
> - USB Device
>   - USB Interface
>    - Serial Port 0
>    - Serial Port 1 <-- put 'pda' cap and properties here (port zero
>                        is the generic port)
> 
> The reason I think this is a good idea is
> 
>  o This is what we do for e.g. storage devices, e.g. we don't tag
>    the USB storage device or interface with 'storage' or 'block'
> 
>  o If you unbind the serial driver from the USB device the 'pda'
>    capability and properties disappear as they should
> 
>  o We can match the hotsync port [A]

The issue with two ports only makes sense on PalmOS PDAs. IIRC, one of
them is for HotSync while the other can be used for PPP communication
between the PDA and the PC. Moreover, the Serial Port 0 is used as
HotSync on certain models (some Sony Clies), while the Port 1 is used on
all the others. One more issue are the weird Microsoft Magneto aka
Pocket PC 2005 devices that will appear later this year. Those beasts
are going to have a serial device accompanied by a mass-storage
interface. All the PDA-specific communication will go via the serial
device while the mass-storage interface will be used to mount their
filesystem as a storage card or whatever.

Taking this into account, I suppose that we'd better stick with USB
interface or even the usb device as the device that represents the PDA
and making "pda.serial_device" a strlist, storing both ports in case of
Palm device, however adding some "pda.palm.hotsync_port" and
"pda.palm.raw_port" to distinguish between the two. Or, we can even
treat the port as a platform-specific thing making it
"pda.palm.hotsync_device" and "pda.palm.raw_device" for PalmOS PDAs and
"pda.pocketpc.serial_device" for Windows CE PDAs.

> So, Andrei, does this approach work for you? Would it work for the iPaq
> and Pocket PC's too? If so, would you be interested in extending the
> 10-usb-pda.fdi file?

Sure, I would gladly take care of the fdi file for PDAs.

cheers,
Andrei




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]