Commit Graph

51268 Commits

Author SHA1 Message Date
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
Colin Günther
f7f6702203 FFMPEG Plugin: Implement audio input buffer padding.
- Padding is required by FFMPEG for correct operation of all audio decoders.
  FFMPEG performs some speed optimizations under the hood that may lead to
  reading over the end of the chunk buffer wouldn't there have been padding
  applied.

- Resolve TODOs by unifying fVideoChunkBuffer and fChunkBuffer back into
  fChunkBuffer because audio path is responsible for freeing fChunkBuffer now.
  Resolved TODOs apply to the replacing fVideoChunkBuffer variable by
  fChunkBuffer, rename some methods by removing the "Video" part, collapse two
  methods into one (_LoadNextChunkIfNeededAndAssignStartTime()).
  No functional change intended.

- Enhance "logging stream to file" functionality to write to distinct logging
  files for audio and video. Before this commit one could only log video
  streams. But with unifying the _LoadNextChunkIfNeededAndAssignStartTime()
  audio streams gained the logging functionality for free. But now audio and
  video streams would be written in the same log file when watching a media
  file containing both audio and video. This is prevented by the distinct
  logging mentioned above.

- Update documentation accordingly.
2014-08-25 14:33:33 +02:00
Colin Günther
3c68ae7c58 FFMPEG Plugin: Refactor out copying of audio format properties.
- Main reasons for this refactoring of negotiation steps are to increase
  readability and to be on par with the video path.

- Rearrange some negotiation steps in video path to be on par with audio path.

- Add documentation for the new method and update existing documentation
  accordingly.

- No functional change intended.
2014-08-25 14:33:29 +02:00
Colin Günther
38738909a4 dvb.media_addon: Fix some coding style.
- Fix max line length, switch statement style and some pointer comparisons in
  if statements. No functional change intended.
  Note: There may be more coding style violations lurking.
2014-08-25 14:33:25 +02:00
Colin Günther
75a6d51e8a dvb.media_addon: Support dumping of the raw mpeg ts data.
- Main purpose is to debug a/v synchronization issues by playing the dumped
  mpeg ts data in alternative video players (like ffplay or MediaPlayer) and
  see how those behave.

- The commit diffs shows some coding style violations (max. line length) that
  show up throughout the whole DVBMediaNode class. Those will be fixed in the
  next commit to keep a clean separation between the different code changes.
2014-08-25 14:33:21 +02:00
Rene Gollent
bf29cdd777 power_daemon: Refactor to handle multiple exported power devices.
- Each PowerMonitor now exports a set of descriptors rather than
  only a single one. This allows e.g. PowerButtonMonitor to watch
  multiple possible button event sources rather than one.

This gets power button working again on some hardware that exports
multiple ACPI power buttons, but offers no obvious way to determine
which one is actually active/being used. In the long term though, it'd
be nice to have a well-defined kernel power event interface that an app
could subscribe to, rather than having to watch individual devfs
descriptors.

Thanks to tqh and korli for advice/review.
2014-08-24 18:14:30 -04:00
Rene Gollent
74f7623716 acpi_button: Fix several issues with multiple devices.
- On some hardware, both the fixed function FADT as well as the
  device-based power interfaces are present. In such a case we
  would fail to publish one or the other, depending on which was
  enumerated first, since we'd always attempt to publish the same
  name regardless. Now we differentiate the device name for fixed vs
  device.
- Only enable fixed function for actual fixed devices.
- Improve tracing.
2014-08-24 18:14:30 -04:00
Jérôme Duval
79c1d45cee libshared: fix x86_64 build 2014-08-24 21:34:20 +02:00
Stephan Aßmus
95e4ca3d00 HaikuDepot: Fill some categories and rating summary from web app response.
This still uses the request I had prepared earlier, not the new bulk
request which can get information for the entire package list in one
request. It also has no caching, so it runs for quite a while in the
background (dedicated thread, so hopefully no harm done by keeping it
enabled).

Thanks Augustin, for the parser!
2014-08-24 19:21:50 +02:00
Stephan Aßmus
3c16b0159b HaikuDepot: Use JSON parser provided by Augustin to parse response. 2014-08-24 19:21:05 +02:00
Stephan Aßmus
7d0dab121a PackageInfo: Added setting rating summary before any ratings are known.
Fleshed out RatingSummary.
2014-08-24 19:17:19 +02:00
Stephan Aßmus
e7babe14ba MessageBuilder: Whoops, stringDeleter must be detached when adding succeeded. 2014-08-24 18:19:10 +02:00