Amine Khaldi
6b89580cf4
[KBDCLASS]
...
* Do not include debug.h from within the main header.
* Improve the GUIDs situation.
* Remove one time inclusions from the main header and put them back where they belong.
CORE-7716
svn path=/trunk/; revision=61878
2014-01-29 10:53:48 +00:00
Cameron Gutman
ccae886429
[MOUCLASS][KBDCLASS]
...
- Fix a file object reference leak on legacy enumerated keyboard and mouse port drivers
svn path=/trunk/; revision=56067
2012-03-06 22:20:02 +00:00
Cameron Gutman
e321ae7ab1
[KBDCLASS][MOUCLASS]
...
- Demote an assertion into a warning
svn path=/trunk/; revision=55752
2012-02-20 12:08:35 +00:00
Cameron Gutman
9a4a85968d
[KBDCLASS]
...
- Kill the rest of the input stack hack of doom
svn path=/trunk/; revision=55751
2012-02-20 11:47:46 +00:00
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
c2d0d784c7
[USB-BRINGUP-TRUNK]
...
- Create a branch to do a proper merge of USB work from a trunk base instead of from cmake-bringup
- In the future, DO NOT under any circumstances branch another branch. This leads to merge problems!
svn path=/branches/usb-bringup-trunk/; revision=55018
2012-01-20 20:58:46 +00:00
Cameron Gutman
358cc6d2aa
[KBDCLASS]
...
- Add a small hack to bind all keyboard port devices to the same keyboard class device when no default setting is present (circumvents win32k not supporting multiple keyboard class FDOs)
svn path=/trunk/; revision=54120
2011-10-13 21:38:07 +00:00
Cameron Gutman
89107a6e11
[KBDCLASS/MOUCLASS]
...
- Better fix for the race condition
svn path=/trunk/; revision=54042
2011-10-07 05:52:52 +00:00
Cameron Gutman
8b969e61ec
[KBDCLASS/MOUCLASS]
...
- Fix a race condition in IRP queuing that can cause an assertion to fail in the cancellation routine
svn path=/trunk/; revision=54041
2011-10-07 05:23:16 +00:00
Amine Khaldi
2817ba1e7e
* Comment out some unused but set variables, remove some others.
...
* Allow warnings for some 3rd party code.
svn path=/trunk/; revision=53693
2011-09-11 16:56:56 +00:00
Michael Martin
56cc203023
- CreateClassDeviceObject/ClassAddDevice: Do not create KeyboardClass device with exclusive access as it will prevent key loggers from working.
...
svn path=/trunk/; revision=41054
2009-05-23 01:37:34 +00:00
Aleksey Bragin
b988d2bd3d
- Move part of the 1st stage pnp hacks to kbdclass driver. Previously, the driver (i8042prt) relied on kbdclass's normal reinit routine being called BEFORE a registered boot reinit routine, which is certainly wrong on a real NT system.
...
- Now, the correct order is ensured, and it is not relying on a broken reinit calling order in ReactOS anymore.
svn path=/trunk/; revision=39856
2009-03-03 12:06:57 +00:00
Dmitry Gorbachev
ebaf0cf88c
Silence compiler warnings (4/11).
...
svn path=/trunk/; revision=37826
2008-12-03 17:29:38 +00:00
KJK::Hyperion
1bd07ee187
modified include/reactos/probe.h
...
Workaround for gcc 4.1.3. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7
modified ntoskrnl/include/internal/mm.h
gcc 4.3.2 doesn't like to be told to inline MmAcquirePageListLock
modified ntoskrnl/include/internal/probe.h
Cleaning up after TSVN's buggy "apply patch"
modified subsystems/win32/win32k/ntuser/message.c
Silence a gcc 4.3.2 warning (possibly incorrectly)
modified dll/directx/ddraw/ddraw.rbuild
modified dll/win32/gdi32/gdi32.rbuild
modified dll/win32/kernel32/kernel32.rbuild
modified dll/win32/psapi/psapi.rbuild
modified dll/win32/setupapi/setupapi.rbuild
modified dll/win32/syssetup/syssetup.rbuild
modified dll/win32/user32/user32.rbuild
modified drivers/input/kbdclass/kbdclass.rbuild
modified drivers/input/mouclass/mouclass.rbuild
modified drivers/network/afd/afd.rbuild
modified drivers/network/tcpip/tcpip.rbuild
modified lib/rtl/rtl.rbuild
modified subsystems/win32/win32k/win32k.rbuild
modified subsystems/win32/win32k/objects/gdiobj.c
gcc 4.1.3 workarounds. See embedded comments
modified base/services/eventlog/eventlog.h
modified dll/win32/advapi32/advapi32.h
Removed superfluous includes of pseh/pseh.h
modified dll/directx/ddraw/Ddraw/ddraw_displaymode.c
modified dll/directx/ddraw/Ddraw/ddraw_main.c
modified dll/directx/ddraw/Ddraw/ddraw_setcooperativelevel.c
modified dll/directx/ddraw/Ddraw/GetCaps.c
modified dll/directx/ddraw/Ddraw/GetDeviceIdentifier.c
modified dll/directx/ddraw/main.c
modified dll/directx/ddraw/rosdraw.h
modified dll/directx/ddraw/Surface/surface_main.c
ddraw migrated to PSEH 2.0
modified dll/win32/gdi32/include/precomp.h
modified dll/win32/gdi32/misc/misc.c
modified dll/win32/gdi32/objects/bitmap.c
gdi32 migrated to PSEH 2.0
modified dll/win32/kernel32/except/except.c
modified dll/win32/kernel32/file/find.c
modified dll/win32/kernel32/k32.h
modified dll/win32/kernel32/mem/isbad.c
modified dll/win32/kernel32/misc/console.c
modified dll/win32/kernel32/process/procsup.c
modified dll/win32/kernel32/string/lstring.c
modified dll/win32/kernel32/thread/thread.c
kernel32 migrated to PSEH 2.0
modified dll/win32/psapi/precomp.h
modified dll/win32/psapi/psapi.c
psapi migrated to PSEH 2.0
modified dll/win32/setupapi/cfgmgr.c
modified dll/win32/setupapi/setupapi_private.h
setupapi migrated to PSEH 2.0
modified dll/win32/syssetup/wizard.c
syssetup migrated to PSEH 2.0
modified dll/win32/user32/include/user32.h
modified dll/win32/user32/windows/class.c
modified dll/win32/user32/windows/text.c
modified dll/win32/user32/windows/window.c
user32 migrated to PSEH 2.0
modified drivers/input/kbdclass/kbdclass.c
modified drivers/input/kbdclass/kbdclass.h
kbdclass migrated to PSEH 2.0
modified drivers/input/mouclass/mouclass.c
modified drivers/input/mouclass/mouclass.h
mouclass migrated to PSEH 2.0
modified drivers/network/afd/afd/info.c
modified drivers/network/afd/afd/lock.c
modified drivers/network/afd/afd/tdi.c
modified drivers/network/afd/afd/tdiconn.c
afd migrated to PSEH 2.0
modified drivers/network/lan/lan/lan.c
lan migrated to PSEH 2.0
modified drivers/network/tcpip/tcpip/dispatch.c
tcpip migrated to PSEH 2.0
modified lib/rtl/debug.c
modified lib/rtl/res.c
modified lib/rtl/rtl.h
modified lib/rtl/unicode.c
modified lib/rtl/workitem.c
rtl migrated to PSEH 2.0
modified ntoskrnl/include/precomp.h
ntoskrnl migrated to PSEH 2.0
modified subsystems/csr/csrsrv/api.c
csrsrv migrated to PSEH 2.0
modified subsystems/win32/win32k/eng/bitblt.c
modified subsystems/win32/win32k/eng/mem.c
modified subsystems/win32/win32k/include/mmcopy.h
modified subsystems/win32/win32k/misc/copy.c
modified subsystems/win32/win32k/ntuser/callback.c
modified subsystems/win32/win32k/ntuser/class.c
modified subsystems/win32/win32k/ntuser/clipboard.c
modified subsystems/win32/win32k/ntuser/cursoricon.c
modified subsystems/win32/win32k/ntuser/display.c
modified subsystems/win32/win32k/ntuser/hook.c
modified subsystems/win32/win32k/ntuser/input.c
modified subsystems/win32/win32k/ntuser/kbdlayout.c
modified subsystems/win32/win32k/ntuser/menu.c
modified subsystems/win32/win32k/ntuser/misc.c
modified subsystems/win32/win32k/ntuser/ntstubs.c
modified subsystems/win32/win32k/ntuser/painting.c
modified subsystems/win32/win32k/ntuser/simplecall.c
modified subsystems/win32/win32k/ntuser/sysparams.c
modified subsystems/win32/win32k/ntuser/window.c
modified subsystems/win32/win32k/objects/bitblt.c
modified subsystems/win32/win32k/objects/bitmaps.c
modified subsystems/win32/win32k/objects/brush.c
modified subsystems/win32/win32k/objects/cliprgn.c
modified subsystems/win32/win32k/objects/color.c
modified subsystems/win32/win32k/objects/coord.c
modified subsystems/win32/win32k/objects/dc.c
modified subsystems/win32/win32k/objects/dcutil.c
modified subsystems/win32/win32k/objects/dibobj.c
modified subsystems/win32/win32k/objects/fillshap.c
modified subsystems/win32/win32k/objects/font.c
modified subsystems/win32/win32k/objects/freetype.c
modified subsystems/win32/win32k/objects/icm.c
modified subsystems/win32/win32k/objects/line.c
modified subsystems/win32/win32k/objects/path.c
modified subsystems/win32/win32k/objects/pen.c
modified subsystems/win32/win32k/objects/print.c
modified subsystems/win32/win32k/objects/region.c
modified subsystems/win32/win32k/objects/text.c
modified subsystems/win32/win32k/pch.h
win32k migrated to PSEH 2.0
svn path=/trunk/; revision=37776
2008-11-30 19:28:11 +00:00
Hervé Poussineau
242b0d5be5
Replace DPRINT/DPRINT1 by dynamic traces
...
svn path=/trunk/; revision=34791
2008-07-25 20:24:46 +00:00
KJK::Hyperion
b16ac9683a
- Remove WINE-isms from KeDeviceQueue code
...
- Fix memory corruption that happened pretty much everytime you pressed a key or moved the mouse -- reponsible for countless crashes, including the famous ASSERT during 1-stage setup.
- Remove anti-memory-corruption-workaround from VFAT
- Note: If you're going to do use device queues in your driver, please learn how. Kthxbye.
Patch by Alex Ionescu <alex.ionescu@reactos.org>
_____
Alex,
Marry me,
KJK::Hyperion
XOXOXO
See issue #3116 for more details.
svn path=/trunk/; revision=33633
2008-05-22 11:46:46 +00:00
Hervé Poussineau
28e9a590db
Fix indentation, to match mouclass one.
...
svn path=/trunk/; revision=33431
2008-05-11 10:03:52 +00:00
Filip Navara
a173ef04c2
A driver-supplied Cancel routine is called with the cancel spin lock held, it must be released on IRP completion. Patch by R.T.Sivakumar <rtshiva@gmail.com>.
...
svn path=/trunk/; revision=33429
2008-05-11 09:47:57 +00:00
Hervé Poussineau
fae0c09e4b
Report STATUS_NOT_SUPPORTED when IOCTL is not supported
...
svn path=/trunk/; revision=30068
2007-11-02 13:01:15 +00:00
Hervé Poussineau
426db02b5b
Support IRP cancellation
...
svn path=/trunk/; revision=30066
2007-11-02 12:36:50 +00:00
Daniel Reimer
ae7da04787
Delete all Trailing spaces in code.
...
svn path=/trunk/; revision=29690
2007-10-19 23:21:45 +00:00
Christoph von Wittich
9f79a749af
Never call IoCompleteRequest while holding a spin lock. Attempting to complete an IRP while holding a spin lock can cause deadlocks.
...
svn path=/trunk/; revision=27429
2007-07-06 17:14:24 +00:00
Hervé Poussineau
1cf915a077
ZeroMemory the correct amount of bytes
...
svn path=/trunk/; revision=27398
2007-07-05 07:05:05 +00:00
Christoph von Wittich
7f02b7b93c
ZeroMemory the correct amount of bytes
...
svn path=/trunk/; revision=27397
2007-07-05 01:24:57 +00:00
Hervé Poussineau
6b63d35926
Use a tag when allocating/freeing some memory
...
svn path=/trunk/; revision=26990
2007-06-04 09:25:04 +00:00
Hervé Poussineau
0423e310b2
Fix warnings
...
svn path=/trunk/; revision=26128
2007-03-18 00:27:02 +00:00
Hervé Poussineau
4670093f37
Fix default data sent to RtlQueryRegistryValues
...
svn path=/trunk/; revision=26124
2007-03-17 20:53:05 +00:00
Hervé Poussineau
c4a6f8d938
Fix calling convention for class callbacks
...
svn path=/trunk/; revision=24567
2006-10-18 22:40:39 +00:00
Hervé Poussineau
3674f2ef32
Fix 2 typos (spotted by Fireball)
...
svn path=/trunk/; revision=24367
2006-10-02 19:36:14 +00:00
Hervé Poussineau
b606a6771c
Do not expect a call to AddDevice with a NULL Pdo. Those are not guaranteed
...
svn path=/trunk/; revision=24323
2006-09-30 22:41:23 +00:00
Hervé Poussineau
2c59aa9330
- kbdclass/mouclass should be able to return more than one keystroke/mouse move during a IRP_MJ_READ.
...
- Better cleanup in case of error in ClassAddDevice
- Registering the interface is optional. Don't fail in case of error.
svn path=/trunk/; revision=23129
2006-07-17 22:13:40 +00:00
Magnus Olsen
64e3f510fe
Tempary fixing kbdclass and mouse class u can not call on IoDeleteDevice before disabler the keyboard or mouse driver other wise it will bsod at shoutdown of ReactOS, create the frist boot problem. that we have seen on BootCD; Hpoussin I have comment out iodevice for now, please look at it when u got time.
...
svn path=/trunk/; revision=23068
2006-07-15 20:14:44 +00:00
Hervé Poussineau
d0bbf9199b
In case of error, free the input data buffer only if we just allocated it.
...
svn path=/trunk/; revision=23052
2006-07-13 22:20:54 +00:00
Hervé Poussineau
05917e3fee
Don't change PortData pointer, as it is allocated memory, and so, it is easier to free it when needed.
...
svn path=/trunk/; revision=23010
2006-07-11 13:38:59 +00:00
Hervé Poussineau
1a5e9cdfd8
Don't be so aggressive in debug messages.
...
svn path=/trunk/; revision=22664
2006-06-27 11:09:23 +00:00
Hervé Poussineau
28ab30ea8d
Don't call IoRaiseHardError at DISPATCH_LEVEL
...
svn path=/trunk/; revision=21791
2006-05-03 14:42:28 +00:00
Hervé Poussineau
fbd4530bfa
Complete IRP_MJ_CREATE, IRP_MJ_CLOSE, IRP_MJ_CLEANUP
...
Use correct buffer when filling read request. Use SEH when needed
Correctly propagate DO_BUFFERED_IO, DO_DIRECT_IO and FILE_DEVICE_SECURE_OPEN flags
svn path=/trunk/; revision=21741
2006-04-25 22:22:22 +00:00
Hervé Poussineau
99ea202a07
Don't dereference device objects if they were not referenced
...
Remove one hack from kbdclass
svn path=/trunk/; revision=21708
2006-04-22 14:08:43 +00:00
Hervé Poussineau
31dc05f5f1
kbdclass and mouclass:
...
- Better synchronization of code between kbdclass and mouclass
- Better cleanup in ClassAddDevice in case of error
- Better support of legacy devices
kbdclass only:
- Send IOCTLs to lower device
svn path=/trunk/; revision=21599
2006-04-16 07:17:34 +00:00
Hervé Poussineau
a40d0cc620
Disable some more code that may crash. I'll look at it later
...
svn path=/trunk/; revision=21196
2006-02-26 12:22:40 +00:00
Hervé Poussineau
49da356967
Revert simplification of SearchForLegacyDrivers done in r21188, because it breaks bootcd
...
svn path=/trunk/; revision=21195
2006-02-26 12:14:48 +00:00
Hervé Poussineau
2c5b094ca5
Send IOCTL_* to the port device objects. Keyboard LEDs should now work
...
Simplify code in SearchForLegacyDrivers
svn path=/trunk/; revision=21188
2006-02-24 13:38:14 +00:00
Hervé Poussineau
6402246022
Replace STATUS_UNSUCCESSFUL by STATUS_TOO_MANY_NAMES
...
svn path=/trunk/; revision=20526
2006-01-02 11:32:03 +00:00
Hervé Poussineau
290837445f
Fix little bug which prevented IRP_MJ_PNP to be forwarded to lower driver
...
Set eol-style to native for usbstor driver files
svn path=/trunk/; revision=20256
2005-12-18 20:50:26 +00:00
Hervé Poussineau
0bfe9a412e
Revert 19324 and part of 19325...
...
svn path=/trunk/; revision=19328
2005-11-18 20:35:42 +00:00
Hervé Poussineau
e253c1b277
- Don't use buffered I/O, to prevent some lag
...
- mouclass: Change the critical section place, to follow changes done in kbdclass in r19322
svn path=/trunk/; revision=19325
2005-11-18 17:28:19 +00:00
Art Yerkes
82beaf2b2a
Fixed skipped events from keyboard:
...
- Wait for IO if it would be pending
- Don't copy into UserBuffer directly in read because it'll be
overwritten. Use Irp->AssociatedIrp.SystemBuffer.
svn path=/trunk/; revision=19322
2005-11-18 10:53:32 +00:00
Hervé Poussineau
c8a200b0f6
- Add registry entry in HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP for each keyboard class DO
...
- Don't search for legacy port drivers in DriverEntry, but in first AddDevice
- Don't dereference non-referenced objects
svn path=/trunk/; revision=19094
2005-11-09 11:15:42 +00:00
Hervé Poussineau
1974f400e3
When a driver is a legacy driver, call its AddDevice function with a NULL Pdo
...
svn path=/trunk/; revision=19059
2005-11-08 17:20:58 +00:00
Hervé Poussineau
cfd5a15157
Revert Kdb and Keyboard strings in name to share more code with mouclass
...
Fix PORT_DEVICE_EXTENSION and CLASS_DEVICE_EXTENSION structures and use them correctly (PORT_DEVICE_EXTENSION was not used...)
ObDereference DOs when an error occurs, instead of ObReferencing them
svn path=/trunk/; revision=19010
2005-11-05 08:21:59 +00:00