Commit Graph

51279 Commits

Author SHA1 Message Date
François Revol a5d33e1ab1 pc_serial: try to skip the port used for kernel debugging output
Not that easy to handle all cases correctly,
but should work for the default case.
2014-08-29 12:27:50 +02:00
François Revol 1a6072a0a1 pc_serial: manually probe the default ISA ports
Since config_manager is basically a stub, and even VirtualBox
doesn't publish the serial ports as PCI devices, we must probe for them.

Ideally config_manager would find them in the device manager tree
which would have been populated from the PnP BIOS or even ACPI tables...
2014-08-29 12:27:49 +02:00
François Revol 7e613b4759 pc_serial: convert irq handler to use DPC
Let's hope we won't loose data because it.

We have to cache the value of IIR read from IsInterruptPending(),
because some conditions are acknowledged only by reading it...
2014-08-29 12:27:49 +02:00
François Revol c6870d53dc pc_serial: WIP: kinda supports writes through tty module
It's still not fully working, and the tty module doesn't help
since it's not callable from an irq handler.
2014-08-29 12:27:49 +02:00
Stephan Aßmus 4a02fc4f42 HaikuDepot: Sync defined categories with web-app.
Also test all (currently) possible categories when retrieving package info.
2014-08-29 10:45:54 +02:00
Adrien Destugues 2d5dbc78c4 Add support for my Core i3 integrated graphics. 2014-08-29 09:37:44 +02:00
Adrien Destugues 9e616c6b9e Fix HaikuBuildCompatibility to not define atmics anymore.
This reverts commit 34dbbb65fd.
Instead, we can remove thos from HaikuBuildCompatibility and things will work fine, unless one try t build Haiku on BeOS (this isn't
supported anymore) or a very old Haiku which esdon't have those.
2014-08-29 09:37:44 +02:00
Julian Harnath 72ec5a3630 Use correct PCI register base address for newer Radeon chips
* Radeon chips since Bonaire use a different PCI register base
  address. Select the correct one depending on chipset generation
  (values from Linux driver).

* Makes radeon_hd work for newer APUs/GPUs (tested with Kabini APU).
2014-08-28 22:21:50 +02:00
Fredrik Holmqvist 49b9fce5ec strcpy had the wrong arg order. 2014-08-28 22:01:25 +02:00
Fredrik Holmqvist f63a0d873e Use strcpy, fix style issues. 2014-08-28 19:54:37 +02:00
Adrien Destugues 34dbbb65fd Make atomics extern "C" again.
Pawel changed the implementation but I see no reason to make those available only from C++, so it must be an oversight.
Fixes building Haiku on Haiku which otherwise hits a mismatch in build compatibility headers.
2014-08-28 17:44:09 +00:00
Fredrik Holmqvist fbe9d6de53 Add a global log GPE handler, enable all runtime GPE's.
For now we only log messages.
2014-08-27 22:54:23 +02:00
Fredrik Holmqvist c5baf46055 DRY - Use a helper function to check and log failures. 2014-08-27 22:54:22 +02:00
Fredrik Holmqvist 0842eba04e Use ACPICA defaults, don't set interpreterslack to true anymore.
ACPIA has internal code to detect and fix most problems now.
2014-08-27 22:54:22 +02:00
Fredrik Holmqvist 278d57f27b Fix warning printf should use %d. 2014-08-27 22:54:22 +02:00
Adrien Destugues 22491e1491 WebPositive: Fix build
I'm not so happy with this solution, but I'm out of ideas for a better
one.
2014-08-27 19:05:33 +02:00
Jérôme Duval 88ef93a33c RegularImage: filter translators based on features. 2014-08-27 17:49:52 +02:00
Jérôme Duval fb35c07a7e Add lib dependencies to Haiku packages.
* Thanks Augustin for the reminder!
2014-08-27 17:48:19 +02:00
Adrien Destugues 55149ef0ed HaikuWebkit 1.4.2 for x86_gcc2.
While the slowness problems from 1.4.1 are gone, there are still many
problems of text not being drawn when the page is scrolled.
2014-08-27 15:33:06 +02:00
Adrien Destugues 742b3fdd4c More packages for ARM microcontrollers development.
* Complete version of arm_none_eabi_gcc with newlib
* arm_none_eabi_newlib package
* dfu-util (for flashing stm32 chips) and libusb
2014-08-27 07:46:45 +02:00
luroh d64b771b96 Fix offline installation of iprowifi2100 and iprowifi2200 firmware.
Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2014-08-26 23:10:37 +02:00
luroh d76361c8a8 Add iprowifi2100 firmware to image.
Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2014-08-26 23:10:31 +02:00
Jérôme Duval c4696b3071 PSDTranslator: Localization. 2014-08-26 21:28:14 +02:00
Jérôme Duval 82e60cd5ec ICNSTranslator: use outsourced package libicns
* clean up Copyrights section.
* libicns becomes a default package
2014-08-26 20:39:10 +02:00
Jérôme Duval d977c0da56 BuildFeatures: add a feature for libicns 2014-08-26 20:26:31 +02:00
Jérôme Duval 9cd9e5651b Update jasper packages 2014-08-26 20:14:36 +02:00
Paweł Dziepak 72a446e10b libroot/x86_64: implement get_cpuid() in user mode
cpuid is available in user mode as well and it doesn't look like there
are going to be any x86 platforms with significantly different CPUs anytime
soon.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-26 19:01:37 +02:00
Paweł Dziepak 6d70d75a8e libroot/x86_64: rewrite system_time[_nsecs]() to C++
No functional change intended, just code deobfuscation.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-26 19:01:37 +02:00
Jérôme Duval 58ec759995 Add libicns packages. 2014-08-26 18:35:29 +02:00
Jérôme Duval fdfe641dca JPEG2000Translator: use outsourced Jasper package
* fixes for API changes with newer version of Jasper.
2014-08-26 17:47:25 +02:00
Jérôme Duval e14f00e5e6 WebPTranslator: fix build breakage introduced in hrev47739. 2014-08-26 17:05:46 +02:00
Paweł Dziepak 2268a48350 kernel/x86_64: use C++11 style static assert
Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:07:32 +02:00
Paweł Dziepak 4b75a1e237 kernel/x86_64: implement x86_swap_pgdir in C++
No reason not to inline this function.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:07:29 +02:00
Paweł Dziepak 1eba40776d kernel/x86_64: rewrite cpuid.S -> cpuid.cpp
Just getting rid of some assembly, no functional change.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:07:22 +02:00
Paweł Dziepak 721a07ac24 libroot: remove ATOMIC_FUNCS_ARE_SYSCALLS
GCC knows whether these functions need to be implemented using syscalls
(or more clever solutions like in Linux) and calls libgcc in such case.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:07:18 +02:00
Paweł Dziepak a4cdc6072c build: remove B_USE_BUILTIN_ATOMIC_FUNCTIONS
No reason not to use GCC atomic support on non-x86 archs.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:06:58 +02:00
Paweł Dziepak d3b1caa62d kernel, libroot: use C++11 atomics in atomic_*()
The less assembler in our sources the better. These functions wouldn't
be used very much since SupportDef.h inlines them, but the symbols should
be available.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:06:08 +02:00
Paweł Dziepak aa58f7e431 os/arch: implement all atomic_*() using std::atomic<>
Time to get rid of some asm code. Surprisingly, it appears that
on x86[_64] the emitted code for atomic_test_and_get() isn't as efficient
as it could be, even with -O2, but cmpxchg is so expensive that this slight
difference shouldn't matter much.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:06:08 +02:00
Paweł Dziepak 2e2c9bd3d0 os/support: implement atomic_*() using GCC builtin helpers
If GCC knows what these functions are actually doing the resulting
code can be optimized better what is especially noticeable in case of
invocations of atomic_{or,and}() that ignore the result. Obviously,
everything is inlined what also improves performance.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:05:07 +02:00
Paweł Dziepak 54b314f15f add-ons/kernel: add casts when calling atomic_*()
Soon GCC is going to be a bit stricter about the type of pointer passed
to atomic_*() functions.

Signed-off-by: Paweł Dziepak <pdziepak@quarnos.org>
2014-08-25 23:02:32 +02:00
Oliver Tappe ae18461ec1 Fix #11155 - missing WebPositive in x86_gcc2 repository.
* Instead of just checking the primary architecture, we need to check
  all architectures whether the webpositive build feature is enabled.
2014-08-25 20:49:23 +02:00
Jérôme Duval d07f0c9396 WebPTranslator: use the outsourced package. 2014-08-25 20:26:49 +02:00
Jérôme Duval af56dec460 Add libwebp as a mandatory package. 2014-08-25 20:24:46 +02:00
Jérôme Duval cbe75ce5b7 BuildFeatures: add Giflib, Libwebp, Jasper features. 2014-08-25 20:24:04 +02:00
Jérôme Duval 8e66aa5157 Add jasper packages. 2014-08-25 18:48:54 +02:00
Jérôme Duval 6c04acf612 Add/Update libwebp packages. 2014-08-25 18:41:34 +02:00
Jérôme Duval a5b44d1a56 Add giflib packages for x86 and x86_64 2014-08-25 18:41:33 +02:00
Colin Günther 4ff7c2cc61 FFMPEG Plugin: Small refactoring in audio path.
- Lazy initializing the fDecodedData variable fits best in
  _ResetRawDecodedAudio() as fRawDecodedAudio is all about managing properties
  of fDecodedData. So fDecodedData having some memory allocated is seen as a
  property here.

- Updated documentation accordingly

- No functional change intended.
2014-08-25 14:33:45 +02:00
Colin Günther fe1eb3c1c1 FFMPEG Plugin: Fix performance regression on video path.
- For best performance the color conversion function expects a memory location
  aligned to 32 bytes. Without that alignment the color conversion function
  falls back to a slower conversion path. This fix was measured via
  DO_PROFILING and tested with various 1080p video files.
2014-08-25 14:33:41 +02:00
Colin Günther 1c5f18308c FFMPEG Plugin: Fix correct decoding of first video frame.
- The first decoded video frame was always zero bytes large, due to passing the
  wrong linesize to the color conversion function. The field containing the
  right linesize (fHeader.u.raw_video.bytes_per_row) simply wasn't initialized
  yet. Fix it by updating fHeader first before applying deinterlacing and color
  converting to the decoded video frame.
  Tested with mpeg2_decoder_test where the first picture now isn't empty
  (black) anymore.
2014-08-25 14:33:37 +02:00