Commit Graph

25242 Commits

Author SHA1 Message Date
Michael Lotz
69dddbdea1 Initial work towards supporting IO APICs. This cannot work for PCI interrupts
though until we use ACPI for proper PCI IRQ routing through the IO APIC.
Therefore the IO APIC code path is not yet enabled and the IO APIC isn't used.
ISA interrupts would work though, as would PCI interrupts if you'd hardcode
them for your specific configuration.
Note that this change also modifies some parts in the bootloader and in the PIC
setup to make local APICs available even on non-SMP systems. This causes APIC
timers to be used instead the normal PIT if it is available (also on non-SMP
configurations).
Also fixes some general errors in SMP and PIC code as well as some code cleanup.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 23:19:41 +00:00
Stephan Aßmus
84c9d73d7d In the B_MOUSE_MOVED message, "where" is supposed to be in window coordinates
while "be:view_where" is in view coordinates. We made the mistake of having
them both be in view coordinates. This caused a problem for example in Vision.
(#2460)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 22:34:38 +00:00
Rene Gollent
68b028320a Update Vision package again for a resize-related bugfix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 20:36:48 +00:00
Axel Dörfler
aef87862a4 * Added support for generic drivers.
* If init_driver() fails, the device manager now prints a message to syslog.
* device_node::CompareTo() was broken: it never correctly compared the last
  attribute. This could cause duplicate nodes.
* Removed superfluous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 17:12:27 +00:00
Axel Dörfler
6969690afe bonefish + axeld:
* Moved the old I/O scheduler code into the device manager, and replaced its
  contents completely :-)
* Implemented the DMA and I/O requests/scheduler framework - for now in C++
  only. It's a work in progress and not used anywhere yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 14:39:46 +00:00
Axel Dörfler
df1b333aa5 No wethers in here anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 14:37:23 +00:00
Axel Dörfler
af4d15c72a * Removed I/O scheduler knowledge from devfs - it will be moved into the
drivers that need it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 14:35:47 +00:00
Michael Lotz
541959e00a Add (not really necessary) locking of the sMountMutex in case of KDEBUG to keep the assert in find_mount() happy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 02:07:08 +00:00
Michael Lotz
eb0dca1d33 Add a KDEBUG_ONLY macro for easier handling of code only needed in case of KDEBUG.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 02:05:27 +00:00
Rene Gollent
7522d08271 Update the package name to force a redownload.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 02:04:02 +00:00
Rene Gollent
c95c53f469 Updated Vision package URL to new version with URL parsing fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 01:53:12 +00:00
François Revol
a440169494 - fix def
- calculate ram ranges, 1 for st ram, one for fast ram if available. The kernel won't differentiate yet though, we'll have problems with DMA later on...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 01:11:59 +00:00
Stephan Aßmus
f779adc692 mmlr + stippi:
In my last row of changes I removed a call to ResizeToPreferred()
in SetLimitLabels(). It is confirmed that the BeOS implementation
is doing it and some applications rely on it, like our own Mouse preflet.
This closes #2526.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 00:06:28 +00:00
François Revol
36265c4de7 - print vars of interest to help setup mem map
- shuffle memory map
- set up transparent translations: first 32MB of RAM and last 16MB for IO space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 23:56:22 +00:00
Stephan Aßmus
6eeea348d0 Also destroy the query lock in the Volume destructor.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 20:54:11 +00:00
Oliver Ruiz Dorantes
41da6509b2 - Add handling of some events taking part on the pairing process
- Rename event structures to be consistent with another remaining ones
- Fix typos
by Mika & Oliver




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 20:44:09 +00:00
Oliver Ruiz Dorantes
0a95b2a34b An automatic way to define max number of packet types
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 20:38:09 +00:00
Michael Lotz
741b3d9004 Use B_RGBA32 instead of B_RGB32 when getting vector icons. Should fix bug #2525.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 19:32:57 +00:00
Michael Lotz
84717c2c61 bonefish+mmlr:
Fix kernel printing of unsigned 64bit datatypes with the highest bit set. They
would previously be converted to a signed type and were then handled wrongly.
Use the sign flag to properly decide when to use casting to a singed type.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 19:26:09 +00:00
François Revol
87f9eb4682 Make sure debug output will wrap at 80 cols as the atari VT52 emulation doesn't do it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 02:38:23 +00:00
François Revol
3d5d990815 machine != platform
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 02:14:01 +00:00
François Revol
566ca582ba Fix 030 code. Seems we need to force gas to understand we want 030 code there, -m68030 didn't help.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:40:36 +00:00
Axel Dörfler
eaf71fbdb6 * Build fix: coreutils had a replacement for dirfd().
* Made DIR argument const in dirfd().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:22:13 +00:00
Axel Dörfler
13ea2be597 * Since cache_io() can now work with NULL buffers, I resurrected prefetching
using it.
* IOW cache_prefetch_vnode() should work again now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:10:18 +00:00
Michael Lotz
51c99056b5 Make the launch_speedup module compile again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:03:12 +00:00
Michael Lotz
d73327e274 Make dirfd() publically available. It used on other systems as well it seems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:01:52 +00:00
Stephan Aßmus
441ad0b87e * Don't continue with initializing a partition if the user cancelled the
parameter panel... Doh!
* Force update the disk view when rescanning the disks (a newly initialized
  partition will now also show the correct name in the DiskView).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:00:49 +00:00
Stephan Aßmus
d63b9e14a0 I think the ListPopulatorVisitor gets BDiskSystems allocated on the stack,
so tracking the modification preparations is both unnecessary and
as canceling is performed on a stale pointer...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:46:11 +00:00
Stephan Aßmus
2570af9d13 Accidentially removed one preparation/cancellation too many. Added it back
but cancel only if preparing was successful.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:32:26 +00:00
Stephan Aßmus
a9cc6c1e3d The modification preparations were not properly maintained which could
cause all kinds of trouble when finally trying to initialize a partition.
In various situations, the disk would already be prepared for modifications
in which case PrepareModifications() will return an error when called again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:27:36 +00:00
Stephan Aßmus
065e9c8f80 Updated TODO, I could remove some items.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:25:59 +00:00
Axel Dörfler
f97fa70dfb * Build fix: the AGP-GART bus manager also used vm_page_allocate_page_run().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:10:52 +00:00
François Revol
b092ec2850 030 version of transparent translation init.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:03:38 +00:00
Stephan Aßmus
3cd9fb7518 * Calculate correct invalidation rect in SetBarThickness()
* Improved ThumbFrame() for B_TRIANGLE_THUMB, too high horizontal slider
  had the thumb along the bottom and not on the bar.
* Improved triangel thumb drawing, the vertical drawing did look so good
  yet, I also put the triangle on the right side, it looked weird on the
  left and it reverted the hashmark meaning too.
* Small code cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 23:49:28 +00:00
Axel Dörfler
50baef55f2 * Removed some old working_set/page daemon stuff from the address space.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 23:36:25 +00:00
Axel Dörfler
6db6b628d6 * Added B_PHYSICAL_BASE_ADDRESS address specification for anonymous areas.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 23:32:25 +00:00
Axel Dörfler
736352dcf5 * Added [un]lock_memory_etc() versions that accept a team_id as first argument.
This allows drivers to lock the memory outside of the original team context.
* create_area_etc() got a struct team as first argument, but that should have
  been a team_id.
* Removed delete_area_etc() - there is already vm_delete_area() doing the same
  thing.
* Renamed vm_get_address_space_by_id() to vm_get_address_space(), as there is
  no other method of getting an address space.
* Removed erroneous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:55:17 +00:00
Axel Dörfler
cb9191556c bonefish + axeld:
* Removed the superfluous "flags" parameter from ConditionVariable::Add()
  that we forgot there when we moved the flags field from
  ConditionVariableEntry::Add() to Wait().
* Using this method was therefore not a good idea - only UnixFifo did, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:43:50 +00:00
Michael Lotz
2293ed6941 Add missing string.h that would otherwise soon break the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:17:29 +00:00
Oliver Ruiz Dorantes
6e82afcc18 -Update copyright
-whitespaces cleanups 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26452 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:30:45 +00:00
Oliver Ruiz Dorantes
7434b76048 Add to the command manager the connection accept and reject commands
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:25:44 +00:00
François Revol
3a7f25d039 Add identifier for 64 bit float raw audio format, really just to show we can support it without hacking the API :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26450 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:06:39 +00:00
Oliver Ruiz Dorantes
870ae24a6d Resolve allocation of multiple Messengers,(Mika Lindqvist)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:04:53 +00:00
Stephan Aßmus
fe5d1557e4 Also test the UpdateText() behavior.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 18:42:37 +00:00
Stephan Aßmus
1ae794159a * Changed the signature of UpdateText() to return a "const char*" (char*
really makes no sense if the pointer belongs to the derived class and
  only confuses). Note this change does not affect binary compatibility.
* Introduced a new MaxUpdateTextWidth() virtual method which is really
  necessary to handle the update text correctly in the layout.
* Introduced a new UpdateTextChanged() method which can be called to
  notify the control of a changed update text. Internally, SetValue()
  also uses it.
* Handle the width or height of the UpdateText() correctly in the layout.
  For horizontal layout, the width was forgotten to be included in
  GetPreferredSize(), for vertical layout, it was completely broken before.
* Handle invalidation correctly when the UpdateText() changes.
* Remove the arbitrary insets for labels from the border the control. This
  makes it easier to align the control's labels with other controls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 18:37:44 +00:00
Jérôme Duval
06688259b6 fix alignment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 17:36:27 +00:00
Oliver Ruiz Dorantes
0501b7cd80 Add AF_BLUETOOTH sockets family
- Feel free to change the index
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 17:30:36 +00:00
Stephan Aßmus
8995071f07 The vertical slider is now at least functionally working, although the rendering
code needs some love.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 15:55:58 +00:00
Stephan Aßmus
f898f8af47 If the user specified a hashmark location other than B_HASH_MARKS_NONE, draw
at least two hash marks, even if the hash mark count has never been configured.
Also means the minimum hashmark count is 2 instead of 1 as before. I think this
behavior is more what one would expect, I turned on hashmarks and wondered
why nothing happened until I realized I needed to configure the count as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 15:15:24 +00:00
Stephan Aßmus
58ecd48c0f Added a test for BSlider
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 15:06:13 +00:00