reactos.git
8 years ago[PCI]
Cameron Gutman [Sat, 11 Feb 2012 06:56:10 +0000 (06:56 +0000)]
[PCI]
- Add forgotten line

svn path=/branches/usb-bringup-trunk/; revision=55542

8 years ago[ACPI]
Cameron Gutman [Sat, 11 Feb 2012 06:25:16 +0000 (06:25 +0000)]
[ACPI]
- Fix incorrect maximum bound for resource requirements
- Handle PCI buses manually
[HAL]
- Don't hang if the IRP_MN_QUERY_INTERFACE is received
[INF]
- Misc fixes

svn path=/branches/usb-bringup-trunk/; revision=55541

8 years ago[PCI]
Cameron Gutman [Sat, 11 Feb 2012 05:47:56 +0000 (05:47 +0000)]
[PCI]
- Set device command flags when starting the PCI device PDO

svn path=/branches/usb-bringup-trunk/; revision=55540

8 years ago[PCIX]
Cameron Gutman [Sat, 11 Feb 2012 05:15:25 +0000 (05:15 +0000)]
[PCIX]
- Ignore invalid extended capabilities pointer
- Don't hang on unimplemented IRPs that we actually use

svn path=/branches/usb-bringup-trunk/; revision=55539

8 years ago[NTOSKRNL]
Cameron Gutman [Sat, 11 Feb 2012 04:14:41 +0000 (04:14 +0000)]
[NTOSKRNL]
- Call HalAdjustResourceList to fixup the requirements list before building the resource list

svn path=/branches/usb-bringup-trunk/; revision=55538

8 years ago[NTOSKRNL]
Cameron Gutman [Sat, 11 Feb 2012 03:54:10 +0000 (03:54 +0000)]
[NTOSKRNL]
- Implement IopFixupResourceListWithRequirements to replace IopCreateResourceListFromRequirements
- This functions fills in gaps between required resources and currently allocated resources in the resource list
- It also implements support for alternate requirement descriptors which IopCreateResourceListFromRequirements ignored
- Fix a critical bug in requirement processing that could result in the kernel allocating resources outside the devices requested range
- Now the PnP manager will actually claim resources that the device reports that it needs but it does not currently have

svn path=/branches/usb-bringup-trunk/; revision=55537

8 years ago[USBEHCI]
Johannes Anderwald [Sat, 11 Feb 2012 02:10:20 +0000 (02:10 +0000)]
[USBEHCI]
- Store configuration index in the setup packet
- Perform retrieving the configuration request before storing the configuration details. Perform the same action for the select interface request
- EHCI now supports selecting configuration & interface on devices with more than one configuration (previously only one configuration was supported)
- Code has not yet been tested, as no available usb device has such feature

svn path=/branches/usb-bringup-trunk/; revision=55536

8 years ago[HAL]
Cameron Gutman [Sat, 11 Feb 2012 01:11:47 +0000 (01:11 +0000)]
[HAL]
- Print a message when a PCI device requires an interrupt but has none assigned

svn path=/branches/usb-bringup-trunk/; revision=55535

8 years ago[USBSTOR]
Johannes Anderwald [Fri, 10 Feb 2012 21:42:42 +0000 (21:42 +0000)]
[USBSTOR]
- Read Capacity cmd length is 10 bytes

svn path=/branches/usb-bringup-trunk/; revision=55531

8 years ago[USBEHCI]
Johannes Anderwald [Fri, 10 Feb 2012 20:15:39 +0000 (20:15 +0000)]
[USBEHCI]
- Partly revert 55516, as the memory bug got fixed

svn path=/branches/usb-bringup-trunk/; revision=55530

8 years ago[CLASS2]
Cameron Gutman [Fri, 10 Feb 2012 17:14:39 +0000 (17:14 +0000)]
[CLASS2]
- Fix boot from HDD with USB drive present
- Fix USB drive failure with no HDD present

svn path=/branches/usb-bringup-trunk/; revision=55526

8 years ago[USBEHCI] [USBOHCI]
Johannes Anderwald [Fri, 10 Feb 2012 16:28:35 +0000 (16:28 +0000)]
[USBEHCI] [USBOHCI]
- Don't corrupt memory when a queue head / transfer descriptor is freed
- How did this work before...

svn path=/branches/usb-bringup-trunk/; revision=55525

8 years ago[USB-BRINGUP-TRUNK]
Johannes Anderwald [Fri, 10 Feb 2012 11:58:11 +0000 (11:58 +0000)]
[USB-BRINGUP-TRUNK]
- Rename usbehci & usbhub

svn path=/branches/usb-bringup-trunk/; revision=55524

8 years ago[USBHUB]
Johannes Anderwald [Thu, 9 Feb 2012 21:37:37 +0000 (21:37 +0000)]
[USBHUB]
- Fix mingw build

svn path=/branches/usb-bringup-trunk/; revision=55521

8 years ago[USBEHCI]
Johannes Anderwald [Thu, 9 Feb 2012 19:11:13 +0000 (19:11 +0000)]
[USBEHCI]
- Revert 55515, 55502, 55491, 55490, 55489 as it breaks mass storage support in VBox + Vmware

svn path=/branches/usb-bringup-trunk/; revision=55516

8 years ago[EHCI]
Johannes Anderwald [Thu, 9 Feb 2012 16:06:34 +0000 (16:06 +0000)]
[EHCI]
- Try fix bulk transfers #1

svn path=/branches/usb-bringup-trunk/; revision=55515

8 years ago[USBHUB]
Johannes Anderwald [Thu, 9 Feb 2012 15:33:09 +0000 (15:33 +0000)]
[USBHUB]
- Ignore error when the device provides a string descriptor but no contents
- Fixes installation of cheap usb devices

svn path=/branches/usb-bringup-trunk/; revision=55514

8 years ago[EHCI]
Johannes Anderwald [Wed, 8 Feb 2012 22:06:00 +0000 (22:06 +0000)]
[EHCI]
- Add back old implementation for testing purposes (if'd out)
- Display more status field of queue head / transfer descriptor
- Dump queue head when a halted queue is detected
- Display data toggle status

svn path=/branches/usb-bringup-trunk/; revision=55502

8 years ago[USBHUB]
Cameron Gutman [Wed, 8 Feb 2012 15:50:52 +0000 (15:50 +0000)]
[USBHUB]
- Don't wait for the work item to complete in the SCE completion handler
- Use an event to signal the completion of a reset and wait for that event during IRP_MN_START_DEVICE handling so devices are enumerated synchronously which allows USB boot devices to be enumerated

svn path=/branches/usb-bringup-trunk/; revision=55493

8 years ago[USBEHCI]
Johannes Anderwald [Wed, 8 Feb 2012 01:10:36 +0000 (01:10 +0000)]
[USBEHCI]
- Fix a few bulk transfer bugs
- Enable interrupt completion on last interrupt
- Increment transferred offset
- Mass storage device now gets further (passing SRB_FUNCTION_CLAIM_DEVICE)

svn path=/branches/usb-bringup-trunk/; revision=55491

8 years ago[USBEHCI]
Johannes Anderwald [Tue, 7 Feb 2012 22:20:46 +0000 (22:20 +0000)]
[USBEHCI]
- Merge hub controller from usbohci
- Partly implement AbortPipe request
- Implement resetting data toggle in HandleSyncResetAndClearStall

svn path=/branches/usb-bringup-trunk/; revision=55490

8 years ago[USBEHCI]
Johannes Anderwald [Tue, 7 Feb 2012 21:48:05 +0000 (21:48 +0000)]
[USBEHCI]
- Rewrite the transfer descriptor handling
- Take into account the direction of the pid
- Revert previously added hacks
- Support now more than one transfer descriptor for control transfers
- Include the bulk transfers in one queue head which should speed up operation
- Store data toggle in usb endpoint structure
- Mass storage devices now passes the control status phase on real hw and enters bulk operation stage

svn path=/branches/usb-bringup-trunk/; revision=55489

8 years ago[USBEHCI]
Johannes Anderwald [Tue, 7 Feb 2012 16:46:19 +0000 (16:46 +0000)]
[USBEHCI]
- Fix data toggle misuse
- EHCI host error is now fixed
- Fixed by the Haiku dev Michael Lotz

svn path=/branches/usb-bringup-trunk/; revision=55484

8 years ago[USBEHCI]
Johannes Anderwald [Tue, 7 Feb 2012 16:18:56 +0000 (16:18 +0000)]
[USBEHCI]
- Don't set NumberOfTransaction 0x3 for the async queue head(Haiku doesnt do it too)
- Also don't set maximum packet length or interrupt on complete
- Stop the async / periodic schedules after acquiring ownership from os (ported from the Pedigree OS)
- Remove unused structs from header
- Allocate device descriptor from start of a page to prevent alignment issues
- Clear halted bit in the queue overlay transaction layer (usb_queue.cpp:507)
- Always set the alternative and next pointers in BuildControlTransferQueueHead
- Use data the toggle in the transfer requests
- Start using toggle in bulk requests, invert data toggle after each descriptor
- EHCI controller still reports error 0xA / 0xB which is USB Error Interrupt + Frame List Rollover + [USB Interrupt]
- Errors need to be researched more, though the control transfers results appear o.k.
- Tested in real hw + ros stack with USB Mass Storage Device
- Currently hangs after first completed CDB/Data/CSW block

svn path=/branches/usb-bringup-trunk/; revision=55483

8 years ago[USBEHCI]
Cameron Gutman [Tue, 7 Feb 2012 02:22:34 +0000 (02:22 +0000)]
[USBEHCI]
- Wait for periodic scheduling to start
- Increase the wait interval for asynchronous scheduling to start

svn path=/branches/usb-bringup-trunk/; revision=55477

8 years ago[USBOHCI]
Cameron Gutman [Tue, 7 Feb 2012 01:59:18 +0000 (01:59 +0000)]
[USBOHCI]
- Enable bus master on OHCI controllers if it's not set by default

svn path=/branches/usb-bringup-trunk/; revision=55476

8 years ago[CLASSPNP]
Amine Khaldi [Mon, 6 Feb 2012 22:48:17 +0000 (22:48 +0000)]
[CLASSPNP]
* Rename class.spec to classpnp.spec and adjust the build files accordingly.
[DISK_NEW]
* Fix the build files (cmake and rbuild).
* Fix InitSafeBootMode use.
* Add disk_new to build.

svn path=/branches/usb-bringup-trunk/; revision=55475

8 years ago[WDMGUID]
Amine Khaldi [Mon, 6 Feb 2012 22:45:18 +0000 (22:45 +0000)]
[WDMGUID]
* Add missing GUID_DEVINTERFACE_PARTITION guid.

svn path=/branches/usb-bringup-trunk/; revision=55474

8 years ago[NTOSKRNL]
Amine Khaldi [Mon, 6 Feb 2012 22:01:35 +0000 (22:01 +0000)]
[NTOSKRNL]
* Fix build.

svn path=/branches/usb-bringup-trunk/; revision=55473

8 years ago[DISK]
Johannes Anderwald [Mon, 6 Feb 2012 08:15:21 +0000 (08:15 +0000)]
[DISK]
- Add more structures to ntdddisk.h
- Fix more compile errors in disk_new
- disk_new builds but fails to link as classpnp import lib is broken

svn path=/branches/usb-bringup-trunk/; revision=55451

8 years ago[USBEHCI]
Cameron Gutman [Mon, 6 Feb 2012 07:41:20 +0000 (07:41 +0000)]
[USBEHCI]
- Implement ResetController and call it before setting up the controller
- Don't disable 64-bit addressing until the BIOS gives up control of the controller
- Comment out manually clearing the SMI interrupt and the BIOS owned flag by request of janderwald
- EHCI no longer hangs for me on real hardware during controller initialization

svn path=/branches/usb-bringup-trunk/; revision=55450

8 years ago[DDK]
Johannes Anderwald [Mon, 6 Feb 2012 07:35:22 +0000 (07:35 +0000)]
[DDK]
- More header fixes for disk_new

svn path=/branches/usb-bringup-trunk/; revision=55449

8 years ago[DISK_NEW]
Johannes Anderwald [Mon, 6 Feb 2012 06:50:19 +0000 (06:50 +0000)]
[DISK_NEW]
- Fix compilation of new disk driver
- Patch by Alex Ionescu

svn path=/branches/usb-bringup-trunk/; revision=55447

8 years ago[HIDPARSE]
Johannes Anderwald [Sun, 5 Feb 2012 20:28:26 +0000 (20:28 +0000)]
[HIDPARSE]
- Check if the report uses a report id
- Fix arrows in USB 2 PS/2 conversion table (Needs more fixing)

svn path=/branches/usb-bringup-trunk/; revision=55440

8 years ago[HIDCLASS]
Johannes Anderwald [Sun, 5 Feb 2012 15:36:00 +0000 (15:36 +0000)]
[HIDCLASS]
- Check if attaching to device stack failed. In that case fail the request
[HIDUSB]
- Always set SupriseRemovalOk
[USBCCGP] [HIDCLASS] [USBHUB] [USBSTOR]
- Check if the pdo is still in the pdo list. Only call IoDeleteDevice in that case

svn path=/branches/usb-bringup-trunk/; revision=55429

8 years ago[MOUNTMGR]
Pierre Schweitzer [Sat, 4 Feb 2012 22:01:12 +0000 (22:01 +0000)]
[MOUNTMGR]
Implement DeleteRemoteDatabaseEntry

svn path=/branches/usb-bringup-trunk/; revision=55422

8 years ago[PSDK]
Cameron Gutman [Sat, 4 Feb 2012 21:50:44 +0000 (21:50 +0000)]
[PSDK]
- Define USBDI_VERSION to 0x500 instead 0x600 because we support none of the Vista APIs so USBD will report the correct version

svn path=/branches/usb-bringup-trunk/; revision=55420

8 years ago[USBD]
Cameron Gutman [Sat, 4 Feb 2012 18:39:09 +0000 (18:39 +0000)]
[USBD]
- Add and fix missing exports
- Add UNIMPLEMENTED to unimplemented functions
- Fix completely broken USBD_GetPdoRegistryParameter (which wasn't even exported because somebody made a typo and couldn't figure it out)
- My Linksys USB300M driver now loads but it runs into some unimplemented code paths in usbehci

svn path=/branches/usb-bringup-trunk/; revision=55416

8 years ago[USBOHCI]
Johannes Anderwald [Sat, 4 Feb 2012 15:04:27 +0000 (15:04 +0000)]
[USBOHCI]
- Revert 55411

svn path=/branches/usb-bringup-trunk/; revision=55412

8 years ago[HIDCLASS]
Johannes Anderwald [Sat, 4 Feb 2012 14:10:18 +0000 (14:10 +0000)]
[HIDCLASS]
- Remove PDO from pdo list when it is destroyed
- Handle IRP_MN_QUERY_REMOVE_DEVICE, IRP_MN_CANCEL_STOP_DEVICE, IRP_MN_QUERY_STOP_DEVICE, IRP_MN_CANCEL_REMOVE_DEVICE
[HIDUSB]
- Add driver unload routine
[MOUHID]
- Wait for completion of pending irp
[USBHUB]
- Remove pdo from PDO list
- Handle IRP_MN_QUERY_DEVICE_RELATIONS
- Add stub driver unload routine
[USBOHCI]
- handle IRP_MN_REMOVE for FDO
- remove ASSERT

svn path=/branches/usb-bringup-trunk/; revision=55411

8 years ago[HIVESYS]
Cameron Gutman [Fri, 3 Feb 2012 23:34:21 +0000 (23:34 +0000)]
[HIVESYS]
- Add HID devices to the critical device database
- Fixes issues with mouse/keyboard not working until new device wizards are dismissed (USB drives work too)
[UMPNPMGR]
- Fix install failure after the kernel detects a critical device
[NTOSKRNL]
- Finally enable the proper IopResetDevice code
- Driver updating without a reboot for running devices is supported now (if someone will write the GUI)
[USBEHCI][USBOHCI]
- Fix removal bugs

svn path=/branches/usb-bringup-trunk/; revision=55401

8 years ago[PCI][HIDCLASS][HIDUSB][KBDHID][MOUHID][USBCCGP][USBOHCI][USBEHCI][USBHUB][USBSTOR]
Cameron Gutman [Fri, 3 Feb 2012 22:59:53 +0000 (22:59 +0000)]
[PCI][HIDCLASS][HIDUSB][KBDHID][MOUHID][USBCCGP][USBOHCI][USBEHCI][USBHUB][USBSTOR]
- Handle query remove IRPs
- Fix some other removal bugs

svn path=/branches/usb-bringup-trunk/; revision=55399

8 years ago[USBCCGP]
Johannes Anderwald [Fri, 3 Feb 2012 16:03:42 +0000 (16:03 +0000)]
[USBCCGP]
- Remove hack of forwarding pdo requests to lower device object of fdo
- Implement handling of reset port and cycle port
- IOCTL_INTERNAL_USB_RESET_PORT /  IOCTL_INTERNAL_USB_CYCLE_PORT now need to be implemented in usbhub

svn path=/branches/usb-bringup-trunk/; revision=55396

8 years ago[USBOHCI]
Johannes Anderwald [Fri, 3 Feb 2012 15:55:04 +0000 (15:55 +0000)]
[USBOHCI]
- Fix mingw build

svn path=/branches/usb-bringup-trunk/; revision=55395

8 years ago[USBOHCI]
Johannes Anderwald [Fri, 3 Feb 2012 14:47:18 +0000 (14:47 +0000)]
[USBOHCI]
- Implement reseting pipe and clear pipe stall

svn path=/branches/usb-bringup-trunk/; revision=55394

8 years ago[USBOHCI]
Johannes Anderwald [Fri, 3 Feb 2012 13:02:45 +0000 (13:02 +0000)]
[USBOHCI]
- Fix build

svn path=/branches/usb-bringup-trunk/; revision=55393

8 years ago[USBOHCI]
Johannes Anderwald [Fri, 3 Feb 2012 11:29:03 +0000 (11:29 +0000)]
[USBOHCI]
- Don't hardcode the device speed

svn path=/branches/usb-bringup-trunk/; revision=55392

8 years ago[USBOHCI]
Johannes Anderwald [Fri, 3 Feb 2012 11:02:37 +0000 (11:02 +0000)]
[USBOHCI]
- Consider device speed when building the device endpoint descriptor

svn path=/branches/usb-bringup-trunk/; revision=55390

8 years ago[USBOHCI]
Johannes Anderwald [Fri, 3 Feb 2012 09:52:29 +0000 (09:52 +0000)]
[USBOHCI]
- Check if the transfer descriptors reported errors and propagate the error in the urb status field
- OHCI now reports error which the class driver are handling
- Allocate device descriptor from non paged pool to prevent possible alignment problems
- Fix checking of completed transfer descriptors
- Fix double freeing of descriptors
- Cleanup endpoints when the halted bit is set by the host controllers
- Check for the endpoint direction in the data descriptor
- Setup descriptor needs buffer rounding set

svn path=/branches/usb-bringup-trunk/; revision=55389

8 years ago[EHCI]
Johannes Anderwald [Thu, 2 Feb 2012 23:35:56 +0000 (23:35 +0000)]
[EHCI]
- Explictely clear bios owned flag and remove all SMI interrupts

svn path=/branches/usb-bringup-trunk/; revision=55387

8 years ago[USBEHCI]
Johannes Anderwald [Thu, 2 Feb 2012 23:09:53 +0000 (23:09 +0000)]
[USBEHCI]
- Check for bios ownership
- Acquire ownership if bios owns it
- Verify ownership

svn path=/branches/usb-bringup-trunk/; revision=55386

8 years ago[USBEHCI]
Johannes Anderwald [Thu, 2 Feb 2012 22:18:58 +0000 (22:18 +0000)]
[USBEHCI]
- Use constants instead of hardcoding register offsets. Taken from Haiku
- Elements in HCSP-PORTROUTE are 4 bit entries instead

svn path=/branches/usb-bringup-trunk/; revision=55385

8 years ago[USETUP]
Cameron Gutman [Thu, 2 Feb 2012 19:57:13 +0000 (19:57 +0000)]
[USETUP]
- Write the partition table back after CheckActiveBootPartition() because it could've changed the partition table on a disk with no active partition
- Fixes issues installing ROS on new disks and disks with no active partitions (including USB disks)

svn path=/branches/usb-bringup-trunk/; revision=55382

8 years ago[USBSTOR]
Johannes Anderwald [Thu, 2 Feb 2012 19:37:38 +0000 (19:37 +0000)]
[USBSTOR]
- Add sanity checks
- Check if device needs CDB padding and return error in that case

svn path=/branches/usb-bringup-trunk/; revision=55381

8 years ago[USBOHCI]
Cameron Gutman [Thu, 2 Feb 2012 18:29:30 +0000 (18:29 +0000)]
[USBOHCI]
- Fix device enumeration on boot

svn path=/branches/usb-bringup-trunk/; revision=55380

8 years ago[INF]
Johannes Anderwald [Thu, 2 Feb 2012 18:26:10 +0000 (18:26 +0000)]
[INF]
- Add install section for hid compatible device
- Reviewed by Cameron Gutman

svn path=/branches/usb-bringup-trunk/; revision=55379

8 years ago[HIDCLASS]
Johannes Anderwald [Thu, 2 Feb 2012 18:10:11 +0000 (18:10 +0000)]
[HIDCLASS]
- Also store the HID_DEVICE_UP format in the hardware id list

svn path=/branches/usb-bringup-trunk/; revision=55378

8 years ago[NTOSKRNL]
Cameron Gutman [Thu, 2 Feb 2012 18:08:28 +0000 (18:08 +0000)]
[NTOSKRNL]
- Revert 54008

svn path=/branches/usb-bringup-trunk/; revision=55377

8 years ago[TXTSETUP.SIF]
Cameron Gutman [Thu, 2 Feb 2012 17:46:28 +0000 (17:46 +0000)]
[TXTSETUP.SIF]
- Install hidusb for USB human interface devices during 1st stage setup

svn path=/branches/usb-bringup-trunk/; revision=55376

8 years ago[HIDCLASS]
Cameron Gutman [Thu, 2 Feb 2012 17:42:55 +0000 (17:42 +0000)]
[HIDCLASS]
- Ignore failure to register a device interface during 1st stage setup

svn path=/branches/usb-bringup-trunk/; revision=55375

8 years ago[INF]
Cameron Gutman [Thu, 2 Feb 2012 15:35:31 +0000 (15:35 +0000)]
[INF]
- Don't install the usbuhci service yet because we have no driver

svn path=/branches/usb-bringup-trunk/; revision=55374

8 years ago[INF]
Johannes Anderwald [Thu, 2 Feb 2012 10:36:33 +0000 (10:36 +0000)]
[INF]
- Fix unknown device for hid keyboard

svn path=/branches/usb-bringup-trunk/; revision=55373

8 years ago[USBCCGP]
Johannes Anderwald [Thu, 2 Feb 2012 10:17:14 +0000 (10:17 +0000)]
[USBCCGP]
- Remove hacks used for broken usbd driver
- Implement IRP_MN_REMOVE for FDO & PDO

svn path=/branches/usb-bringup-trunk/; revision=55372

8 years ago[USBD]
Johannes Anderwald [Wed, 1 Feb 2012 16:59:13 +0000 (16:59 +0000)]
[USBD]
- In 2012 a long protected natural resource for bugs was shutdown due to popular usb device support demand
- Fix length check in USBD_ParseDescriptors. (PLONG)Descriptor + TotalLength is not the length of the configuration descriptor but twice the configuration descriptor
- Reset found variable in the loop. This fixes finding of interfaces which are not the first one in the configuration descriptor
- Again moving to next usb descriptor was broken. UsbDeviceDescriptor = UsbDeviceDescriptor + UsbDeviceDescriptor->bLength does not move to the next but to next XX descriprors specified by bLength
- Introduced in rev 17382 (14/08/2005)

svn path=/branches/usb-bringup-trunk/; revision=55370

8 years ago[KBDHID]
Johannes Anderwald [Wed, 1 Feb 2012 14:28:02 +0000 (14:28 +0000)]
[KBDHID]
- Implement IOCTL_KEYBOARD_QUERY_TYPEMATIC, IOCTL_KEYBOARD_SET_TYPEMATIC
- Fix bug in the dispatch routine
- Keyboard presses are no longer reported twice

svn path=/branches/usb-bringup-trunk/; revision=55369

8 years ago[HIDPARSER]
Johannes Anderwald [Wed, 1 Feb 2012 13:34:20 +0000 (13:34 +0000)]
[HIDPARSER]
- A key break code indicator is 0x80, not 0x1
[USBCCGP]
- Silence debug print
[KBDHID]
- Implement IOCTL_KEYBOARD_QUERY_INDICATORS, IOCTL_KEYBOARD_SET_INDICATORS
- Partly implement dispatching to kbdclass
- Kbdclass now receives keys from kbdhid. Not yet fully working
- Tested in XP+ ReactOS USB Stack + ReactOS HID stack + USB Composite Device Keyboard

svn path=/branches/usb-bringup-trunk/; revision=55368

8 years ago[USBEHCI][USBOHCI]
Cameron Gutman [Wed, 1 Feb 2012 12:16:47 +0000 (12:16 +0000)]
[USBEHCI][USBOHCI]
- Wait 100 milliseconds for the port power and insertion to stabilize
- Wait for the 10 millisecond "recovery" period after reset

svn path=/branches/usb-bringup-trunk/; revision=55367

8 years ago[USBEHCI]
Cameron Gutman [Wed, 1 Feb 2012 11:49:57 +0000 (11:49 +0000)]
[USBEHCI]
- Wait 20 milliseconds for port reset

svn path=/branches/usb-bringup-trunk/; revision=55366

8 years ago[USBEHCI]
Cameron Gutman [Wed, 1 Feb 2012 11:22:43 +0000 (11:22 +0000)]
[USBEHCI]
- Wait 20 milliseconds after enabling power for the port to stabilize

svn path=/branches/usb-bringup-trunk/; revision=55365

8 years ago[HIDPARSE]
Johannes Anderwald [Wed, 1 Feb 2012 10:36:19 +0000 (10:36 +0000)]
[HIDPARSE]
- Use report value when report item bitcount > 1
[KBDHID]
- Print raw report
- KBDHID starts to receive normal keys and modifier keys

svn path=/branches/usb-bringup-trunk/; revision=55364

8 years ago[HIDUSB]
Johannes Anderwald [Wed, 1 Feb 2012 03:02:25 +0000 (03:02 +0000)]
[HIDUSB]
- Add support function to detect when the boot protocol is still active

svn path=/branches/usb-bringup-trunk/; revision=55361

8 years ago[USBOHCI]
Johannes Anderwald [Wed, 1 Feb 2012 02:36:53 +0000 (02:36 +0000)]
[USBOHCI]
- Fix bugs in HandleClassEndpoint, HandleClassInterface which always set direction device to host instead of relying to the transfer flags provided
- Allow setup packets w/o a data stage

svn path=/branches/usb-bringup-trunk/; revision=55360

8 years ago[USBCCGP]
Johannes Anderwald [Wed, 1 Feb 2012 01:44:21 +0000 (01:44 +0000)]
[USBCCGP]
- Fix multiple bugs while selecting configuration
- Silence traces

svn path=/branches/usb-bringup-trunk/; revision=55359

8 years ago[HIDPARSE]
Johannes Anderwald [Tue, 31 Jan 2012 19:00:45 +0000 (19:00 +0000)]
[HIDPARSE]
- Implement HidP_GetUsagesEx
- HidP_GetUsagesEx uses HidP_GetUsages with undefined usage page
- Required for hid usb support
- Check if there is a maximum set. In that case verify if a usage maximum has been set and apply it to the currnt usage. Fixes asserts while usb composite device installation (keyboard)

svn path=/branches/usb-bringup-trunk/; revision=55357

8 years ago[HIDCLASS]
Johannes Anderwald [Tue, 31 Jan 2012 18:37:49 +0000 (18:37 +0000)]
[HIDCLASS]
- Implement set idle request. The device should only send data when there is actual data. May also fix the mouse debug flood when mouse is ejected
- Not yet supported in OHCI
- Add missing constants

svn path=/branches/usb-bringup-trunk/; revision=55356

8 years ago[NTOSKRNL]
Cameron Gutman [Tue, 31 Jan 2012 18:26:03 +0000 (18:26 +0000)]
[NTOSKRNL]
- Don't check for the correct parent in IopActionInitChildServices
- This function is also used to load drivers later for devices enumerated early in boot (before we have access to the disk) and we want it to run for all devices on the system, not just those that are immediate children of the root node
- Fixes broken PnP in 3rd stage

svn path=/branches/usb-bringup-trunk/; revision=55355

8 years ago[NTOSKRNL]
Pierre Schweitzer [Tue, 31 Jan 2012 18:18:46 +0000 (18:18 +0000)]
[NTOSKRNL]
Implement IoVolumeDeviceToDosName(), taking advantage of newcomer in the branch, MountMgr :-).
This implementation will in fact don't work as MountMgr doesn't implement that part... But the day it's ready, this function will be!

svn path=/branches/usb-bringup-trunk/; revision=55354

8 years ago[HIDPARSER]
Johannes Anderwald [Tue, 31 Jan 2012 16:19:33 +0000 (16:19 +0000)]
[HIDPARSER]
- Rewrite hidparser so that it support multiple top level collections
- Add support for flat collection context meaning all context structures are aligned in after each other. The reason this is required is that usermode hid.dll will access the same structure and thus can't use kernel pointers. User mode hid.dll is used to support keyboard with custom keys (for example search key, email key etc)

svn path=/branches/usb-bringup-trunk/; revision=55353

8 years ago[USBSTOR]
Cameron Gutman [Tue, 31 Jan 2012 15:59:59 +0000 (15:59 +0000)]
[USBSTOR]
- Add forgotten event initialization from last usbstor commit

svn path=/branches/usb-bringup-trunk/; revision=55352

8 years ago[USETUP]
Cameron Gutman [Tue, 31 Jan 2012 15:45:43 +0000 (15:45 +0000)]
[USETUP]
- Don't quit if setup doesn't find a non-PnP HDD (until PnP stuff works better)

svn path=/branches/usb-bringup-trunk/; revision=55351

8 years ago[USBSTOR]
Cameron Gutman [Tue, 31 Jan 2012 15:33:32 +0000 (15:33 +0000)]
[USBSTOR]
- Fix handling of SRB_FUNCTION_FLUSH and SRB_FUNCTION_SHUTDOWN to prevent data loss

svn path=/branches/usb-bringup-trunk/; revision=55350

8 years ago- Remove old version of usbehci and usbhub
Johannes Anderwald [Tue, 31 Jan 2012 10:11:39 +0000 (10:11 +0000)]
- Remove old version of usbehci and usbhub

svn path=/branches/usb-bringup-trunk/; revision=55348

8 years ago[USBEHCI]
Cameron Gutman [Mon, 30 Jan 2012 22:54:40 +0000 (22:54 +0000)]
[USBEHCI]
- Remove debug spam

svn path=/branches/usb-bringup-trunk/; revision=55341

8 years ago[USBHUB]
Cameron Gutman [Mon, 30 Jan 2012 22:45:16 +0000 (22:45 +0000)]
[USBHUB]
- Missed a fix from last commit
- Wait for the device status change work item to complete
- The USB stack is now properly constructed for USB booting

svn path=/branches/usb-bringup-trunk/; revision=55339

8 years ago[USBHUB]
Cameron Gutman [Mon, 30 Jan 2012 22:19:47 +0000 (22:19 +0000)]
[USBHUB]
- Send the SCE IRP before resetting the port so we can wait on it for device enumeration

svn path=/branches/usb-bringup-trunk/; revision=55338

8 years ago[HAL]
Cameron Gutman [Mon, 30 Jan 2012 21:47:30 +0000 (21:47 +0000)]
[HAL]
- Remove differences between legacy and ACPI HAL initialization

svn path=/branches/usb-bringup-trunk/; revision=55337

8 years ago[HIVESYS]
Cameron Gutman [Mon, 30 Jan 2012 21:36:51 +0000 (21:36 +0000)]
[HIVESYS]
- Fix the service entries
[HAL]
- Synchronously invalidate device relations
[NTOSKRNL]
- Remove hacks

svn path=/branches/usb-bringup-trunk/; revision=55336

8 years ago[HIDPARSE]
Johannes Anderwald [Mon, 30 Jan 2012 19:29:26 +0000 (19:29 +0000)]
[HIDPARSE]
- Start support for multi top level hid collections
- Not yet full implemented
- Required for proper usb composite support

svn path=/branches/usb-bringup-trunk/; revision=55332

8 years ago[HIDCLASS]
Johannes Anderwald [Mon, 30 Jan 2012 16:47:39 +0000 (16:47 +0000)]
[HIDCLASS]
- Prevent buffer overflow in HidClassPDO_HandleQueryHardwareId
- Reimplement HidClassPDO_HandleQueryInstanceId
- USB Composite driver now gets further(hangs at installation stage)

svn path=/branches/usb-bringup-trunk/; revision=55329

8 years ago[HALACPI]
Cameron Gutman [Mon, 30 Jan 2012 16:23:44 +0000 (16:23 +0000)]
[HALACPI]
- Create PDO earlier so ACPI can be loaded earlier in boot
[HIVESYS]
- Create critical device database with required devices for USB boot
[NTOSKRNL]
- Read the CDDB and install devices that are critical for boot
- This implementation won't be 100% correct until a PnP manager rewrite but it should work well enough for our needs
- Not complete and disabled atm

svn path=/branches/usb-bringup-trunk/; revision=55328

8 years ago[KBDHID]
Johannes Anderwald [Mon, 30 Jan 2012 13:31:05 +0000 (13:31 +0000)]
[KBDHID]
- Fix typo
[USBCCGP]
- Remove unused variable

svn path=/branches/usb-bringup-trunk/; revision=55327

8 years ago[USBCCGP]
Johannes Anderwald [Mon, 30 Jan 2012 12:42:05 +0000 (12:42 +0000)]
[USBCCGP]
- Add function to append interface number
- Append function number to BusQueryDeviceId / BusQueryInstanceId
- USBCCGP is now properly enumerated and its child device start to get installed

svn path=/branches/usb-bringup-trunk/; revision=55326

8 years ago[USBCCGP]
Johannes Anderwald [Mon, 30 Jan 2012 10:41:52 +0000 (10:41 +0000)]
[USBCCGP]
- Fix bug while scanning configuration descriptor
- Store interface list in the PDO device extension
- Display interface numbers when dumping function descriptor
- Fix a few bugs while selecting the configuration for the PDO

svn path=/branches/usb-bringup-trunk/; revision=55325

8 years ago[HIDUSB]
Johannes Anderwald [Mon, 30 Jan 2012 09:53:18 +0000 (09:53 +0000)]
[HIDUSB]
- Pass the interface number in the request when issuing hid get report descriptor
- Fixes wrong report descriptors being obtained

svn path=/branches/usb-bringup-trunk/; revision=55322

8 years ago[USETUP]
Cameron Gutman [Mon, 30 Jan 2012 04:52:37 +0000 (04:52 +0000)]
[USETUP]
- Fix selection of the active partition
- Running 1st stage setup to a USB drive now results in a bootable USB drive that successfully runs FreeLoader which can load the ROS kernel, HAL, and other critical boot executables from the USB drive but ROS fails early in boot after FreeLoader hands control to the kernel

svn path=/branches/usb-bringup-trunk/; revision=55316

8 years ago[USBSTOR]
Cameron Gutman [Mon, 30 Jan 2012 04:18:59 +0000 (04:18 +0000)]
[USBSTOR]
- Handle SRB_FUNCTION_SHUTDOWN successfully (failing it results in a stack overflow due to a bug in disk.sys)
- Fixes the crash during shutdown after using a USB drive

svn path=/branches/usb-bringup-trunk/; revision=55315

8 years ago[INF]
Cameron Gutman [Mon, 30 Jan 2012 00:23:11 +0000 (00:23 +0000)]
[INF]
- Formatting fixes
[TXTSETUP.SIF]
- Boot load certain USB drivers in 1st stage for eventual support for installing from USB

svn path=/branches/usb-bringup-trunk/; revision=55309

8 years ago[INF]
Cameron Gutman [Mon, 30 Jan 2012 00:05:14 +0000 (00:05 +0000)]
[INF]
- Formatting fixes
- Add missing device description
- Set to boot start for USB boot support

svn path=/branches/usb-bringup-trunk/; revision=55307

8 years ago[INF]
Cameron Gutman [Sun, 29 Jan 2012 23:28:34 +0000 (23:28 +0000)]
[INF]
- Enable boot start for USB drivers (part 1 of 2)

svn path=/branches/usb-bringup-trunk/; revision=55305

8 years ago[INF]
Johannes Anderwald [Sun, 29 Jan 2012 23:27:03 +0000 (23:27 +0000)]
[INF]
- Add usbccgp installation section

svn path=/branches/usb-bringup-trunk/; revision=55304