Commit graph

50213 commits

Author SHA1 Message Date
Cameron Gutman 022f4b2ce5 [USB]
- We proudly merge the first charge of the usb-bringup branch. We do want to stress hardware support is still under heavy development and testing in real hardware is experimental
- Merge the Human Interface Device Stack(HID) which is used for mice / keyboards and other devices which use the USB interface, consisting of hidusb, hidparse, hidclass, mouhid, kbdhid
- Merge the composite driver, supports USB composite devices, laid out in usbccgp
- Merge the generic hub driver, which supports the USB root hub and in future USB hubs. Driver is usbhub
- Merge the Open Host Controller Interface driver (ohci)
- Merge the Enhanced Host Controller Interface driver (ehci)
- Merge the many fixes in other areas of ReactOS needed for USB to work (ntoskrnl, pci, inf, umpnpmgr, usetup)
- Special thanks goes the Haiku team, whose excellent code has provided a great base for the development of the new ReactOS USB / HID stack
- The development of the USB stack has shown the great potential when ReactOS developers team up together to achieve a common goal. The involved developers are here, listed alphabetically:

Alex Ionescu
Amine Khaldi
Cameron Gutman
Johannes Anderwald
Michel Martin
Thomas Faber
Thomas Lotz(Haiku)

Let's start the ReactOS revolution

svn path=/trunk/; revision=55555
2012-02-12 04:59:51 +00:00
Cameron Gutman 8141780521 [BUILD]
- Add rbuild files
- Fix dumb dependencies in cmake files
[DEBUG]
- Kill more debugging

svn path=/branches/usb-bringup-trunk/; revision=55554
2012-02-12 03:48:54 +00:00
Cameron Gutman 50daddc967 [HIDCLASS][HIDPARSE][HIDUSB][KBDHID][MOUHID][USBCCGP][USBD][USBEHCI][USBOHCI][USBHUB][USBSTOR]
- Massive debug spam reduction

svn path=/branches/usb-bringup-trunk/; revision=55553
2012-02-12 02:53:34 +00:00
Johannes Anderwald 68c1c7661e [USBEHCI]
- Enable async park mode when available
- Use correct type for the pipe handle
- Implement  URB_FUNCTION_GET_STATUS_FROM_INTERFACE,  URB_FUNCTION_GET_STATUS_FROM_ENDPOINT
- Verify that there is buffer provided in SubmitSetupPacket
[KBDCLASS]
- Forward requests to lower device

svn path=/branches/usb-bringup-trunk/; revision=55552
2012-02-12 00:49:18 +00:00
Timo Kreuzer b3c15e9acd [FREELDR]
Revert to using the old heap code, as it broke 2nd stage on some systems

svn path=/trunk/; revision=55551
2012-02-12 00:01:01 +00:00
Giannis Adamopoulos bf9a2b9964 [win32k]
- In reactos when an application tries to use a desktop or window station object we never check if it should have access to the object. However the only exception to this is NtUserGetObjectInformation. Since desktops and windows stations are a mess, NtUserGetObjectInformation always fails. Ironically windows do such access checks everywhere except NtUserGetObjectInformation. Fix NtUserGetObjectInformation by removing access checks
- Note: access checks for every other place will be fixed soon

svn path=/trunk/; revision=55550
2012-02-11 22:17:46 +00:00
Giannis Adamopoulos 9c80eb0d00 [win32k]
- Update pti->pClientInfo->hKL when pti->KeyboardLayout changes
- Fixes assertion after activating a second keyboard layout

svn path=/trunk/; revision=55549
2012-02-11 22:09:01 +00:00
Johannes Anderwald 2a06585e89 [USBSTOR]
- Implement retrieving endpoint halted status
- Fix multiple bugs which leaded to crashes (wrong device object passed). Usbstor now successfully restarts requests after handling the errors
- Implement mass storage reset, not yet used
- Add checks in CSW completion



svn path=/branches/usb-bringup-trunk/; revision=55548
2012-02-11 19:26:18 +00:00
Amine Khaldi 4ff2062ccb * Fix MSVC build.
svn path=/trunk/; revision=55547
2012-02-11 16:59:10 +00:00
Rafal Harabien 038a7c87d1 [NTDLL]
- Fix uninitialized variable usage causing first chance exceptions during SMSS2 loading on livecd

svn path=/trunk/; revision=55546
2012-02-11 15:30:50 +00:00
Amine Khaldi a070e2aaf2 * Sync up to trunk r55544.
svn path=/branches/usb-bringup-trunk/; revision=55545
2012-02-11 11:27:29 +00:00
Amine Khaldi c6574346df [PSDK]
* ntdddisk.h: Import a recent fix from trunk.

svn path=/branches/usb-bringup-trunk/; revision=55544
2012-02-11 10:34:28 +00:00
Amine Khaldi b9193d4c1b [PSDK]
* ntdddisk.h: Improve some definitions and add some missing ones.

svn path=/trunk/; revision=55543
2012-02-11 10:32:22 +00:00
Cameron Gutman 812ea7c71a [PCI]
- Add forgotten line

svn path=/branches/usb-bringup-trunk/; revision=55542
2012-02-11 06:56:10 +00:00
Cameron Gutman f896aeba5e [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
2012-02-11 06:25:16 +00:00
Cameron Gutman ec01d86009 [PCI]
- Set device command flags when starting the PCI device PDO

svn path=/branches/usb-bringup-trunk/; revision=55540
2012-02-11 05:47:56 +00:00
Cameron Gutman 66246c5c2d [PCIX]
- Ignore invalid extended capabilities pointer
- Don't hang on unimplemented IRPs that we actually use

svn path=/branches/usb-bringup-trunk/; revision=55539
2012-02-11 05:15:25 +00:00
Cameron Gutman a8c87a2245 [NTOSKRNL]
- Call HalAdjustResourceList to fixup the requirements list before building the resource list

svn path=/branches/usb-bringup-trunk/; revision=55538
2012-02-11 04:14:41 +00:00
Cameron Gutman 1bff183ee1 [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
2012-02-11 03:54:10 +00:00
Johannes Anderwald 6ced7570a0 [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
2012-02-11 02:10:20 +00:00
Cameron Gutman f61b43a5c1 [HAL]
- Print a message when a PCI device requires an interrupt but has none assigned

svn path=/branches/usb-bringup-trunk/; revision=55535
2012-02-11 01:11:47 +00:00
James Tabor 338cb3493d Alexandre Julliard : Draw the mask with SRCCOPY in DrawIcon when the image isn't being drawn.
svn path=/trunk/; revision=55534
2012-02-11 01:09:41 +00:00
James Tabor e1f18f1b3b Dmitry Timoshkov : user32: RealChildWindowFromPoint should skip invisible windows.
svn path=/trunk/; revision=55533
2012-02-11 00:44:16 +00:00
Cameron Gutman 4664ff43e2 [IPHLPAPI]
- Forward ICMP function calls to icmp.dll (for XP and higher)

svn path=/trunk/; revision=55532
2012-02-10 22:16:03 +00:00
Johannes Anderwald 3a5a6bf017 [USBSTOR]
- Read Capacity cmd length is 10 bytes

svn path=/branches/usb-bringup-trunk/; revision=55531
2012-02-10 21:42:42 +00:00
Johannes Anderwald 1ecef805ff [USBEHCI]
- Partly revert 55516, as the memory bug got fixed

svn path=/branches/usb-bringup-trunk/; revision=55530
2012-02-10 20:15:39 +00:00
Timo Kreuzer 3234bb7c43 [FREELDR]
Fix 64 bit warnings
Patch by Samuel Serapion, slightly modified by me

svn path=/trunk/; revision=55529
2012-02-10 19:10:17 +00:00
Pierre Schweitzer fd8ceb0b0d [NTOSKRNL]
IoCreateSymbolicLink -> IoAssignArcName

svn path=/trunk/; revision=55528
2012-02-10 18:57:55 +00:00
Timo Kreuzer cb1539b7df [RTL]
Fix64 bit warnings

svn path=/trunk/; revision=55527
2012-02-10 17:36:11 +00:00
Cameron Gutman 4c47e234d1 [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
2012-02-10 17:14:39 +00:00
Johannes Anderwald 6c4befe209 [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
2012-02-10 16:28:35 +00:00
Johannes Anderwald 147eeaf010 [USB-BRINGUP-TRUNK]
- Rename usbehci & usbhub

svn path=/branches/usb-bringup-trunk/; revision=55524
2012-02-10 11:58:11 +00:00
Giannis Adamopoulos af8d992a9e [win32k]
- fix some more tests in user32:winstation

svn path=/trunk/; revision=55522
2012-02-09 23:18:47 +00:00
Johannes Anderwald b5c9d47586 [USBHUB]
- Fix mingw build

svn path=/branches/usb-bringup-trunk/; revision=55521
2012-02-09 21:37:37 +00:00
Timo Kreuzer ed481636c6 [FREELDR]
Fix rbuild...

svn path=/trunk/; revision=55520
2012-02-09 20:11:35 +00:00
Timo Kreuzer dd52d89b53 [FREELDR]
Rename Heap_new.c to Heap.c

svn path=/trunk/; revision=55519
2012-02-09 20:10:26 +00:00
Timo Kreuzer e2efea8263 [FREELDR]
- Enable new heap code and cleanup the heap, releasing unused memory, before starting reactos
- Gives our kernel about 4MB additional memory, which - at the current leak rate - means around 8 minutes longer before it runs out of memory :)
- Using the temp heap for all temporary allocations should increase the amount of saved space

svn path=/trunk/; revision=55518
2012-02-09 20:01:10 +00:00
Giannis Adamopoulos 9cde5acdc8 [win32k]
- Use the parse context to store whether or not the desktop object was created. If the object was not created, NtUserCreateDesktop should return immediately (this can happen if it didn't exist)
- Before this , if the desktop already exited, we opened the existing desktop and initialized it again. We also created another desktop heap, desktop window, etc.. This fact confused threads using this desktop and caused problems like the assertion we see in the test suite

svn path=/trunk/; revision=55517
2012-02-09 19:41:38 +00:00
Johannes Anderwald d54653187b [USBEHCI]
- Revert 55515, 55502, 55491, 55490, 55489 as it breaks mass storage support in VBox + Vmware

svn path=/branches/usb-bringup-trunk/; revision=55516
2012-02-09 19:11:13 +00:00
Johannes Anderwald 08ec4cc76d [EHCI]
- Try fix bulk transfers #1

svn path=/branches/usb-bringup-trunk/; revision=55515
2012-02-09 16:06:34 +00:00
Johannes Anderwald 42ff9c13c0 [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
2012-02-09 15:33:09 +00:00
Timo Kreuzer 672c617e8c [NTOSKRNL]
Use MiNonPagedSystemSize when creating the system NP memory area instead of making assumptions about the memory layout
Finally the amd64 port boots into usermode and usetup is partly working, formats the harddisk but freezes, when copying files.

svn path=/trunk/; revision=55513
2012-02-09 12:04:31 +00:00
Timo Kreuzer 2de5176c84 {RTL]
- Fix RtlLengthSecurityDescriptor
- Fix pointer calculation in amd64 interlocked slist code
- Assert that the slist entry pointer is 16 byte aligned
[CRT]
- Add amd64 stubs for acos and acosf

svn path=/trunk/; revision=55512
2012-02-09 11:54:59 +00:00
Timo Kreuzer 0b2dbd9cea [USB]
Don't compile nt4 compat driver for amd64

svn path=/trunk/; revision=55511
2012-02-09 11:51:21 +00:00
Timo Kreuzer 680bfb5aa7 [CLASS2]
Fix 64 bit warnings

svn path=/trunk/; revision=55510
2012-02-09 11:34:21 +00:00
Alex Ionescu 14ba04899c [SMSS2]: Implement SmpCallCsrCreateProcess and SmpLoadSubsystem. We now load CSRSS and everything works 100%! Winlogon is now launched by SMSS2 and no regressions have been found.
[SMSS]: Turn off all code other than setting up the pagefile.
There's a lot of debug prints, as soon as things seem stable after a few days, SMSS will be gone and SMSS2 will take over and DPRINT1s will mostly be gone.

svn path=/trunk/; revision=55509
2012-02-09 02:21:56 +00:00
Alex Ionescu e23e0ca401 [SMSS2]: Implement SmpExecPgm and SmpSbCreateSession. Nothing happens (STATUS_OBJECT_NAME_NOT_FOUND is returned) because we don't really launch CSRSS and so we can't find a subsystem for Winlogon and fail (as expected for now).
svn path=/trunk/; revision=55508
2012-02-09 00:07:36 +00:00
Alex Ionescu 09c7bc60a5 [SMSS2]: Make not-implemented functions return a failure. Cleanup the SMSS hack in the _main function to be cleaner. Add a few more functions and flags to the header. Fix a function prototype.
svn path=/trunk/; revision=55507
2012-02-08 23:49:19 +00:00
Timo Kreuzer 2adafb93b0 [SHELL32]
Fix a bug I introduced in r55498
Spotted by Thomas

svn path=/trunk/; revision=55506
2012-02-08 22:53:29 +00:00
Timo Kreuzer 54bd4f5cc8 [NTOSKRNL]
- Implement amd64 version of MmDeleteProcessPageDirectory
- Fix amd64 build

svn path=/trunk/; revision=55505
2012-02-08 22:23:10 +00:00