Timo Kreuzer [Mon, 6 Feb 2012 00:24:31 +0000 (00:24 +0000)]
[NTOSKRNL]
- Add MM_HAL_VA_END and use it in MiAddHalIoMappings instead of making assumptions about the page tables
- Add MM_SHARED_USER_DATA_VA for x86
- use MM_SHARED_USER_DATA_VA in Mm to avoid ambiguities
- fix or comment out USER_SHARED_DATA in asm headers, as it should be the kernel mode address here
- set Teb->ExceptionList to NULL on amd64, it is used as a link to the Wow64 TEB, if any
svn path=/trunk/; revision=55445
Daniel Reimer [Sun, 5 Feb 2012 21:15:01 +0000 (21:15 +0000)]
Massive rapps update. Almost anything revisited and corrected.
svn path=/trunk/; revision=55442
Giannis Adamopoulos [Sun, 5 Feb 2012 20:56:21 +0000 (20:56 +0000)]
[rosautotest]
- When rosautotest is launched, show how much time has past since the machine has started
- Also show how much time each individual test need to complete
- The purpose of this feature isn't to benchmark the os but to let us spot regressions regarding test time
svn path=/trunk/; revision=55441
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
Giannis Adamopoulos [Sun, 5 Feb 2012 20:21:22 +0000 (20:21 +0000)]
[win32k]
- load gpsi->dtCaretBlink and g_PaintDesktopVersion in sysparams.c
- Rename IntGdiGetLanguageID to UserGetLanguageID
- Remove some unused functions and definitions
svn path=/trunk/; revision=55439
Timo Kreuzer [Sun, 5 Feb 2012 18:41:37 +0000 (18:41 +0000)]
[NTOSKRNL]
- Modify MiRosTakeOverPebTebRanges to only create a memory area for the shared user page and rename it to MiRosTakeOverSharedUserPage. Previously it was creating a memory area for the whole region from USER_SHARED_DATA up to MM_HIGHEST_USER_ADDRESS, which is the majority of the x64 user mode address space and doesn't even contain the PEB/TEB. Those are allocated below the shared user page and get their memory areas created in MiInsertNode.
- Add amd64 versions of MmGetPageTableForProcess, MmUnmapPageTable, MmGetPageFileMapping
svn path=/trunk/; revision=55438
Timo Kreuzer [Sun, 5 Feb 2012 17:57:34 +0000 (17:57 +0000)]
[NTOSKRNL]
- Rewrite SeCaptureSecurityDescriptor. The old code was mess and totally broken for 64 bit.
- Many fixes to security descriptor code that was making wrong assumptions about the SECURITY_DESCRIPTOR structures
svn path=/trunk/; revision=55437
Timo Kreuzer [Sun, 5 Feb 2012 17:19:58 +0000 (17:19 +0000)]
[NTOSKRNL]
Handle _MI_PAGING_LEVELS >= 3 in MiBuildPagedPool and MmArmAccessFault
svn path=/trunk/; revision=55433
Amine Khaldi [Sun, 5 Feb 2012 17:19:07 +0000 (17:19 +0000)]
[PORTCLS]
* Silence some debug info.
svn path=/trunk/; revision=55432
Timo Kreuzer [Sun, 5 Feb 2012 16:42:22 +0000 (16:42 +0000)]
[NTOSKRNL/NEWCC]
Fix MSVC build and warnings
svn path=/trunk/; revision=55431
Thomas Faber [Sun, 5 Feb 2012 15:47:41 +0000 (15:47 +0000)]
[CRT]
- Fix multiple free in msvcrt_free_io. Fixes VLC Player crash on exit. Wine already has it right.
svn path=/trunk/; revision=55430
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
Rafal Harabien [Sun, 5 Feb 2012 13:44:16 +0000 (13:44 +0000)]
[CMAKE]
- Add wallpaper optional module to CMake build
svn path=/trunk/; revision=55426
Rafal Harabien [Sun, 5 Feb 2012 13:43:04 +0000 (13:43 +0000)]
- Add CMakeLists for wallpaper
svn path=/trunk/; revision=55425
Olaf Siejka [Sun, 5 Feb 2012 12:21:11 +0000 (12:21 +0000)]
[TRANSLATION]
- Bulgarian translation update of several modules (bug no. 6840), by CCTANEB, minor fixes by me;
- Polish translation update of sysdm by me;
svn path=/trunk/; revision=55424
Timo Kreuzer [Sat, 4 Feb 2012 23:08:20 +0000 (23:08 +0000)]
[NTOSKRNL]
- Fix a bug in CmpSetSystemValues, where an uninitialized handle would be closed in the failure path.
- Add a hack on top of the MI_GET_ROS_DATA(x) hack so that we can squeeze a pointer into a 32 bit field.
Make MmInitializeProcessAddressSpace amd64 ready and use a portable way to determine the page table base pfn in MiInitializeWorkingSetList
- Make MmProbeAndLockPages ready for 3 and 4 level page tables
add MiIsPteOnP*eBoundary macros - use these in MmProbeAndLockPages
- Raise IRQL to SYNCH_LEVEL not DISPATCH_LEVEL in KiAcquireDispatcherLock
- Add MiNonPagedSystemSize for all architectures
- Fix amd64 definition of KERNEL_HANDLE_FLAG
- Fix definition of PrototypePte
- Fix KiGetLinkedTrapFrame()
- Make MmProtectTpPteMask 64 bit wide
- Fix definition of MI_PTE_LOOKUP_NEEDED for amd64
- Impllement KiSendEOI() to be able to send an EOI from C code.
- Fix some MSVC/amd64 warnings
svn path=/trunk/; revision=55423
Pierre Schweitzer [Sat, 4 Feb 2012 22:01:12 +0000 (22:01 +0000)]
[MOUNTMGR]
Implement DeleteRemoteDatabaseEntry
svn path=/branches/usb-bringup-trunk/; revision=55422
Timo Kreuzer [Sat, 4 Feb 2012 21:53:09 +0000 (21:53 +0000)]
[FREELDR]
- Don't map the low 1 MB into kernel space, it's pointless and leads to inconsistencies between reported memory type and what is found in the page tables. On x86 it works, because it uses an overcomplicated pfn initialization wih redundent checks. Anyway this memory, containing freeldr and real mode code, was simply wasted.
- Silence some debug prints
- Fix warnings
svn path=/trunk/; revision=55421
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
Sylvain Petreolle [Sat, 4 Feb 2012 21:42:22 +0000 (21:42 +0000)]
[ADVAPI32]
Don't export Vista+, unused and unimplemented APIs.
Some apps / tests detect their presence and try to use them.
svn path=/trunk/; revision=55419
Timo Kreuzer [Sat, 4 Feb 2012 21:16:52 +0000 (21:16 +0000)]
[NDK]
Fix amd64 definitions of SYNCH_LEVEL, DISPATCH_LENGTH, KINTERRUPT, KTHREAD, KPROCESS, EPROCESS
- add MM_SHARED_USER_DATA_VA
- Add PsGetProcessSessionId prototype
- Remove duplicated RtlWow64Get/SetThreadContext prototypes
svn path=/trunk/; revision=55418
Eric Kohl [Sat, 4 Feb 2012 19:56:21 +0000 (19:56 +0000)]
[ADVAPI32]
Add or fix parameter checks.
svn path=/trunk/; revision=55417
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
Timo Kreuzer [Sat, 4 Feb 2012 18:35:56 +0000 (18:35 +0000)]
[RTL]
- Fix RtlLengthSecurityDescriptor
- Implement amd64 version of Implement RtlInitializeContext
- Add unwind info to amd64 debug asm functions
- Fix 64 bit HEAP_COMMON_ENTRY structure The resulting version doesn't exactly match the original windows one, but its compatible, as every field, except the dummy fields - which are omitted - is at its correct position.
svn path=/trunk/; revision=55415
Timo Kreuzer [Sat, 4 Feb 2012 18:25:25 +0000 (18:25 +0000)]
[NTDLL]
- Implement amd64 version of LdrInitializeThunk and KiUserApcDispatcher
- Export ExpInterlockedPopEntrySList* on amd64, too
- Fix some 64 bit issues
svn path=/trunk/; revision=55414
Timo Kreuzer [Sat, 4 Feb 2012 17:29:34 +0000 (17:29 +0000)]
[XDK]
- fix ASSERTs in amd64 inline functions
- fix definition of KWAIT_BLOCK
These fixes are not critical, so I don't update wdm.h to avoid additional recompilation
svn path=/trunk/; revision=55413
Johannes Anderwald [Sat, 4 Feb 2012 15:04:27 +0000 (15:04 +0000)]
[USBOHCI]
- Revert 55411
svn path=/branches/usb-bringup-trunk/; revision=55412
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
Thomas Faber [Sat, 4 Feb 2012 13:47:16 +0000 (13:47 +0000)]
[RTL]
- Work around Wine's misuse of critical section debug flags. Hopefully fixes KVM
svn path=/trunk/; revision=55410
Timo Kreuzer [Sat, 4 Feb 2012 12:29:24 +0000 (12:29 +0000)]
[ASM]
Modify syscall stub macros to be compatible with the new amd64 stubs
svn path=/trunk/; revision=55409
Timo Kreuzer [Sat, 4 Feb 2012 12:23:27 +0000 (12:23 +0000)]
[CMLIB]
Fix 64 bit / MSVC warnings
svn path=/trunk/; revision=55408
Timo Kreuzer [Sat, 4 Feb 2012 12:13:53 +0000 (12:13 +0000)]
[NTOSKRNL/MM/AMD64]
- Implement more of MmCreateProcessAddressSpace
- Acquire pfn lock and use MiRemoveZeroPage in MiGetPteForProcess
svn path=/trunk/; revision=55407
Eric Kohl [Sat, 4 Feb 2012 11:34:13 +0000 (11:34 +0000)]
[EVENTLOG]
- Change LogfInitializeNew and LogfInitializeExisting to return an NTSTATUS code instead of a BOOL value.
- LogfInitializeExisting no longer calls LogfInitializeNew when reading a log file fails but returns a proper status code instead.
svn path=/trunk/; revision=55406
Timo Kreuzer [Sat, 4 Feb 2012 11:32:13 +0000 (11:32 +0000)]
[NTOSKRNL/KE/AMD64]
- Fix stack alignment in KiSwitchToBootStack
- Handle ExceptionFrame == NULL in KeContextToTrapFrame and KeTrapFrameToContext
- Implement KiSwapContextInternal
- Fix KiSwapContext and KiThreadStartup
- Implement dispatching of user mode exceptions including in-paging of module data used by the kernel-debugger
- Implement KeInitializeInterrupt, KeConnectInterrupt, KeSynchronizeExecution
- Don't zero more than the actual PCR size in KiInitializePcr
- Add asm function KiInitializeSegments to initialize the segment selectors to proper values
- Initialize system call entrypoints in KiInitializeCpu
- Implement KiDpcInterruptHandler, KiIdleLoop, KiInitializeUserApc, KiSwapProcess, KiSystemCallHandler, KiInitializeContextThread, KiSwapContextResume
- Implement asm functions KiRetireDpcList, KiInterruptDispatch, KiSystemCallEntry64, KiZwSystemService
svn path=/trunk/; revision=55405
Timo Kreuzer [Sat, 4 Feb 2012 11:01:19 +0000 (11:01 +0000)]
[ASM/AMD64]
- Add multiple amd64 asm constant and structure offset definitions
- Add more unwind information to the amd64 trap entry code
- Add IRQL check, APC check and segment sanitize code to trap entry/exit
svn path=/trunk/; revision=55404
Timo Kreuzer [Sat, 4 Feb 2012 10:40:27 +0000 (10:40 +0000)]
[NTOSKRNL/MM/AMD64]
- Add MI_REAL_SYSTEM_RANGE_START, which is the canonical system space base address, while MmSystemRangeStart variable contains a broken value, like on Windows.
- Define MmSystemRangeStart to MI_REAL_SYSTEM_RANGE_START, since on amd64 there is no dynamic system space start address and we don't want to use the broken address anywhere
- Add some more address layout definitions
- Add MiIsPteOnP*eBoundary() macro
- Add MMPPE, MI_WRITE_VALID_PPE and ValidKernelPpe definitions
- Fix initialization of PrototypePte
- Add mappings for VAD bitmap and working set list to MiInitializePageTable
- Fix calculations in MiBuildNonPagedPool
- Improve MiBuildSystemPteSpace
- Implement MiBuildPfnDatabase, MiAddDescriptorToDatabase, MiBuildPfnDatabaseFromPageTables, MiSetupPfnForPageTable all of these are written to be portable, yet they are untested on anything else than amd64 builds
- Mostly finish MiInitMachineDependent
svn path=/trunk/; revision=55403
Rafal Harabien [Fri, 3 Feb 2012 23:43:42 +0000 (23:43 +0000)]
[BOOTDATA]
- Don't create paging files on livecd. Verified by Alex Ionescu.
svn path=/trunk/; revision=55402
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
Alex Ionescu [Fri, 3 Feb 2012 23:11:28 +0000 (23:11 +0000)]
[SMSS2]: Implement the rest of the code to create page files. All that's missing is the actual call to NtCreatePagingFile.
svn path=/trunk/; revision=55400
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
Timo Kreuzer [Fri, 3 Feb 2012 21:12:18 +0000 (21:12 +0000)]
Fix gcc build
svn path=/trunk/; revision=55398
Timo Kreuzer [Fri, 3 Feb 2012 20:59:35 +0000 (20:59 +0000)]
[NTOSKRNL]
- Rewrite MmFindGapBottomUp and MmFindGapTopDown, the old versions were broken and were first checking the address range after the first memory area and only used the area below (above) the first memory are when nothing free was found.
- Fix an ASSERT, that gets triggered now that the memory areas are created at the "right" locations
- Create a memory are for the boot loaded images, which previously could be overwritten happily by new memory areas, which was only prevented by the brokenness of the code
- Fix a few memory regions so that they are correct for amd64 builds as well
svn path=/trunk/; revision=55397
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
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
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
Johannes Anderwald [Fri, 3 Feb 2012 13:02:45 +0000 (13:02 +0000)]
[USBOHCI]
- Fix build
svn path=/branches/usb-bringup-trunk/; revision=55393
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
Thomas Faber [Fri, 3 Feb 2012 11:21:15 +0000 (11:21 +0000)]
[SMSS2]
- Properly handle an empty list in SmpSaveRegistryValue
- Compare the value string for equality, as the comment says, not inequality
- This fixes a crash, although another solution may perhaps be better
svn path=/trunk/; revision=55391
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
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
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
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
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
Timo Kreuzer [Thu, 2 Feb 2012 20:50:22 +0000 (20:50 +0000)]
[SMSS2]
Fix MSVC build
svn path=/trunk/; revision=55384
Amine Khaldi [Thu, 2 Feb 2012 20:45:49 +0000 (20:45 +0000)]
[NTOSKRNL]
* Fix MSVC build.
svn path=/trunk/; revision=55383
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
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
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
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
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
Cameron Gutman [Thu, 2 Feb 2012 18:08:28 +0000 (18:08 +0000)]
[NTOSKRNL]
- Revert 54008
svn path=/branches/usb-bringup-trunk/; revision=55377
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
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
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
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
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
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
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
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
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
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
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
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
James Tabor [Wed, 1 Feb 2012 03:09:57 +0000 (03:09 +0000)]
[User32]
- Attempt to fix the font leak when switching applications. Tested with other applications other than Acrobat Reader since it crashes when installing. See bug 5314.
svn path=/trunk/; revision=55362
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
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
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
Amine Khaldi [Tue, 31 Jan 2012 20:53:40 +0000 (20:53 +0000)]
[README.WINE]
* Mark some modules, that are in sync with Wine 1.3.37, as such.
svn path=/trunk/; revision=55358
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
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
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
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
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
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
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
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
Giannis Adamopoulos [Tue, 31 Jan 2012 10:49:44 +0000 (10:49 +0000)]
[user32_apitest]
- Add some more tests
svn path=/trunk/; revision=55349
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
Giannis Adamopoulos [Tue, 31 Jan 2012 09:58:05 +0000 (09:58 +0000)]
[user32_apitest]
- Add a couple of tests for SPI_SETMOUSESPEED and SPI_GETMOUSESPEED
- inspired by bug 905
svn path=/trunk/; revision=55347
Alex Ionescu [Tue, 31 Jan 2012 02:38:42 +0000 (02:38 +0000)]
[SMSS2]: Implement helper functions for reading and writing to the BSD (What lets Windows know if this was a good boot/shutdown or a bad one, and to display the recovery settings or not (FreeLDR should do this...)). Implement the functions needed to launch native applications, and add support for launching autochk and any other bootexecute applications. Set the correct SessionID with the kernel by calling ProcessSessionInformation. Pending File Rename Operations are the last big thing left, plus actual pagefile creation.
[SMSS2]: Fix a bug in SmpParseCommandLine.
svn path=/trunk/; revision=55346
Alex Ionescu [Tue, 31 Jan 2012 02:33:02 +0000 (02:33 +0000)]
[NDK/RTL]: Fix RtlGetSetBootStatusData prototype and add the BSD Items that can be set with it.
svn path=/trunk/; revision=55345
Alex Ionescu [Tue, 31 Jan 2012 01:19:14 +0000 (01:19 +0000)]
[SMSS2]: Implement SmpCreateDynamicEnvironmentVariables such that all the SMSS-generated variables are created. Compared to SMSS it has some bug fixes and also handles the safe-mode options key. Next step is to handle boot/setup/execute keys and get autochk running from SMSS2.
[SMSS]: No longer initialize the registry, let SMSS2 do that now.
svn path=/trunk/; revision=55343
Alex Ionescu [Mon, 30 Jan 2012 22:55:24 +0000 (22:55 +0000)]
[NDK]: D'oh.
svn path=/trunk/; revision=55342
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
Alex Ionescu [Mon, 30 Jan 2012 22:50:37 +0000 (22:50 +0000)]
[SMSS2]: Create and define the volume descriptor structure, and go ahead and build some volume descriptors!
svn path=/trunk/; revision=55340
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
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
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
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
Alex Ionescu [Mon, 30 Jan 2012 21:28:48 +0000 (21:28 +0000)]
[SMSS2]: Implement all the processing required for being able to create emergency, system, and manual-sized page files, on both fixed drives any "any" drives. Missing the code to build volume descriptors and to actually ask the kernel to create the file (right now, just prints what should be done and sizes).
svn path=/trunk/; revision=55335