CE5.0 VIA VT6212 Driver Problem

From: MKossiek (matthias.kossiek_at_inosoft.com)
Date: 11/26/04


Date: Fri, 26 Nov 2004 14:47:17 +0100

Hi,
has anybody experience with the VIA VT6212 USB Chip?
We are developing a CE5.0 Image with this USB Chip. I included the ehci and
uhci USB host drivers and keyboard / mouse HID. EHCI and UHCI dlls are
loaded at boot. Connecting a USB mouse or keyboard seems to be ok ( from
Debug output ) but the mouse pointer is jumping uncontrollable around.
Inputs from Keyboard make funny effects: For example pressing the "windows
key" once opens "taskbar->start" and then closes it.. opens it, closes
it....

I tried the original VIA EHCI driver for CE4.2 but it throws exceptions. I
think its not compatible with Ce5.0.

Any ideas?

Debug output from Mouse:

 956649 PID:c3f91092 TID:3d37fbe 0x83d37c04: CHub(Root tier
0)::HubStatusChangeThread - port 4, change = 0x0001, status = 0x0500
 956915 PID:c3f91092 TID:3d6aaa6 0x83db262c: !!!Warning!!! Setting
resume/suspend/reset bits of USBCMD
 957509 PID:c3f91092 TID:3d6aaa6 0x83db262c: CHub(Root tier 0)::
ResumeNotification(0) !
 957510 PID:c3f91092 TID:3d6aaa6 0x83db262c: CHub(Root tier 0)::
ResumeNotification(0) !
 957612 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::HubStatusChangeThread - port 2, change = 0x0001, status = 0x0301
 957714 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::HubStatusChangeThread - device attached on port 2
 957715 PID:c3f91092 TID:3d539ae 0x83d53800: +CHub(Root tier
0)::AttachDevice - port = 2, fIsLowSpeed = 1
 957716 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_OPENING_ENDPOINT0_PIPE,
failures = 0
 957717 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_USING_ADDRESS0, failures =
0
 957718 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_RESET_AND_ENABLE_PORT,
failures = 0
 957781 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_DEVICE_DESCRIPTOR_TEST, failures = 0
 957794 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_SCHEDULING_SET_ADDRESS,
failures = 0
 958818 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_LEAVE_ADDRESS0, failures =
0
 958830 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_INITIAL_DEVICE_DESCRIPTOR, failures = 0
 959842 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_DEVICE_DESCRIPTOR, failures = 0
 960867 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SETUP_CONFIGURATION_DESCRIPTOR_ARRAY, failures = 0
 960868 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_INITIAL_CONFIG_DESCRIPTOR, failures = 0
 961891 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_CONFIG_DESCRIPTOR, failures = 0
 962915 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_DETERMINE_CONFIG_TO_CHOOSE,
failures = 0
 962916 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - Select Configuration 0 on
DEVICE_CONFIG_STATUS_DETERMINE_CONFIG_TO_CHOOSE step
 962918 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_SCHEDULING_SET_CONFIG,
failures = 0
 963939 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_CREATE_NEW_FUNCTION,
failures = 0
 963941 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_INSERT_NEW_DEVICE_INTO_UPSTREAM_HUB_PORT_ARRAY,
failures = 0
 963942 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SIGNAL_NEW_DEVICE_ENTER_OPERATIONAL_STATE, failures = 0
 963950 PID:c3f91092 TID:3d539ae 0x83d53800: >>> Loading module hidparse.dll
at address 0x03790000-0x0379F000 (RW data at 0x01F74000-0x01F74474)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\MICROBOX50\RELDIR\INO_CEPC_X86_DEBUG\HIDPARSE.DLL'
 963966 PID:c3f91092 TID:3d539ae 0x83d53800: >>> Loading module usbhid.dll
at address 0x03800000-0x03812000 (RW data at 0x01F80000-0x01F80540)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\MICROBOX50\RELDIR\INO_CEPC_X86_DEBUG\USBHID.DLL'
 964080 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\USB\ClientDrivers\Hid\Instance\Prefix) returned 2
 964082 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\USB\ClientDrivers\Hid\Instance\BusPrefix) returned 2
 964083 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\USB\ClientDrivers\Hid\Hid_Class\BusPrefix) returned
2
 964086 PID:c3f91092 TID:3d539ae 0x83d53800: +USBD:OpenPipe, EP: 0x81,
MaxPkt: 4, Type: Interrupt
 964087 PID:c3f91092 TID:3d539ae 0x83d53800: CInterruptPipe::OpenPipe -
setting the poll interval to 8 ms instead of 10 ms
 964088 PID:c3f91092 TID:3d539ae 0x83d53800: -USBD:OpenPipe success, hPipe =
369080
 964091 PID:83c57f86 TID:e3f84e1e 0x83f91e34: [NOTIFY] HandleSystemEvent 7
/ADD HID1:
 965760 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Preparing to
Allocate memory
 965761 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Top Level Collection
1 found
 965762 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Enter Link
Collection
 965763 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Exit Link Collection
 965764 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Collection 1 exit
 965765 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Starting Parsing
Pass
 965766 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Parse Collection 1
 965767 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Main Offset:8
 965768 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Main Offset:b
 965769 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Main Offset:10
 965770 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'X Parse Collection 1
 967810 PID:c3f91092 TID:3d539ae 0x83d53800: >>> Loading module mouhid.dll
at address 0x03760000-0x03765000 (RW data at 0x01F6E000-0x01F6E4A8)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\MICROBOX50\RELDIR\INO_CEPC_X86_DEBUG\MOUHID.DLL'
 975900 PID:c3f91092 TID:3d539ae 0x83d53800: -CHub(Root tier
0)::AttachDevice - port = 2, fIsLowSpeed = 1, address = 1

Debug output from Keyboard:

1026431 PID:c3f91092 TID:3d6aaa6 0x83db262c: !!!Warning!!! Setting
resume/suspend/reset bits of USBCMD
1027025 PID:c3f91092 TID:3d6aaa6 0x83db262c: CHub(Root tier 0)::
ResumeNotification(0) !
1027026 PID:c3f91092 TID:3d6aaa6 0x83db262c: CHub(Root tier 0)::
ResumeNotification(0) !
1027128 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::HubStatusChangeThread - port 2, change = 0x0001, status = 0x0301
1027230 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::HubStatusChangeThread - device attached on port 2
1027231 PID:c3f91092 TID:3d539ae 0x83d53800: +CHub(Root tier
0)::AttachDevice - port = 2, fIsLowSpeed = 1
1027232 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_OPENING_ENDPOINT0_PIPE,
failures = 0
1027233 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_USING_ADDRESS0, failures =
0
1027234 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_RESET_AND_ENABLE_PORT,
failures = 0
1027297 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_DEVICE_DESCRIPTOR_TEST, failures = 0
1027866 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_SCHEDULING_SET_ADDRESS,
failures = 0
1028890 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_LEAVE_ADDRESS0, failures =
0
1028902 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_INITIAL_DEVICE_DESCRIPTOR, failures = 0
1029914 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_DEVICE_DESCRIPTOR, failures = 0
1030938 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SETUP_CONFIGURATION_DESCRIPTOR_ARRAY, failures = 0
1030940 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_INITIAL_CONFIG_DESCRIPTOR, failures = 0
1031963 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SCHEDULING_GET_CONFIG_DESCRIPTOR, failures = 0
1032987 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_DETERMINE_CONFIG_TO_CHOOSE,
failures = 0
1032988 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - Select Configuration 0 on
DEVICE_CONFIG_STATUS_DETERMINE_CONFIG_TO_CHOOSE step
1032989 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_SCHEDULING_SET_CONFIG,
failures = 0
1034010 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status = DEVICE_CONFIG_STATUS_CREATE_NEW_FUNCTION,
failures = 0
1034011 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_INSERT_NEW_DEVICE_INTO_UPSTREAM_HUB_PORT_ARRAY,
failures = 0
1034013 PID:c3f91092 TID:3d539ae 0x83d53800: CHub(Root tier
0)::AttachDevice - status =
DEVICE_CONFIG_STATUS_SIGNAL_NEW_DEVICE_ENTER_OPERATIONAL_STATE, failures = 0
1034021 PID:c3f91092 TID:3d539ae 0x83d53800: >>> Loading module hidparse.dll
at address 0x03790000-0x0379F000 (RW data at 0x01F74000-0x01F74474)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\MICROBOX50\RELDIR\INO_CEPC_X86_DEBUG\HIDPARSE.DLL'
1034035 PID:c3f91092 TID:3d539ae 0x83d53800: >>> Loading module usbhid.dll
at address 0x03800000-0x03812000 (RW data at 0x01F80000-0x01F80540)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\MICROBOX50\RELDIR\INO_CEPC_X86_DEBUG\USBHID.DLL'
1034154 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\USB\ClientDrivers\Hid\Instance\Prefix) returned 2
1034155 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\USB\ClientDrivers\Hid\Instance\BusPrefix) returned 2
1034157 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\USB\ClientDrivers\Hid\Hid_Class\BusPrefix) returned
2
1034159 PID:c3f91092 TID:3d539ae 0x83d53800: +USBD:OpenPipe, EP: 0x81,
MaxPkt: 8, Type: Interrupt
1034160 PID:c3f91092 TID:3d539ae 0x83d53800: CInterruptPipe::OpenPipe -
setting the poll interval to 8 ms instead of 12 ms
1034161 PID:c3f91092 TID:3d539ae 0x83d53800: -USBD:OpenPipe success, hPipe =
36E9B0
1034169 PID:83c57f86 TID:e3f84e1e 0x83f91e34: [NOTIFY] HandleSystemEvent 7
/ADD HID1:
1035864 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Preparing to
Allocate memory
1035865 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Top Level Collection
1 found
1035866 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Collection 1 exit
1035867 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Starting Parsing
Pass
1035868 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Parse Collection 1
1035869 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Main Offset:8
1035870 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Main Offset:10
1035871 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Out offset:8
1035872 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Out offset:b
1035873 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'Main Offset:18
1035874 PID:c3f91092 TID:3d539ae 0x83d53800: HidParse: 'X Parse Collection 1
1036890 PID:c3f91092 TID:3d539ae 0x83d53800: >>> Loading module kbdhid.dll
at address 0x03780000-0x03788000 (RW data at 0x01F72000-0x01F724DC)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\MICROBOX50\RELDIR\INO_CEPC_X86_DEBUG\KBDHID.DLL'
1038838 PID:c3f91092 TID:3d539ae 0x83d53800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\HID\ClientDrivers\Keyboard\BusPrefix) returned 2
1038841 PID:c3f91092 TID:3d539ae 0x83d53800: -CHub(Root tier
0)::AttachDevice - port = 2, fIsLowSpeed = 1, address = 1
1038843 PID:83c57f86 TID:e3f84e1e 0x83f91e34: [NOTIFY] HandleSystemEvent 7
/ADD KBD1:



Relevant Pages

  • USB 2.0 ports not working
    ... For the USB 2.0 ports we are using a USB Host Controller, ... USB storage device to a USB 1.1 port and the case ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Drop 2/3 frames when playing wmv in the USB disk
    ... If you're using a debug driver and it's pumping out thousands of debug ... > I tried to use CE Media Player to play a wmv file in the USB ...
    (microsoft.public.windowsce.platbuilder)
  • Re: CE5.0 VIA VT6212 Driver Problem
    ... It looks like the driver is not acknowledging IRQ correctly. ... Connecting a USB mouse or keyboard seems to be ok but the mouse pointer is jumping uncontrollable around. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: About wince USB mass storage host
    ... Whether is only one Mass Storage device failed or multiple type of Mass ...
    (microsoft.public.windowsce.platbuilder)