Commit Graph

35381 Commits

Author SHA1 Message Date
Philippe Houdoin
2aab101928 Register for only supported devices, which reduce a bit overhead when unrelated USB device is plugged-in.
Applied patch for #5209 by oruizdorantes for usb_asix, do the same for usb_davicom.
Will eventually rework it in order to remove duplicated IDs list.
The usb_serial driver also needs the same optimization, 
but gathering the IDs list will take more time than refactor the code and since 
usb_serial is not yet included in haiku image neither ready (no tty module), there is less user experience immediate gain...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 21:43:29 +00:00
Ingo Weinhold
14a322f332 IORequest::_Copy*(): Resolved TODO: Don't cast the generic_addr_t to void*
anymore as that truncates physical addresses when PAE is enabled.
Now, if a 4 GB physical address limit is forced in DMAResource, the system
continues to work fine when the physical memory > 4 GB is used. Otherwise it
hangs or crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 21:33:11 +00:00
Oliver Ruiz Dorantes
0559013789 Commit initial version for a l2cap client test
(Style pending)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 20:41:18 +00:00
Oliver Ruiz Dorantes
a5bf12376d *Incorrect endianess handling from bdaddr at parsing from string.
*Remove bluetooth_util deprecated header
*Issue conn_req for socket connect() call



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 20:04:10 +00:00
Ingo Weinhold
a8ad734f1c * Introduced structures {virtual,physical}_address_restrictions, which specify
restrictions for virtual/physical addresses.
* vm_page_allocate_page_run():
  - Fixed conversion of base/limit to array indexes. sPhysicalPageOffset was not
    taken into account.
  - Takes a physical_address_restrictions instead of base/limit and also
    supports alignment and boundary restrictions, now.
* map_backing_store(), VM[User,Kernel]AddressSpace::InsertArea()/
  ReserveAddressRange() take a virtual_address_restrictions parameter, now. They
  also support an alignment independent from the range size.
* create_area_etc(), vm_create_anonymous_area(): Take
  {virtual,physical}_address_restrictions parameters, now.
* Removed no longer needed B_PHYSICAL_BASE_ADDRESS.
* DMAResources:
  - Fixed potential overflows of uint32 when initializing from device node
    attributes.
  - Fixed bounce buffer creation TODOs: By using create_area_etc() with the
    new restrictions parameters we can directly support physical high address,
    boundary, and alignment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 16:25:14 +00:00
Ingo Weinhold
8d2572165b X86PagingMethodPAE::PutPageTableEntryInTable(): Incorrectly used 32 bit type,
which caused the upper 32 bit of the address to be ignored, thus mapping to
the wrong page.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 19:58:43 +00:00
Ingo Weinhold
9e93cc9ab7 X86PagingMethodPAE::MemoryTypeToPageTableEntryFlags(): Return value must be
uint64, since that's the width of the page table entry. Was harmless, though,
since the flags are in the lower 32 bits anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 19:56:04 +00:00
Ingo Weinhold
96732e8650 X86VMTranslationMap{32bit,PAE}::UnmapPage(): Added some helpful output to
asserts.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 19:54:13 +00:00
Ingo Weinhold
8a8043dce6 vm_page_get_stats(): Forgot to added sIgnoredPages to system_info::max_pages
in r37117 as well, which was really the main point of introducing it.
Improves #6124 (reported memory lower than installed).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 18:59:11 +00:00
Axel Dörfler
35f8d08009 * Fixed the good old operator& precedence bug I noticed while looking over a
patch by Ziusudra.
* Use new(std::nothrow) instead of new.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 16:52:21 +00:00
Axel Dörfler
05b7510980 * Applied patch by Andreas to use RECEIVE_BUFFER_SIZE where it should be used.
* This closes ticket #6165.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 16:17:23 +00:00
Axel Dörfler
fd43517b2c * Renamed "mio" to mallocIO.
* Don't define status in CopyToClipboard() before it's actually used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 10:48:09 +00:00
Jérôme Duval
30dabe8cd9 added missing return, noticed by stippi. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 19:00:11 +00:00
Stephan Aßmus
ef0522d296 * Fixed coding style violations in CopyToClipboard.
* Fixed compiler warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 18:06:27 +00:00
Stephan Aßmus
70b0ca3910 ShowImage no longer uses the weird direct bitmap storage in the clipboard.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:55:52 +00:00
Jérôme Duval
3f0827a2d1 * fixes a warning
* try to launch screen_blanker by path when a launch by signature fails.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:47:47 +00:00
Matt Madia
8dbd2b6cea Updated the optional packages : Git, OpenSSH, and Python.
Archives provided by Chris Roberts.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:34:47 +00:00
Stephan Aßmus
5ab8434cae * Fixed storage of image data in the system clipboard. According to the
comments in the code, different programs do it differently. However, I
   believe we should follow the BeBook documentation. This is the method which
   WonderBrush uses as well, and that one had been tested with other apps like
   Refraction. Potentially, copy&paste could work across GoBe Productive now
   also, but I didn't test.
 * Handle the case where the selection bitmap that gets restored from the
   clipboard has a bounds rectangle with an offset. Use this offset as an
   alternative to the "be:location" hack.
 * Fix the drag bitmap to be semi-transparent on Haiku. B_OP_SELECT does not
   affect the alpha channel on Haiku like it apparently did on BeOS, though
   I am not inclined to change that behavior.
 * Fixed some coding style violations, but tried to mix as little cleanup as
   possible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:03:53 +00:00
Ingo Weinhold
03732070d7 * vm_page_init_num_pages(): Sum up the number of pages between the usable
physical memory ranges.
* vm_page_num_pages(), vm_page_get_stats(): Report the actually existing
  memory, count memory ignored by the boot loader as used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 16:04:49 +00:00
Ingo Weinhold
84e9db7fb7 x86 mmu_init(): Sum up the physical memory we ignore for whatever reason --
stored in kernel_args::ignored_physical_memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 15:57:21 +00:00
Ingo Weinhold
61d2b06c40 Use PAE only when there's memory beyond the 4G limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 15:11:53 +00:00
Jérôme Duval
b14ae02b95 some verbs use a 16 bits payload
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 14:16:30 +00:00
Jérôme Duval
9a0a4979d5 * add some helper functions to read/write verbs.
* try at support realtek alc888. alsa uses this init sequence.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 14:02:50 +00:00
Scott McCreary
9b9c5a1b8b Updated libtool to 2.2.10
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 09:34:17 +00:00
Stefano Ceccherini
b47e904c1f Add to the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37111 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 07:09:57 +00:00
Stefano Ceccherini
372eb8749c Fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 07:09:45 +00:00
Stefano Ceccherini
3f28966548 Imported MenuWorld beos sample code into the repository.
Wrote a jamfile and did some build fix (but doesn't build yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 07:03:01 +00:00
Travis Geiselbrecht
9623c48284 SMP: remove the tracking of apic id -> cpu id. Don't pass between bootloader and kernel.
Kernel doesn't use it, and it could be regenerated in the kernel if it did need it.

This also unlocks the apic range the bios can use. Previously the apic ids would have
to fit within 0..MAX_CPUS or it'd reject the cpu. Some boxes (mine in particular)
seem to sparsely populate the apic id so that the range is pretty large.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 01:01:54 +00:00
Ingo Weinhold
977ffe5233 No longer ignore the physical memory beyond 4 GB, if we have a 64 bit
phys_addr_t. IOW, if PAE is enabled, that memory should be put to use now.
Apparently we report an incorrect amount of total memory (also counting
memory gaps), which also suggests that we need another method to manage the
vm_page structures (currently a huge array with indexes proportional to
physical page addresses, i.e. wasting memory for the gaps).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 00:36:44 +00:00
Ingo Weinhold
4d2b2dc4d2 Enable PAE on all CPUs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 00:13:54 +00:00
Ingo Weinhold
bd4454cb95 * Simplified smp_trap_non_boot_cpus() and smp_wake_up_non_boot_cpus(): We don't
need a spinlock per CPU; a single variable suffices.
* Extended call_all_cpus[_sync]() to work before smp_wake_up_non_boot_cpus()
  (even before smp_init()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 00:13:30 +00:00
Ingo Weinhold
4bdc89aa14 * Implemented X86PagingMethodPAE::PhysicalPageSlotPool::AllocatePool().
* Implemented X86PagingMethodPAE::IsKernelPageAccessible().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 23:23:44 +00:00
Ingo Weinhold
83c3e7d3ba Added kPAEPageDirRange constant.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 23:21:02 +00:00
Ingo Weinhold
bdc4a73afc Disable debug output also in C++ mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 18:04:25 +00:00
Ingo Weinhold
d382fc3a8e Added commented line to enable PAE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 16:26:11 +00:00
Ingo Weinhold
68b53104ba * Implemented X86VMTranslationMapPAE and X86PagingStructuresPAE destruction.
* Implemented X86VMTranslationMapPAE::QueryInterrupt().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 16:21:13 +00:00
Matt Madia
99f806cc7f Corrected the leaves. After a closer look, the gradients of all 3 leaves are
different based on the background color.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 15:35:07 +00:00
François Revol
c1c42eb1c5 Use bilinear filtering for Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 12:59:57 +00:00
Wim van der Meer
46f84134a9 Use B_PAGE_SIZE for calculating memory size in the AboutSystem app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 10:56:39 +00:00
Wim van der Meer
08bed3e8aa Use bilinear bitmap scaling for the screenshot preview.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 08:38:39 +00:00
Axel Dörfler
12c93cc7f8 * Before stippi starts clobbering the sources everywhere with superfluous
work-arounds, I applied the work-around where the problem actually occurs,
  until someone takes the time to look into it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 07:56:51 +00:00
Axel Dörfler
be816234e8 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 07:29:16 +00:00
Wim van der Meer
fc0d49483e Forgot to change the application signature in one location
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 02:36:51 +00:00
Philippe Houdoin
2586d9d144 Forgot to detect when an interface configuration is "disabled"
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 01:17:58 +00:00
Philippe Houdoin
2d3904fe20 Add interface disabling support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 01:00:49 +00:00
Ingo Weinhold
b35f3d132c X86VMTranslationMapPAE::Init(): Implemented the initialization for userland
maps. Now we can at least fully boot in qemu with one CPU. A few things
still need to be implemented, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-10 17:45:38 +00:00
François Revol
8736281d13 Missing default namespace. Maybe stippi could fix WonderBrush and regenerate it though ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-10 17:40:19 +00:00
Ingo Weinhold
5d89694992 Added methods {Allocate,Free}32BitPage(), which allocate+map/unmap+free a
page with a 32 bit physical address (needed for the PDPTs). A small set of
free pages is cached, so the rather expensive vm_page_allocate_page_run() can
be avoided most of the time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-10 17:38:47 +00:00
Ingo Weinhold
f498c07968 Added STATIC_ASSERT() macro (from <Debug.h>, which cannot be included in the
kernel).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-10 17:31:57 +00:00
Ingo Weinhold
1d26c7248f vm_page_allocate_page_run(): Added parameter "limit", specifying the upper
physical address limit for the page run to allocate.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-10 17:30:49 +00:00