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
Jérôme Duval
74ef7b9cb8
forgot these files, gcc4 build fix
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 12:39:49 +00:00
Jérôme Duval
310afb92a6
fixed gcc4 build: these modules stdc++ headers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 12:35:21 +00:00
Jérôme Duval
03f56b4655
fix build with gcc4 because of libstdc++
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 12:31:46 +00:00
Jérôme Duval
c332e7f74e
fixed build for R5 : now uses inttypes.h because it's present on R5 also
...
HaikuBuildCompatibily.h exposes INT64_MAX based on limits.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 12:29:49 +00:00
Niels Sascha Reedijk
5fe9705942
Fix the fix
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 08:21:55 +00:00
Niels Sascha Reedijk
1a2f476148
Build broke in r18896. Fix.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 06:57:22 +00:00
Andrew Galante
86780a1f7f
Revamp of the net_buffer code, using a datastore. I removed the data_header struct, but this means having to malloc() all the data_node objects - There may be a speed benefit in storing these in a datastore as well. As a consequence, most of the buffer functions are much simpler, if recursive at times. I don't see this as a big problem, as most buffers will only utilize a few data_nodes at a time.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 02:54:47 +00:00
Andrew Galante
b425ce77ad
A helper datastructure for network buffers. Defines a fixed-size region of same-size data blocks, and maintains a reference count for each
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 02:40:20 +00:00
Marcus Overhagen
46564600a4
Fixed server IP detection. Implemented TFTP file size request and connection setup.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-21 02:15:39 +00:00
Michael Lotz
7145ff1705
* Implemented compatibility workaround for BeOS to be able to write user memory from the kernel finisher thread
...
This fixes crashing of the USB Mass Storage driver under R5. It is fully working there now.
I hope to be able to do this more cleanly under Haiku though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-20 21:12:51 +00:00
Ithamar R. Adema
d912bed187
Fix signature of network preference app
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-20 18:20:53 +00:00
Jérôme Duval
3347e0c60b
links against stdc++ as it could be needed depending of the cpp headers implementation
...
found by eNGIMa on gcc4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-20 15:53:55 +00:00
Jérôme Duval
7d725e0df4
added weak symbols for inet_addr and inet_ntoa, normally exported by libnet.so
...
should be enough for bug #860 , feel free to drop them if a libnet.so is created
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-19 16:17:02 +00:00
Jérôme Duval
d75882bf8b
finally add a good tmpfile function
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-19 14:31:40 +00:00
Jérôme Duval
13510b4105
added oldtmpfile.c to libroot.so, hopefully should fix bug #857
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-19 13:41:01 +00:00
Jérôme Duval
992b9b2b8f
improved tracing handling
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-19 11:41:15 +00:00
Jérôme Duval
65afc3a011
also dump group and session ids
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-19 09:40:09 +00:00
Jérôme Duval
46a7b50c3b
try to better handle signal for teams
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 22:51:07 +00:00
Marcus Overhagen
b8759025a9
PXE stage 1 bootloader for Haiku
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 21:51:07 +00:00
Jérôme Duval
0f15994178
fixed style
...
added copyright header
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 14:31:11 +00:00
Jérôme Duval
64b776286e
reordered declarations to match ACPI.h
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 13:36:54 +00:00
Jérôme Duval
edf0dccab5
added missing api_version symbol
...
fixed debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 13:24:05 +00:00
Jérôme Duval
a0e9b7d3ee
added canna method in an optional directory of the HD image, for testing purpose
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 12:25:36 +00:00
Jérôme Duval
c49e0c68b0
dropped a useless arg of the KernelAddon rule, hope I don't mess anything
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 10:02:13 +00:00
Marcus Overhagen
5c7f19a073
new boot platform
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-18 00:19:11 +00:00
Marcus Overhagen
5858929e12
fixed previous fix
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 17:49:30 +00:00
Marcus Overhagen
891a127fec
various gcc 4 related build fixes
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 17:34:22 +00:00
Marcus Overhagen
3ec18e87d6
various GCC 4 build fixes
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 15:08:41 +00:00
Stefano Ceccherini
d67b1efc99
Fixed broken endlines. This breaks a bit more 'password mode', but it wasn't 100% working yet anyway
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 13:34:15 +00:00
Marcus Overhagen
dad360027a
switch back to local system gcc headers, the outcome is similar unuseable
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 13:32:53 +00:00
Stephan Aßmus
fd49bce12e
* For DrawBitmap(), the bitmap rect needs to be aligned onto pixels
...
just like the view rect. This fixes bug 721.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 11:55:23 +00:00
Marcus Overhagen
6636d6b74f
fixed two warnings
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 01:06:23 +00:00
Marcus Overhagen
20e1d3e5e2
added _Unwind_* to make the gcc 4 linker happy, but I'm not sure if this is the correct way.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-17 00:05:21 +00:00
Marcus Overhagen
12cf623f5c
unified callback parameter definition of size_t and uint32, now uses size_t
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-16 23:35:26 +00:00
Marcus Overhagen
82029bdae8
added missing nothrow parameter
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-16 23:25:56 +00:00
Marcus Overhagen
0ff6a5fd11
removed __declspec
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-16 22:44:35 +00:00
Marcus Overhagen
274b450ab8
gcc 4 only: modified the previous change to allow fallback to local C++ system headers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-16 22:25:49 +00:00