Commit Graph

18094 Commits

Author SHA1 Message Date
Stefano Ceccherini
7184af5e4e improved keyboard text selection.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 10:01:07 +00:00
Michael Lotz
099dab0753 * Fixed device creation. No pipes for device endpoints are created and the initial handle of all endpoints is 0.
* The endpoint pipes of a configuration are now created when the configuration is actually set.
* Implemented an Unconfigure() function that tears down any pipe that was created for that configuration.
* Implemented the device destructor that unconfigures and frees the resources allocated for the various usb_*_info structures.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 19:09:01 +00:00
Andrew Galante
0054baf8c9 A few bugfixes to prepend_size and append_size so they don't create unnecessary empty nodes. Minor cleanup to ipv4.cpp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 18:56:06 +00:00
Axel Dörfler
646182be71 * When specifying invalid arguments, an error message is now printed. This fixes bug #714.
* Removed some useless information.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 18:00:35 +00:00
Axel Dörfler
b631d2f40d * Fixed the bug Bruno observed (and worked around) in a safer way - the node data was
not written back before GetNextSmallData() was called (which let the region appear
  empty even though it wasn't).
* I left the shortcut in case of the "name" attribute in there, because it should
  be a bit faster.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 13:10:13 +00:00
Jérôme Duval
6867aa9263 uses cmath and cstring instead of string.h and math.h (thanks Stefano!)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 08:38:56 +00:00
Jérôme Duval
1ba8377d45 releases the team lock even when group is NULL
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 08:30:15 +00:00
Axel Dörfler
cc347633b9 This fixes bug #851 - GLTeapot unlocks the window before indirectly calling
BWindow::UpdateIfNeeded(); BPopUpMenu::Go() should be independent of this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 21:06:20 +00:00
Michael Lotz
00f6fab931 * Implemented a notification method for BusManagers so that they can be notified of pipe changes (creation, destruction, changed settings).
This is necessary in OHCI and will probably be used in EHCI also to keep one endpoint construct for each pipe open instead on creating and deleting it for each transfer.
* Pseudo implemented set_pipe_policy for isochronous pipes that makes use of the new notification system.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 20:51:31 +00:00
Jérôme Duval
4a718fa33d fix for gcc4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 17:24:00 +00:00
Stefano Ceccherini
9205b41148 fixed word by word selection
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 15:07:19 +00:00
Stefano Ceccherini
6343dc9855 Implemented working asynchronous mouse tracking, dropped synchronous tracking. Selecting text is now also much faster. Auto scrolling is missing for the moment, though
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 14:41:53 +00:00
Axel Dörfler
d9766fe30b * Changed team_get_process_group_locked() to have a session parameter instead
of a team to avoid confusion. It now also accepts a NULL session pointer in
  which case the actual group's session doesn't matter.
* Fixed the race condition in send_signal_etc() that could allow accessing an
  invalid team pointer.
* Jerome's earlier change already fixed bug #841, and this also fixed bug #855.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 12:51:59 +00:00
Jérôme Duval
8e70f1aa5b adding default value for suspend key : CTRL(Z)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 23:38:19 +00:00
Jérôme Duval
dc0bf743e1 fix the build for the stage 2 pxe
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 22:35:35 +00:00
Jérôme Duval
9e418a490b added missing headers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 22:00:53 +00:00
Jérôme Duval
e40bb774b2 we have wcwidth()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 21:57:13 +00:00
Jérôme Duval
afa5a46239 replaced use of vector with BList
enables to build correctly with gcc4


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 21:53:56 +00:00
Jérôme Duval
e2ba090e41 fixed some gcc4 warnings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 21:49:41 +00:00
Jérôme Duval
3354a9cc67 B_MESSAGE_NOT_UNDERSTOOD is better than B_ERROR for what fields
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 21:21:28 +00:00
Jérôme Duval
ccc3d07d9e match BView::Archive() signature, avoids a warning with gcc4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 21:18:49 +00:00
Jérôme Duval
c7580d1694 put back errors in scripting replies : it's part of the BeOS behavior
MethodReplicant is now working again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 20:27:19 +00:00
Jérôme Duval
dd24c10596 fix warning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 20:21:32 +00:00
Michael Lotz
a183e86663 Oops, this was the very conservative value. Testing with my laptop (that has a slow EHCI controller) reveals that we need some more room here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 19:13:59 +00:00
Michael Lotz
4330ef22d5 * Added retries to the PhysicalMemoryAllocator. Memory is allocated and freed at a very high frequency, so low memory conditions shouldn't last very long.
* Added a separate thread for cleaning up EHCI transfers. This makes it possible to actually always wait for the async advance interrupt without hindering execution of transfers.
This pushes performance again and fixes the bug I introduced in the last change, that we could free yet cached descriptors when a previous async advance timed out.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 18:52:50 +00:00
Niels Sascha Reedijk
e26f3a113f Now the ports are powered on and seem to work...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 17:55:21 +00:00
Niels Sascha Reedijk
43a747b5d0 Fix error codes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 16:46:28 +00:00
Marcus Overhagen
c69902c5fc initial attempt to build platform target pxe_ia32
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 16:40:38 +00:00
Marcus Overhagen
c6bbe85233 make boot loader platform dependant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 15:52:46 +00:00
Marcus Overhagen
fa38d53374 make boot loader platform dependant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 15:51:02 +00:00
Marcus Overhagen
bf905142eb make boot loader platform dependant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 15:50:41 +00:00
Marcus Overhagen
97de040e29 make boot loader platform dependant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 15:49:10 +00:00
Marcus Overhagen
88dde23969 just start a little higher
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 14:48:37 +00:00
Marcus Overhagen
931460f676 copied from boot_loader.ld
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 14:32:16 +00:00
Marcus Overhagen
d68ec99f12 copied from src/system/boot/platform/bios_ia32/Jamfile
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 14:28:58 +00:00
Niels Sascha Reedijk
2159acc7d9 Implemented most of the roothub.
There remains only one issue: reading the Port registers seem to return a bogus value (0). I need to find out what's causing it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 14:26:22 +00:00
Marcus Overhagen
36020a912d copied from src/system/boot/platform/bios_ia32/shell.S
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-25 14:25:58 +00:00
Michael Lotz
17f83b219d * Switched from the old v2 callback status codes to the new v3 codes
This means that the usb_callback_func now takes a status_t instead of a uint32 status.
Also the error codes are now different. I don't see this as a real problem in binary compatibility, as the status codes were never really documented and most drivers just assumed that a nonzero status meant an error.
Source compatibility breaks for callback functions and error defines. I fixed (hopefully) all places in the tree that are currenty included in the image and affected by the change.
* Corrected error reporting in UHCI and EHCI using the new status codes.
* Fixed a memory leak in EHCI where the async advance interrupt was not triggered in time.
* Fixed another race condition in usb_raw that could cause a crash when a device is removed while a transfer is pending.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18916 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-24 20:17:56 +00:00
Michael Lotz
8a278a1bb7 * Fixing my previous attempt at fixing cookie handling. Device addresses cannot be used, since there may be devices with the same address across different busses. A linked list of usb_driver_cookies is maintained now that relates devices and cookies.
* Fixed endpoint halt clearing. The data toggle has to be reset when we clear a stall.
* Now using up to B_PAGE_SIZE * 4 sized buffers in EHCI. They are split automatically by the host controller. This further pushes throughput.
* Optimize memory allocator settings for the above case. Enlarging it's managed space to 1MB
* Ignore the transaction error bit in EHCI. It is only of informational character as it also idicates errors that were recovered automatically. If an unrecoverable error occures, other bits will indicate this.
* Fixed some more print formats in debug output.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-24 15:30:04 +00:00
Jérôme Duval
9f6275e0e4 fixed build for gcc4, from eNigMa
tested also for gcc2.95


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-23 22:02:21 +00:00
Michael Lotz
4205612012 * Made usb_raw more robust and correct when handling rescans and adding/removing devices
* Fixed warnings when debug output is on
* Disabled debug output

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-23 17:28:34 +00:00
Michael Lotz
90b9fb4fbc * Fixed notify cookie handling. There is not one cookie per device, but one per device/driver combination
* Fixed SetFeature/ClearFeature/GetStatus for interfaces by adding the respective interface number
* Added driver rescanning mechanism (taken from bin/rescan)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-23 17:24:23 +00:00
Jérôme Duval
c4cc0591f1 fixed some warnings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-23 14:05:40 +00:00
Jérôme Duval
0de38aa00b added needed symbols for gcc4 linking
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-23 14:01:49 +00:00
Bruno G. Albuquerque
7676dedf57 Fixed live query notification for new files being created. It seems using Inode::GetName() in the middle of a transaction is not a good idea.
Axel, can you check if we really need to keep the old code there as it is now or if we can
completelly remove it? I think we can but maybe there is some case I did not consider.


		// We have to special-case the name attribute here because
		// Inode::Getname will return NULL as we are in the middle
		// of the transaction at this point when a new file is
		// created. We just use newKey which happens to contain
		// the new file name anyway.
		//
		// TODO: Check if there is any sense in leaving this if
		// statement as it is or if we can completelly remove the
		// original code.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-22 02:55:54 +00:00
Marcus Overhagen
a3487fdca2 fix broken build (errno was undefined)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 15:57:37 +00:00
Marcus Overhagen
9993ff374a load stage 2 image at address 1MB and execute it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 15:53:43 +00:00
Jérôme Duval
9da04493a9 return errno on open() error
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 13:17:35 +00:00
Jérôme Duval
ee670e9ce2 simplified syntax
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 13:05:39 +00:00
Jérôme Duval
80f3aa2d2b style cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 13:04:59 +00:00