Commit Graph

24798 Commits

Author SHA1 Message Date
Michael Lotz 7d9e7cab36 Also use the interface index when generating the report descriptor dump.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 23:29:26 +00:00
Michael Lotz 9bdf88b686 Even though there is a space after that backslash GCC4 complains...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 23:28:39 +00:00
Michael Lotz f5b3a6a796 * Initialize all static mutexes in the kernel through a MUTEX_INITIALIZER()
and remove the then unneeded mutex_init() for them.
* Remove the workaround for allowing uninitialized mutexes on kernel startup.
  As they are all initialized statically through the MUTEX_INITIALIZER() now
  this is not needed anymore.
* An uninitialized mutex will now cause a panic when used to find possibly
  remaining cases.
* Remove now unnecessary driver_settings_init_post_sem() function.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25812 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 23:19:27 +00:00
Michael Lotz 2b31f85c9e Fix two warnings caused by previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25811 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 22:18:31 +00:00
Stephan Aßmus 171d365edf Honor the 80 chars per line limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 21:17:19 +00:00
Michael Lotz a9fbc5482c Give the debugger add-ons a chance when reading input characters. They already
got a debugger_getchar hook, it just wasn't used yet. Not that there would be
any debugger add-on implementing that hook currently...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25809 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 21:16:34 +00:00
Michael Lotz 22b2f0e6b5 * Panic when trying to lock a mutex twice from the same thread. Should make
mutex deadlocks more obvious.
* Fix wrong function name in panic string.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25808 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 21:01:47 +00:00
Michael Lotz 065ef7eb5f Replace the legacy driver mutex with a recursive lock. This fixes the deadlock
when hot-plugging a USB mass storage device. The legacy driver (usb_disk in
this case) was rescanned which locked the legacy driver mutex. The insertion
of the new device node caused the disk device manager (notified through node
monitoring) to try to scan the new node. As opening the node triggers
LegacyDevice::InitDevice() that locks the legacy driver mutex again a deadlock
occured.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25807 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 18:58:03 +00:00
Michael Lotz 2c19d5ec25 * Add Dvorak keymap contributed by Darian Rackham, thanks!
* Cleanup the license header and add authors
* Sort the available keymaps list in the config file and add 'dv'

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 16:34:30 +00:00
Jérôme Duval 53e6934549 converted acpi to the new device architecture
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-04 23:05:02 +00:00
Michael Lotz 9223644a02 Add a welcome message including the revision number when initializing the
syslog so syslogs always contain the revision number too (as does serial
output).
This is only necessary because the early part of the serial output (that
contains the revision number) does not make it into the syslog. So fixing that
might be the better way.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-04 18:37:29 +00:00
Michael Lotz 01e46bdb18 * Extract the KDL keymap to a separate header and provide a 'sg' swiss german
keymap there too.
* Add a config header where one can select what KDL keymap should be used
  (currently only 'us' and 'sg' are available though).
* Provide a third keymap that is used when the alt modifier is used (the swiss
  german keymap is pretty useless without alt as all the useful keys like
  backslash and curly braces use alt).

Our KDL is so powerful and nice to use, the only thing that bothered me was
that I always had to think about where some of the special keys are located in
the US keymap. So this simple compile-time keymap switching provided to be
helpful for me and might be for others too. Keymaps for other layouts obviously
have to be written before this becomes really useful.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-04 17:56:30 +00:00
Axel Dörfler d11a6916ee More or less completed the introduction. I would just want to add the image,
and publish it on the website - comments are still welcome, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-04 11:40:00 +00:00
Axel Dörfler fd7ff3cfc8 * While it's okay to allow nodes with fixed children to register their own
children, you either have dynamic or fixed children, never both.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-04 10:50:06 +00:00
Axel Dörfler 0dedf9f081 * Removed the now superfluous pnp_devfs.h header.
* There was a leftover in devfs that still needed it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-04 10:38:59 +00:00
Jérôme Duval 5b8d33bd75 * some typos
* a driver can register children and have a fixed child (ie for a bus manager).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 21:05:58 +00:00
Jérôme Duval a5f249c795 use the typedef
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 20:13:59 +00:00
Rene Gollent 6cd1b6f737 Fix GCC4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25797 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 19:24:56 +00:00
Axel Dörfler 84a1454548 * Fixed warnings, and turned off debugging output.
* This fixes bug #2274.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 19:06:57 +00:00
Axel Dörfler 199893c3f3 Applied patch by Jan Klötzke with some changes by myself:
* The vesa driver/accelerant supports mode switching now. No special handling
  is needed anymore.
* Always write the vesa settings file to directly start with the right
  resolution regardless of the used graphics driver. Should save an additional
  mode switch while booting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25795 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 18:59:12 +00:00
Axel Dörfler a2e19c60e2 This should have been part of r25793.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 17:45:54 +00:00
Axel Dörfler 6ec21b4ad3 * Implemented retrieving additional bitmap support flags by the app_server.
* Added B_BITMAPS_SUPPORT_OVERLAY flag to indicate overlay support for the
  color space.
* Rewrote GraphicsDefs.h - the previous one was obvious a copy of the Be header,
  including typos and strange white space. I was a bit lazy with respect to
  the color space details, and mostly trusted the information provided by the
  Be header else.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 17:44:46 +00:00
Stephan Aßmus bddb4413d7 Do not remove the plugin from the list if the ref count has not reached
zero, otherwise we leak these plugins, since the ref counting is based
on the plugin still being in the list.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 17:09:13 +00:00
Stephan Aßmus cc4ed3f7e7 Honor the 80 char per line limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 17:07:47 +00:00
Ingo Weinhold 9d00a03d7b Moved --no-undefined flag addition to AddSharedObjectGlueCode where it
is added in case of target platform haiku only.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 16:34:02 +00:00
Ingo Weinhold 15cdb34646 Fixed gcc 4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 16:31:36 +00:00
Axel Dörfler 0db852e1bf Fixed copy and paste error.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 16:00:09 +00:00
Ingo Weinhold 4386ce0206 Pulled the TermView interface used by TermParse into a new interface
class TerminalBuffer, which will evolve into a TermBuffer replacement
and decouple the parse thread from the window.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 15:29:10 +00:00
Axel Dörfler d16ddc579c * The boot loader now passes on its EDID info to the kernel, and that will
be put into a boot_item in frame_buffer_console_init().
* The VESA driver now supports gettings the EDID information as well; this
  is necessary now, since the app_server no longer takes over the mode the
  boot loader had chosen.
* Note, we might want to do this via vm86 instead in the future, and remove
  the kernel part again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 15:17:59 +00:00
Ingo Weinhold 7870b77c18 The Executable and Addon rules also use --no-undefined, now. Apparently
-nostdlib disables that for executables although it should be enabled by
default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 15:13:33 +00:00
Ingo Weinhold 2a33a944e5 Don't spam to the standard output when not finding a symbol.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 15:05:16 +00:00
Ingo Weinhold 992330f54b _user_debug_output() used kputs() and thus wouldn't print anything
anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 15:04:09 +00:00
Axel Dörfler 1938efc0a9 * Renamed the "simple" mode setter Screen::SetMode() variant to SetBestMode();
it can also no longer create a default mode.
* This SetBestMode() function now follows a similar logic than the boot loader,
  that is, only the width must not deviate, all other values are chosen as
  close to the original as possible.
* VirtualScreen::AddScreen() now follows the same logic as the boot loader in
  case no configuration was found, and the current screen has no preferred mode
  (for example via EDID). That is, it will first try 1024x768, and then 800x600.
* This means there is no mode change anymore when switching from the boot
  loader to the app_server in Qemu and VMware.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 14:35:31 +00:00
Axel Dörfler 32eac6c375 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 14:31:47 +00:00
Axel Dörfler 8b07bbe108 * Added a bit more debug output when enabled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 13:30:45 +00:00
Axel Dörfler 557335a991 * device_nodes now have a priority that is used to sort them when they are
added to their parent. Currently, only the existence of B_FIND_MULTIPLE_CHILDREN
  influences the priority.
* This makes it possible to register/probe intelligent busses earlier than
  simple/generic busses.
* Reenabled the ISA bus manager using the new device architecture; the
  ide_isa driver can and will now actually work.
* device_node::Probe() now sets the global sGenericContextPath for generic
  nodes. This causes a special handling in _GetNextDriverPath().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 13:22:24 +00:00
Axel Dörfler 2ecef3acbe * As Korli pointed out, I got a bit confused with Rescan() vs. Probe().
* Therefore, device_manager::rescan_node() now actually causes the
  driver::rescan_child_devices() function to be called, instead of probing
  again.
* Added a device_node::Reprobe() method that does what Rescan() did previously.
* Probe() should now also work with "dumb" busses that don't support type
  information - it will now probe all of these nodes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 09:13:04 +00:00
Axel Dörfler 7830589f02 Patch by Vasilis Kaoutsis:
* Added a missing close_module_list().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 07:28:04 +00:00
Michael Lotz 83d453239c Directly use memalign instead of malloc to safe one indirection.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 06:56:24 +00:00
Michael Lotz b4babdf47e Move the device deletion after the unpublish call. Fixes crashes where a
device is still referenced through the devfs and used right between deleting
and unpublishing.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 06:53:57 +00:00
Stefano Ceccherini fa827b37fc took the liberty to add this to the buiild and fix compilation :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 05:02:59 +00:00
Stefano Ceccherini 54d9d37f9d Added patch by Dustin Howett: header with HPET definitions and (empty)
file for hpet implementation. Not yet added to the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25773 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 04:37:18 +00:00
Jérôme Duval 87905063c3 better handles error and cancellation when copying
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 22:34:48 +00:00
Jérôme Duval 1d0b3c1590 ported back a change from Tracker FSUtils.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 22:29:15 +00:00
Jérôme Duval 62572b22a6 HasBorder and HasTitle are exclusive, fix bug #2325
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25770 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 20:53:46 +00:00
Karsten Heimrich 15c0cece2b * don't print child views with invalid rect, this makes printing e.g.
from Scooby nearly the same as on R5 (still misses the gray header color)
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 20:21:40 +00:00
Oliver Ruiz Dorantes 3e24801283 L2CAP, without functionality, for the moment my playground in the netstack
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 20:16:00 +00:00
Stephan Aßmus 2ebec00b97 And now it should even compile again! Sorry about that, forgot to
remove the debug output completely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 18:50:42 +00:00
Stephan Aßmus 3c1baac2ac Accidentally left tracing on...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 18:46:38 +00:00
Stephan Aßmus 64c4d8f606 I tracked down a problem with a specific clip I have here.
In the end, the problem was that no codec was installed
for it, but I fixed a bunch of issues on the way to find
out. Now the controller will not rely on the number
of audio and video tracks, but on the fact that it could
instantiate suppliers at all. Made the MediaTrackVideoSupplier
return an init error. Should be replicated for the
MediaTrackAudioSupplier.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 18:28:31 +00:00