Commit Graph

21323 Commits

Author SHA1 Message Date
François Revol
c61ea1148f Fix gcc4 error about lvalue... this doesn't look clean anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 11:59:34 +00:00
Michael Lotz
e2bccb3352 Fix R5 build of USB stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25693 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 07:23:02 +00:00
Rene Gollent
d5ef3b7318 Some minor style cleanups, and some other changes I managed to miss. This gets legacy_sata registering correctly here, and appears to work as far as I can tell.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 03:54:40 +00:00
Ingo Weinhold
2b07b8e0f1 * Replaced all instances of benaphores in the kernel code by mutexes.
* Removed kernel benaphores.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 02:08:23 +00:00
Ingo Weinhold
1c18a5df87 Replaced R/W lock implementation. Should have a little less overhead
than a semaphore, and can already be used in the early boot process.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 00:32:06 +00:00
Rene Gollent
f678c84aff Port legacy_sata to new driver architecture. However, based on device manager's kernel debugger output it's still using the generic_ide driver for my controller instead. Axel, please review.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 23:27:11 +00:00
Ingo Weinhold
b0f5179aa5 * Changed recursive_lock to use a mutex instead of a semaphore.
* Adjusted code using recursive locks respectively. The initialization
  cannot fail anymore, and it is possible to use recursive locks in the
  early boot process (even uninitialized, if in BSS), which simplifies
  things a little.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 23:12:36 +00:00
Oliver Ruiz Dorantes
96f4720393 Add into compilation remaining bluetooth components:
- server
- command tools
- H2 transport driver

Patch by Adrien Destugues and Andreas Faerber



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 21:33:22 +00:00
Ingo Weinhold
f2be4e8c4d Patch by Vasilis Kaoutsis: Fixed warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 15:30:27 +00:00
Ingo Weinhold
d46a010c43 Patch by Vasilis Kaoutsis: Added sigpause().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 15:28:49 +00:00
Axel Dörfler
3023ab11f7 Patch by Jan Klötzke:
* Improve vm86 mode tracing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 12:44:56 +00:00
Axel Dörfler
9f16184577 Patch by Jan Klötzke with minor changes by myself:
* Use vm86 mode to call the VESA BIOS to do the actual mode switching by
  providing an ioctl in the vesa driver.
* Fix vm86.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 10:48:01 +00:00
Axel Dörfler
2c8b410ad5 Patch by Jan Klötzke:
* Current linking scheme does not always export arch specific symbols from the
  kernel. Merging all compiled arch stuff into a single .o file (and linking
  that to the kernel) fixes it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 10:08:07 +00:00
Axel Dörfler
d1588bb543 * Adapted the silicon_image_3112 driver to the new device manager.
* Removed std_ops(), as it wasn't used for anything, and is optional in Haiku.
* ide_isa, and legacy_sata are still waiting for the same set of changes :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25678 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 08:58:15 +00:00
Rene Gollent
585080d740 Corrected with input from Ingo. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 00:35:33 +00:00
François Revol
d4a25c07df Split isa bus manager to arch-specific part, that has been sitting here for a while...
PPC version must be fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25676 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 23:45:04 +00:00
Ingo Weinhold
0e82c8d555 Improved the "caches" command:
* List the sum of pages used by a cache tree in the line printed for the
  root cache.
* Also print the amount of committed memory per cache (and the sum for
  the tree), and allow sorting the list by it ("-c" switch).
* Added usage text.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 23:23:01 +00:00
Rene Gollent
aa9d957d57 FreeBSD build fix, please review (needed for definition of FSSH_SEEK_CUR).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 23:02:06 +00:00
Axel Dörfler
4d59d7457b Patch by James Woodcock:
* enables user-mode packet filters in the pcap library.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 15:20:29 +00:00
Ingo Weinhold
a55e32e52d * Moved fssh_lseek() out of the FSShell namespace.
* Removed debug left-over.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 13:28:58 +00:00
Axel Dörfler
2976912a51 * BaseDevice didn't initialize the fInitialized member, and thus causing bug
#2265.
* Device::InitDevice()/UninitDevice() are called from outside of the device
  manager, so they better lock it.
* Turned off debug output in devfs and the device manager.
* Fixed debug output in devfs to print the actual vnode/cookie values, instead
  of the structures the VFS passes in now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 12:04:09 +00:00
Axel Dörfler
ce2ba4187b * Added SHINTA to the list of contributors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 21:21:12 +00:00
Axel Dörfler
ef850bad9b Converted the ATA bus manager to the new driver architecture; did not test it
yet, though, as this machine takes a bit longer compiling...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25668 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 21:09:35 +00:00
Axel Dörfler
4584521e0b * PCI_mass_storage_other no longer scans the non-existing busses/disk path, but
all busses now. This should help with broken controllers that don't advertize
  their capabilities correctly.
* Maybe we want to have a list that translates some types for certain devices,
  too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 21:03:32 +00:00
Maurice Kalinowski
ac1d597e94 gcc4 build fix. Don't have default value for declaration+definition. Build is still broken...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25666 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 20:49:22 +00:00
Michael Lotz
3c72cf643a Fix extern/static declaration of usb_hid_device_* functions. Should fix GCC4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 18:15:13 +00:00
Axel Dörfler
34d976b499 Forgot to remove now unused files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 18:07:04 +00:00
Axel Dörfler
368167ede8 * Integration of the new driver architecture.
* Moved devfs from fs/ to device_manager/, and separated the legacy driver
  support from it.
* Removed fast_log module.
* There are a couple of (temporary) regressions, though:
  - legacy SATA and ISA IDE support is disabled, the drivers haven't been
    ported yet.
  - The not yet used ATA bus manager hasn't been ported yet, either.
  - AHCI changes have not been tested.
  - the listdev command has been removed from the build (as it currently
    doesn't work anymore).
  - device manager generated IDs currently are not freed anymore when a device
    node is removed.
  - generic drivers can't yet use the new driver architecture.
  - simple busses that do not support device types won't work yet.
  - legacy driver publishing/unpublishing (ie. what USB needs) has not been
    tested, and may be broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 16:52:27 +00:00
Axel Dörfler
113a13d83e Print actual floating point number, instead of integer fraction.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 16:13:19 +00:00
Axel Dörfler
1e18692e12 * get_vnode() now accepts a NULL parameter for the fsNode argument.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25660 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 11:32:27 +00:00
Ingo Weinhold
61de73e29c Memory leak in error cases. CID 729.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25659 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 23:41:22 +00:00
Michael Lotz
32ab216c85 * Check for the removed case before doing any transfers.
* Cancel possibly active transfers when removed.
* Do not interpret the transfer buffer in case of an error or removal.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25658 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 22:29:41 +00:00
Michael Lotz
9e48bf8e42 Rewriting the usb_hid driver. It has now gotten a driver part and a device part
structured into the HIDDevice base class and KeyboardDevice and MouseDevice
subclasses. This can be extended easily to support more device types like game
controllers, joysticks and other HID devices. The parsing code remains untouched
while the interpretation code has been integrated into the device classes.
The driver should work much the same way as before including the boot protocol
only keyboard limitation. On the other hand composite devices that combine
multiple devices should now work, as long as they expose those devices as two
seperate interfaces.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 22:01:08 +00:00
François Revol
e26120ae27 Add char * version of ReadFrames, for compatibility with some R5 games.
Patch by genki0. I didn't see any reason not to commit it, so...
This should fix #897.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 21:45:32 +00:00
Michael Lotz
c2f077d03e * Clear the configurations list so it can safely be handled in case the device
fails to init completely.
* Fix wrong usage of realloc and check the allocations.
* Check a few more allocations, should be all now.
* Fix a small memory leaks in error case.
* Do a few more checks when unconfiguring and deleting a device so an incompletely
  initilized device is deleted correctly and does not crash or leak.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 15:11:34 +00:00
Marcus Overhagen
d53ddcce75 Provide better sense data. Turn off auto-sense
for ATAPI, as we can't report anything.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25653 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 23:08:11 +00:00
Marcus Overhagen
205acfb4dc first attempt to report sense data
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25652 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 22:34:40 +00:00
Marcus Overhagen
ad36dc4f21 Set the correct SCSI data direction mask.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 21:46:30 +00:00
Marcus Overhagen
b54c709405 Use scsi direction mask to determine if the command to execute is a write,
instead of checking every single command.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 21:27:44 +00:00
Marcus Overhagen
ec5161c7b2 add more error handling
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25649 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 20:40:32 +00:00
Marcus Overhagen
88bd06fbc7 Separate port and device reset. Only perform device reset during error handling if the device is busy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25648 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 20:35:22 +00:00
Marcus Overhagen
c3342cf811 added simple error handling
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 19:17:17 +00:00
Ingo Weinhold
5839058aa9 Memory leak in error cases. CID 737.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 16:29:53 +00:00
Ingo Weinhold
d2e55e94c0 Memory leak in error case. CID 807.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 16:23:22 +00:00
Ingo Weinhold
a1e3759f69 Memory leak in error cases. CID 808.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 16:17:56 +00:00
Ingo Weinhold
cefcb7b41c Memory leak in error case. CID 872.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 16:07:29 +00:00
Ingo Weinhold
7ad3cf0bc3 Memory leak in error case. CID 873.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 16:04:57 +00:00
Ingo Weinhold
06a28b5416 BFilePanel doesn't take over ownership of the supplied messenger, so it
was leaked. CID 881.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 15:56:54 +00:00
Ingo Weinhold
7dd1df01f9 Fixed memory leak (though not so interesting, since the strace would
exit in this case anyway). CID 985.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 15:42:39 +00:00
Ingo Weinhold
9dec848f8d Fixed memory leak. Discovered by Coverity (CID 1013).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 15:36:25 +00:00