[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[coldsync-hackers] Some data on Coldsync for the Clie
Just a couple of notes on what I did today: I finally hooked up USB
Snoopy and had a look at the logs.
The negotiation is fairly short, shorter than what Coldsync does for
the Handspring. (The Handspring code doesn't work.) In particular,
there seems to be only a single bulk endpoint pair, and I don't see
any vendor-specific request types around.
I've done some futzing around in PConnection_usb.c, commented out the
Handspring stuff, and tried to do similar things to the log.
Unfortunately, the very first read on the bulk endpoint hangs for a
while and then fails with an Input/output error. If anyone has any
advice on how to proceed, I'd be more than happy to try more stuff.
I'm also having some trouble reading the Snoopy logs: In particular
the log entry for URB_FUNCTION_SELECT_CONFIGURATION reports back the
info for the pipes. From the USB docs, I'm under the impression that
getting this information would require doing a couple of
USB_GET_ENDPOINT_DESC calls---which I don't see.
If anyone cares, I've attached the initial portion up until the first
bulk transfer. It's all bulk after that.
--
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla
00000000 0.00000000 UsbSnoop 0.12 - Entering DriverEntry: DriverObject DAA83458
00000001 0.00001280 UsbSnoop - Running under Windows 98
00000002 0.00004080 UsbSnoop - Entering AddDevice: DriverObject DAA83458, pdo C14C63D8
00000003 0.46258240 UsbSnoop - IRP_MJ_PNP (IRP_MN_FILTER_RESOURCE_REQUIREMENTS)
00000004 0.46269280 UsbSnoop - IRP_MJ_PNP (IRP_MN_START_DEVICE)
00000005 0.46271680 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000006 0.46272720
00000007 0.46273120 >>>>>>> URB 1 going down...
00000008 0.46274480 -- URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE:
00000009 0.46275680 TransferBufferLength = 00000012
00000010 0.46276800 TransferBuffer = daa93250
00000011 0.46277920 TransferBufferMDL = 00000000
00000012 0.46278960 Index = 00
00000013 0.46280400 DescriptorType = 01 (USB_DEVICE_DESCRIPTOR_TYPE)
00000014 0.46281360 LanguageId = 0000
00000015 0.46675280
00000016 0.46675680 <<<<<<< URB 1 coming back...
00000017 0.46676960 -- URB_FUNCTION_CONTROL_TRANSFER:
00000018 0.46678160 PipeHandle = daa5e1fc
00000019 0.46680080 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
00000020 0.46681280 TransferBufferLength = 00000012
00000021 0.46682400 TransferBuffer = daa93250
00000022 0.46683520 TransferBufferMDL = daa7c240
00000023 0.46684240
00000024 0.46684640 0000:
00000025 0.46691520 12 01 10 01 ff 00 00 10 4c 05 38 00 00 11 00 00
00000026 0.46691920 0010:
00000027 0.46693120 00 01
00000028 0.46694160 UrbLink = 00000000
00000029 0.46698560 SetupPacket : 80 06 00 01 00 00 12 00
00000030 0.46703840 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000031 0.46704880
00000032 0.46705200 >>>>>>> URB 2 going down...
00000033 0.46706480 -- URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE:
00000034 0.46707600 TransferBufferLength = 00000209
00000035 0.46708720 TransferBuffer = daa95b20
00000036 0.46709760 TransferBufferMDL = 00000000
00000037 0.46710800 Index = 00
00000038 0.46712160 DescriptorType = 02 (USB_CONFIGURATION_DESCRIPTOR_TYPE)
00000039 0.46713200 LanguageId = 0000
00000040 0.47341440
00000041 0.47341840 <<<<<<< URB 2 coming back...
00000042 0.47342960 -- URB_FUNCTION_CONTROL_TRANSFER:
00000043 0.47344080 PipeHandle = daa5e1fc
00000044 0.47345920 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
00000045 0.47346960 TransferBufferLength = 00000020
00000046 0.47348080 TransferBuffer = daa95b20
00000047 0.47349280 TransferBufferMDL = daa7c240
00000048 0.47350000
00000049 0.47350320 0000:
00000050 0.47357040 09 02 20 00 01 01 00 c0 03 09 04 00 00 02 ff 00
00000051 0.47357440 0010:
00000052 0.47363920 00 00 07 05 82 02 40 00 00 07 05 02 02 40 00 00
00000053 0.47365040 UrbLink = 00000000
00000054 0.47369360 SetupPacket : 80 06 00 02 00 00 09 02
00000055 0.47374080 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000056 0.47375120
00000057 0.47375520 >>>>>>> URB 3 going down...
00000058 0.47376720 -- URB_FUNCTION_SELECT_CONFIGURATION:
00000059 0.47378160 ConfigurationDescriptor = 0xdaa95b20 (configure)
00000060 0.47379600 ConfigurationDescriptor : bLength = 0x09
00000061 0.47381040 ConfigurationDescriptor : bDescriptorType = 0x02
00000062 0.47382560 ConfigurationDescriptor : wTotalLength = 0x0020
00000063 0.47384000 ConfigurationDescriptor : bNumInterfaces = 0x01
00000064 0.47385440 ConfigurationDescriptor : bConfigurationValue = 0x01
00000065 0.47386880 ConfigurationDescriptor : iConfiguration = 0x00
00000066 0.47388320 ConfigurationDescriptor : bmAttributes = 0xc0
00000067 0.47389760 ConfigurationDescriptor : MaxPower = 0x03
00000068 0.47390880 ConfigurationHandle = 0x00000003
00000069 0.47392240 Interface[0]: Length = 0x00000038
00000070 0.47393520 Interface[0]: InterfaceNumber = 0x00
00000071 0.47394800 Interface[0]: AlternateSetting = 0x00
00000072 0.47744800
00000073 0.47745200 <<<<<<< URB 3 coming back...
00000074 0.47746560 -- URB_FUNCTION_SELECT_CONFIGURATION:
00000075 0.47748160 ConfigurationDescriptor = 0xdaa95b20 (configure)
00000076 0.47749600 ConfigurationDescriptor : bLength = 0x09
00000077 0.47751040 ConfigurationDescriptor : bDescriptorType = 0x02
00000078 0.47752560 ConfigurationDescriptor : wTotalLength = 0x0020
00000079 0.47754000 ConfigurationDescriptor : bNumInterfaces = 0x01
00000080 0.47755440 ConfigurationDescriptor : bConfigurationValue = 0x01
00000081 0.47756880 ConfigurationDescriptor : iConfiguration = 0x00
00000082 0.47758320 ConfigurationDescriptor : bmAttributes = 0xc0
00000083 0.47759840 ConfigurationDescriptor : MaxPower = 0x03
00000084 0.47761200 ConfigurationHandle = 0xc29f6600
00000085 0.47762560 Interface[0]: Length = 0x00000038
00000086 0.47763840 Interface[0]: InterfaceNumber = 0x00
00000087 0.47765120 Interface[0]: AlternateSetting = 0x00
00000088 0.47766400 Interface[0]: Class = 0xff
00000089 0.47767680 Interface[0]: SubClass = 0x00
00000090 0.47768960 Interface[0]: Protocol = 0x00
00000091 0.47770320 Interface[0]: InterfaceHandle = 0xdaa931b0
00000092 0.47771680 Interface[0]: NumberOfPipes = 0x00000002
00000093 0.47773200 Interface[0]: Pipes[0] : MaximumPacketSize = 0x0040
00000094 0.47774720 Interface[0]: Pipes[0] : EndpointAddress = 0x82
00000095 0.47776240 Interface[0]: Pipes[0] : Interval = 0x00
00000096 0.47778000 Interface[0]: Pipes[0] : PipeType = 0x02 (UsbdPipeTypeBulk)
00000097 0.47779680 Interface[0]: Pipes[0] : PipeHandle = 0xdaa931c8
00000098 0.47781280 Interface[0]: Pipes[0] : MaxTransferSize = 0x00010000
00000099 0.47782720 Interface[0]: Pipes[0] : PipeFlags = 0x00
00000100 0.47784240 Interface[0]: Pipes[1] : MaximumPacketSize = 0x0040
00000101 0.47785760 Interface[0]: Pipes[1] : EndpointAddress = 0x02
00000102 0.47787200 Interface[0]: Pipes[1] : Interval = 0x00
00000103 0.47788880 Interface[0]: Pipes[1] : PipeType = 0x02 (UsbdPipeTypeBulk)
00000104 0.47790560 Interface[0]: Pipes[1] : PipeHandle = 0xdaa931dc
00000105 0.47792160 Interface[0]: Pipes[1] : MaxTransferSize = 0x00010000
00000106 0.47793600 Interface[0]: Pipes[1] : PipeFlags = 0x00
00000107 0.47796640 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000108 0.47797680
00000109 0.47798080 >>>>>>> URB 4 going down...
00000110 0.47799200 -- URB_FUNCTION_GET_CONFIGURATION:
00000111 0.47800320 TransferBufferLength = 00000001
00000112 0.47801520 TransferBuffer = daa95e50
00000113 0.47802560 TransferBufferMDL = 00000000
00000114 0.47803680 UrbLink = 00000000
00000115 0.48107360
00000116 0.48108320 <<<<<<< URB 4 coming back...
00000117 0.48110080 -- URB_FUNCTION_CONTROL_TRANSFER:
00000118 0.48111920 PipeHandle = daa5e1fc
00000119 0.48114480 TransferFlags = 00000403 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
00000120 0.48116240 TransferBufferLength = 00000001
00000121 0.48118080 TransferBuffer = daa95e50
00000122 0.48119840 TransferBufferMDL = daa7c240
00000123 0.48121120
00000124 0.48122080 0000:
00000125 0.48123600 01
00000126 0.48125360 UrbLink = 00000000
00000127 0.48130480 SetupPacket : 80 08 00 00 00 00 01 00
00000128 0.48140880 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000129 0.48141920
00000130 0.48142320 >>>>>>> URB 5 going down...
00000131 0.48143360 -- URB_FUNCTION_GET_INTERFACE:
00000132 0.48144480 TransferBufferLength = 00000001
00000133 0.48145680 TransferBuffer = daa95e50
00000134 0.48146720 TransferBufferMDL = 00000000
00000135 0.48147760 Interface = 00
00000136 0.48148800 UrbLink = 00000000
00000137 0.48486800
00000138 0.48487200 <<<<<<< URB 5 coming back...
00000139 0.48488400 -- URB_FUNCTION_CONTROL_TRANSFER:
00000140 0.48489520 PipeHandle = daa5e1fc
00000141 0.48491360 TransferFlags = 00000403 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
00000142 0.48492560 TransferBufferLength = 00000001
00000143 0.48493680 TransferBuffer = daa95e50
00000144 0.48494800 TransferBufferMDL = daa7c240
00000145 0.48495520
00000146 0.48495840 0000:
00000147 0.48496720 00
00000148 0.48497760 UrbLink = 00000000
00000149 0.48502160 SetupPacket : 81 0a 00 00 00 00 01 00
00000150 0.48602080 UsbSnoop - IRP_MJ_PNP (IRP_MN_QUERY_CAPABILITIES)
00000151 0.48610160 UsbSnoop - IRP_MJ_PNP (IRP_MN_QUERY_PNP_DEVICE_STATE)
00000152 1.16353120 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000153 1.16354400
00000154 1.16354800 >>>>>>> URB 6 going down...
00000155 1.16356240 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER:
00000156 1.16357440 PipeHandle = daa931c8
00000157 1.16359280 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
00000158 1.16360480 TransferBufferLength = 00000040
00000159 1.16361600 TransferBuffer = daa94249
00000160 1.16362720 TransferBufferMDL = 00000000
00000161 1.16363760 UrbLink = 00000000
00000162 1.16539600
00000163 1.16540480 <<<<<<< URB 6 coming back...
00000164 1.16542480 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER:
00000165 1.16544320 PipeHandle = daa931c8
00000166 1.16546720 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
00000167 1.16548480 TransferBufferLength = 0000000c
00000168 1.16550000 TransferBuffer = daa94249
00000169 1.16551680 TransferBufferMDL = daa9aa20
00000170 1.16552960
00000171 1.16553840 0000:
00000172 1.16559280 be ef ed 03 03 03 00 00 bf 62 33 a2
00000173 1.16560880 UrbLink = 00000000
00000174 1.19211200 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB
00000175 1.19212400