Commit graph

46674 commits

Author SHA1 Message Date
Cameron Gutman 3bff188bfc [NTOSKRNL]
- Add a special case in IopLoadServiceModule for 1st stage setup when we have no service entries so we can still load drivers
- Fixes an old regression with 1st stage PnP which now can load drivers again

svn path=/trunk/; revision=51966
2011-05-27 21:56:55 +00:00
Pierre Schweitzer 80d496143d [NTOSKRNL]
Fix struct size checking for debug remove locks.
Spotted by Roel

svn path=/trunk/; revision=51965
2011-05-27 21:21:36 +00:00
Cameron Gutman 5d2112a43b [UMPNPMGR]
- Determine whether the device is really installed by reading the ClassGUID key instead of looking at the device flags
- Add a debug print for device installation (shouldn't be too spammy except and will be helpful for hotplugging)
[USETUP]
- Reenable the 1st stage PnP manager

svn path=/trunk/; revision=51963
2011-05-27 20:50:17 +00:00
Eric Kohl ccda38feca [MSPORTS]
- Implement a simple property sheet provider for serial ports. The property sheet does not show yet because the dialog resource is not found because a call to FindResourceW fails.

svn path=/trunk/; revision=51960
2011-05-27 15:33:12 +00:00
Eric Kohl 94786cb21a [SETUPAPI]
- SetupDiGetClassDevPropertySheetsW: Improve the way property sheet pages are added to a property sheet. This change enables us to retrieve the number of property sheet pages provided by a property sheet provider without leaking property sheets.

svn path=/trunk/; revision=51959
2011-05-27 15:07:43 +00:00
Johannes Anderwald 2231c8333a [USBOHCI]
- Implement function to retrieve isochronous head endpoint descriptor
- Implement function to retrieve current frame number
- Set isochronous descriptor flag for head endpoint
- Implement retrieve device status for devices
- Implement retrieve class status from device
- Partly implement isochronous descriptor handling in usb queue
- Start implementing isochronous transfers in ISUBRequest
- Code currently not tested as the Virtual Machine with XP + ReactOS usbohci driver brings down the host system when starting the iso transfers. Ironically it crashes in MS usbohci driver


svn path=/branches/usb-bringup/; revision=51957
2011-05-27 13:04:55 +00:00
Matthias Kupfer bc57750cb9 patch by Igor Paliychuk <mansonigor at gmail dot com>:
- [TRANSLATIONS] update ukrainian locale

svn path=/trunk/; revision=51948
2011-05-27 08:18:33 +00:00
Cameron Gutman 6b41510d8b [USETUP]
- Disable the 1st stage user-mode PnP manager because it is creating incomplete registry keys which is confusing the real user-mode PnP manager and preventing devices installed in 1st stage from appearing in device manager
- Fixes displaying PCI bus controllers in device manager
- I need to discuss with Herve what should be done with this code

svn path=/trunk/; revision=51947
2011-05-27 03:40:22 +00:00
Cameron Gutman 2b5e8a3588 [NTOSKRNL]
- Quick fix for the crash loading boot-time legacy drivers
- More device node flag state fixes coming soon

svn path=/trunk/; revision=51946
2011-05-27 02:11:05 +00:00
James Tabor 90e8da7f8a [Win32k|User32]
- Remove NtUserGetLastInputInfo.

svn path=/trunk/; revision=51945
2011-05-27 01:36:41 +00:00
Cameron Gutman bb403dcfbc [NTOSKRNL]
- Implement IoInvalidateDeviceState

svn path=/trunk/; revision=51944
2011-05-26 22:49:27 +00:00
Rafal Harabien 6a2050afbe [HAL]
- Use ExFreePoolWithTag instead of ExFreePool
- Add definitions of used tags

svn path=/trunk/; revision=51943
2011-05-26 22:22:37 +00:00
Cameron Gutman b24d89aee6 [NTOSKRNL]
- Implement the kernel backend of graceful device removal/ejection

svn path=/trunk/; revision=51942
2011-05-26 22:09:02 +00:00
Rafal Harabien 71f6457399 [WIN32K]
- Remove unused ROS specific NtGdiSetDIBits syscall

svn path=/trunk/; revision=51936
2011-05-26 21:25:57 +00:00
Eric Kohl 00aee505e3 [MSPORTS]
- Try to read the PortName registry value and get the port number from the name.
- Determine the port number for parallel ports the same way we determine the port number for serial ports, except for the use of the com port database.

svn path=/trunk/; revision=51935
2011-05-26 21:20:06 +00:00
Rafal Harabien 1a05e28243 [FASTFAT]
- Use constant instead of magic number

svn path=/trunk/; revision=51933
2011-05-26 20:59:48 +00:00
Rafal Harabien 92bd6a6e6f [VERSION]
- Remove redundant file

svn path=/trunk/; revision=51932
2011-05-26 20:52:59 +00:00
Rafal Harabien ea760d80b9 [BOOTDATA]
- Add Start Menu shell32 class to registry so LiveCD has it. It's needed for explorer-new.

[FREELDR]
- Fix rbuild file

svn path=/trunk/; revision=51931
2011-05-26 20:39:52 +00:00
Cameron Gutman f8362347e4 [NTOSKRNL]
- Implement the kernel side of surprise device removal including sending the appropriate IRPs and notifying the user-mode PnP manager
- Fix the completely broken GUID_DEVICE_ARRIVAL notification (we were sending it for the parent not the children and we were sending regardless of whether any device had actually arrived)

svn path=/trunk/; revision=51930
2011-05-26 20:39:15 +00:00
Rafal Harabien 2332dc3a16 [USETUP]
- Fix polish translation

svn path=/trunk/; revision=51929
2011-05-26 20:33:58 +00:00
Cameron Gutman 4363ff3a32 [PCI]
- Inform the PnP manager that we don't support stopping devices by failing the IRP_MN_QUERY_STOP_DEVICE IRP instead of the IRP_MN_STOP_DEVICE IRP (which is not allowed)

svn path=/trunk/; revision=51928
2011-05-26 19:51:12 +00:00
Cameron Gutman 10959bf38e [NDIS]
- Fix handling of some PnP IRPs
- Handle IRP_MN_STOP_DEVICE as it travels down the stack not up
- Only complete the IRP_MN_QUERY_XXX_DEVICE IRPs if we fail them otherwise pass them down the device stack
- Handle IRP_MN_CANCEL_XXX_DEVICE as it travels back up the stack not on its way down
- Append our flags when handling IRP_MN_QUERY_PNP_DEVICE_STATE and pass it down the device stack

svn path=/trunk/; revision=51927
2011-05-26 19:34:39 +00:00
Rafal Harabien 562fcac277 [TASKMGR]
- Simplify opening settings registry key

svn path=/trunk/; revision=51925
2011-05-26 18:19:17 +00:00
Johannes Anderwald 9aff3e967c [USBOHCI]
- Set up periodic threshold (90 %)
- Add function to retrieve interrupt endpoints
- Add function to retrieve specific descriptors from interface. These are used by HID devices such as mice / keyboards
- Add function to retrieve interrupt interval
- Enqueue all endpoint descriptors at the end of the associated queue
- Only notify hardware of insertion when it is an bulk / control request
- Scan interrupt endpoint list to find the completed transfer descriptor
- Add debugging function to print out linked endpoint descriptors
- Interrupt transfers are now implemented. 
- Tested in Windows XP SP3 + Vbox 4.04 + Microsoft 5-Button Mouse. The HID mouse installs, initializes and starts up. Unfortunately the mouse does not work as expected yet

svn path=/branches/usb-bringup/; revision=51922
2011-05-26 12:37:18 +00:00
Eric Kohl c9726a9484 [SERVICES]
- Add database locks to ScmAutoShutdownServices, RCreateServiceW and REnumServicesStatusExW.
- Add experimental logging of failed service start (WIP).

svn path=/trunk/; revision=51921
2011-05-26 10:50:26 +00:00
Johannes Anderwald 667b425b6c [USBOHCI]
- Remove dead code
- Silence traces
- Pass status & DoneHead as parameters to dpc routine
- Move IUSBRequest cleanup code into new function and use it for bulk / control transfer cleanup
- Fix bugs in AllocateEndpointDescriptor. It did not take the device address into account. It also did not respect the direction of the descriptor
- Implement support for bulk transfer requests
- Handle irp completion in CompletionCallback
- Tested in Windows XP SP3 + Vbox 4.04 + USB2.0 disabled + ReactOS usbstor + USB mass storage device
- OHCI Mass storage support is now also ready
- Next interrupt transfers

svn path=/branches/usb-bringup/; revision=51917
2011-05-26 02:15:11 +00:00
Eric Kohl a53b8c7e19 [MSPORTS]
Store the PortName value in the registry.
Please note that SetupDiCreateDevRegKey and SetupDiOpenDevRegKey are broken because they do not open or create the 'Device Parameters' subkey of a device instance key but the device instance key itself.

svn path=/trunk/; revision=51916
2011-05-25 22:14:40 +00:00
Ged Murphy 45b3697a66 [LOGONUI]
Add gabriel's fixed bitmap and a more forgiving rbuild file

svn path=/trunk/; revision=51907
2011-05-25 18:53:04 +00:00
Ged Murphy 4d7f242b7f [LOGONUI]
- Start to put together the logon / logoff user interface process
- It currently paints an exact pixel replica of WinXP's welcome screen in a logging off state
- Just a bit of fun at the moment, but will be part of the UI revamp we're all working towards.

svn path=/trunk/; revision=51906
2011-05-25 17:13:54 +00:00
Matthias Kupfer 255a10c304 use application specific icon for small AND large icon instead of predefined one (otherwise alt-tab shows default icon)
svn path=/trunk/; revision=51902
2011-05-25 11:22:36 +00:00
Eric Kohl 9074f26b85 [MSPORTS]
- Implement ComDBClaimNextFreePort and ComDBReleasePort.
- Add stubs for ComDBGetCurrentPortUsage and ComDBResizeDatabase.
- Do not keep the port bitmap in a buffer between calls but use a read-modify-write strategy instead.
- Replace pointer-based access to the port bitmap by index-based access.
- Use ComDBClaimNextFreePort in the serial port installer.
See issue #6272 for more details.

svn path=/trunk/; revision=51901
2011-05-25 10:52:12 +00:00
Johannes Anderwald 2c6077dc50 [USBOHCI]
- Add glue code for supporting iso transfers
- Remove dead from Handle
- Remove broken asserts
- Add support for string descriptors
- Add support for class specific endpoint requests (Needs be ported to usbehci)
- Link to usbd driver
- Add support for retrieving string descriptor
- Rewrite configuration descriptor handling in IUSBDevice. New code is smaller, smarter and handles a lot more cases. Needs to be ported to usbehci
- Wrap usbdlib.h include in extern c macro, it has c linkage
- Control transfers should now work 
- Need to implement support for isochronous / bulk / interrupt transfers until functional
- Tested with Bluetooth USB Stick (multi function, interrupt / bulk / control / isochronous) / USB Microphone (isochronous & control) in XP SP3

svn path=/branches/usb-bringup/; revision=51900
2011-05-25 02:11:06 +00:00
Johannes Anderwald beec9a7b25 [USBD]
- Add missing export

svn path=/branches/usb-bringup/; revision=51899
2011-05-24 23:03:35 +00:00
Pierre Schweitzer b6d42c5ec0 [NTOSKRNL]
- Fix remove locks with debug block initialization in IoInitializeRemoveLockEx(). Before only their debug block was initialized, and not the lock itself...
- Implemented support remove locks debug blocks in IoAcquireRemoveLockEx(), IoReleaseRemoveLockEx() and IoReleaseRemoveLockAndWaitEx()
This will help debugging in storage stack and is required since partmgr is using them.

svn path=/trunk/; revision=51898
2011-05-24 21:21:54 +00:00
Johannes Anderwald ed6fad617e [USBOHCI]
- Don't allocate buffer twice
- Cleanup endpoint / general transfer descriptors

svn path=/branches/usb-bringup/; revision=51892
2011-05-24 18:29:57 +00:00
Ged Murphy 4596e5e59b [SHELL32_NEW]
- Merge 48786. (This is why we moved to C++, so much cleaner than the previous C code.)

- Improve parameter checks for IShellLinkA interface.
- Fix heap corruption when an invalid pointer is passed.
- Implement IPersistFile_fnGetCurFile.
- TODO: Add same checks to IShellLinkW interface and fix IShellLink[A|W]::GetPath / SetPath / SetIdList / GetIdList logic.

svn path=/trunk/; revision=51891
2011-05-24 18:18:56 +00:00
Ged Murphy ba266670d1 [SHELL32_NEW]
- Merge 48254, 48371, 48463, 48501
- Don't worry about trying to build this dll, it needs the new PSDK interfaces which won't be committed until the very end as they'll break the existing shell32. It make take a day or two as everything has to be merged by hand.

svn path=/trunk/; revision=51890
2011-05-24 18:14:47 +00:00
Johannes Anderwald e24bfbfa91 [USBOHCI]
- Add sanity checks
- Preserve  command status value when notifying the hc that a control / bulk endpoint was added
- Re-enable root hub notification interrupt when reset port has been completed
- Dispatch processing to USBQeueu when DoneHead event arrives
- Scan endpoints to find the logical endpoint which was completed by the hardware
- Signal completion to IUSBRequest by calling CompletionCallback
- Create a final transfer descriptor which is linked to the endpoint descriptor
- Control transfers now appear to be working (Device retrieves device descriptor / configuration descriptor and succeeds in setting device address)
- Configuration parsing code needs more work now (currently fails there due to invalid / unexpected configuration descriptor from device)

svn path=/branches/usb-bringup/; revision=51888
2011-05-24 17:57:00 +00:00
Jérôme Gardou 9e4d22d027 [NTOSKRNL/MM]
- clear right bit when freeing pool pages.

svn path=/trunk/; revision=51887
2011-05-24 17:55:27 +00:00
Timo Kreuzer 3b62a1af2a [WIN32K]
- Add a comment about alignment for GreCreateBitmap
- Make bits really 32bit aligned
- Remove unused variable

svn path=/trunk/; revision=51886
2011-05-24 16:23:36 +00:00
Timo Kreuzer 54b14d414e [WIN32K]
- Fix the bitmap alignment issue that caused broken scrollbar pattern

svn path=/trunk/; revision=51885
2011-05-24 15:35:30 +00:00
Johannes Anderwald b275073474 [USBOHCI]
- Enable global power mode
- Wait untill reset is complete
- Clear reset complete bit when reset is done
- Enable port
- Reset port now works
- USBOHCI still hangs after adding first control request, needs more investigation

svn path=/branches/usb-bringup/; revision=51883
2011-05-24 12:51:03 +00:00
Olaf Siejka fc94016a41 [RPCSS]
Addenum. This change slipped past in commit 51873. Fix name of irot header include, which should be irot.h and not irot_s.h. Fixes rpcss build in MSVC.

svn path=/trunk/; revision=51874
2011-05-23 21:49:12 +00:00
Olaf Siejka 9776c7b8d7 Converting POLISH localisation strings to UTF-8. Part 2/4 -
- base\setup and base\system coversion
- added PRAGMA to rsrc/resource files
- added missing polish translations - subst and runonce
- small fixes, style and wording
Tested on rbuild/cmake/nmake

svn path=/trunk/; revision=51873
2011-05-23 21:36:15 +00:00
Matthias Kupfer e345b5a483 revert previous commit due to serious build problems
svn path=/trunk/; revision=51872
2011-05-23 19:48:04 +00:00
Matthias Kupfer 54e3afb4ee patch by Igor Paliychuk <mansonigor at gmail dot com>:
- [CMAKE] Reduce difference with cmake branch
- msvc fixes
- minor changes by me

svn path=/trunk/; revision=51871
2011-05-23 19:30:50 +00:00
Amine Khaldi 26e319dd8c [CMAKE]
* Remove meaningless target_link_libraries(${MODULE})

svn path=/trunk/; revision=51870
2011-05-23 18:52:04 +00:00
Eric Kohl 126ebc89ff Real fix of the broken build.
svn path=/trunk/; revision=51869
2011-05-23 18:49:03 +00:00
Timo Kreuzer 597107fc28 [CMAKE]
- Remove last traces of mingw_common
- adopt msvcrtex on msvc builds
- Fix MSVC warnings in crtexe.c, already pushed upstream

svn path=/trunk/; revision=51868
2011-05-23 18:27:16 +00:00
Timo Kreuzer 16c69e2493 [MSPORTS]
Fix build

svn path=/trunk/; revision=51867
2011-05-23 18:22:24 +00:00