Commit Graph

46683 Commits

Author SHA1 Message Date
Ithamar R. Adema
501b24c63b ARM: kernel: Make 32/64-bit atomics work for ARMv5/6
Support for 64-bit atomic operations for ARMv7+ is currently stubbed
out in libroot, but our current targets do not use it anyway.

We now select atomics-as-syscalls automatically based on the ARM
architecture we're building for. The intent is to do away with
most of the board specifics (at the very least on the kernel side)
and just specify the lowest ARMvX version you want to build for.

This will give flexibility in being able to distribute a single
image for a wide range of devices, and building a tuned system
for one specific core type.
2013-09-18 05:03:18 +02:00
Ithamar R. Adema
cc65466f0d ARM: kernel: Make KDL more useful on ARM
This adds the -mapcs-frame compiler flag for ARM to have "stable"
stack frames, adds support to the kernel for dumping stack crawls,
and initial support for iframes. There' much more functionality
to unlock in KDL, but this makes debugging already a lot more
comfortable.....
2013-09-17 23:04:59 +02:00
Ithamar R. Adema
740490ba82 ARM: libroot: fix setjmp/longjmp implementation.
Just a couple of lines of code, but a head full of pain ;-) Finally
got it right and now KDL can properly recover from invalid accesses.
2013-09-17 22:26:48 +02:00
Rene Gollent
7de035619b Debugger: Fix off by one error in report generator.
- The disassembly dump would consequently stop at the instruction
  prior to the actual crash culprit, and also erroneously mark it
  as such.
2013-09-17 18:18:59 +02:00
Ithamar R. Adema
34ed0fe74a ARM: kernel: fix system_time() when being called too early. 2013-09-17 15:57:36 +02:00
François Revol
09d213f3b3 PPC: OF: Make sure kernel args match the U-Boot one
Since both platforms can boot the same kernel we must accept either
arg, so we make sure they are identical for now.

TODO: use a union or KMessage maybe?
2013-09-17 15:49:49 +02:00
François Revol
c55cff0acc Whitespace cleanup 2013-09-17 13:51:38 +02:00
François Revol
228524afb6 Merge branch 'master' into sam460ex 2013-09-17 13:22:26 +02:00
Rene Gollent
5ad39153e3 Debugger: MemoryView - Tweak target address drawing.
- Since we actually draw a selection now, change the target address
  highlight to clearly distinguish it. Rather than inverting it, it's
  now drawn with a normal background and red text in the hex display.
  The text mode subcomponent still shows it as an invert though, since
  the latter doesn't currently indicate the selection.
2013-09-17 12:07:52 +02:00
Rene Gollent
4ce4250be0 Debugger: Fix RegistersView context menu.
- Always grab the address value from the actual register value column,
  rather than the one that's in fact under the mouse. Fixes the "Inspect"
  item sending you to inspect address 0 if you happened to right click over
  the register name rather than the value.
2013-09-17 11:17:31 +02:00
Rene Gollent
a82e311cf1 Debugger: Fix calculation in MemoryView.
- The offset calculation for mapping the current point wasn't taking
  into account the number of bytes per hex block, causing it to be
  proportionally further off if one switched to 16/32/64-bit hex mode.

Gets mouse selection working properly in said modes.
2013-09-17 11:14:38 +02:00
Ithamar R. Adema
f2479c22a8 device_manager: Move init_node_tree to after kdl cmd registration
This helps when debugging, since when a driver/module causes a crash
while registering with the device manager, you can actually look at
the device manager state ;-)
2013-09-17 05:52:54 +02:00
Ithamar R. Adema
00e13e215e norflash: do not accept any device as a valid 'norflash'
Seems the original code was a little *too* simple ;-)
2013-09-17 05:26:29 +02:00
Ithamar R. Adema
af1c0b55ca ARM: kernel: fix timer resolution and implement basic timekeeping.
The previously used method for programming the timer did not take
into account that our timespec is 64bit while the register we poke
it into is 32 bit. Since the PXA (SoC in Verdex target) has a limited
scale of resolution (us,ms,second) we dynamicly determine the one
that we can most closely match, and set that.

For f.ex. snooze to work however, we also need system_time to work.
The current implementation uses a system timer at microsecond
resolution to keep track of time.

Although the code is far from perfect, committing it now before
it gets lost, since I'm working on the infrastructure code
to properly factor out the SoC specific code out of the core
ARM architecture code (so the kernel can support more then
our poor old Verdex QEMU target ;))
2013-09-17 03:03:17 +02:00
Ithamar R. Adema
7418443d12 loader/u-boot: fix alignment of uimage components.
The "blobs" in a U-Boot uimage are aligned at 4 bytes, which we
did not take into account. Found this when adding a 3rd blob
containing the Flattened Device Tree for ARM.
2013-09-17 02:44:32 +02:00
John Scipione
c21a3b20c9 Revert "ScreenSaver: ScrollToSelection off-by-one"
This reverts commit fb90f7ffe4.

Underlying issue fixed in hrev46066
2013-09-16 18:45:56 -04:00
Pawel Dziepak
aca204991f posix: Update PTHREAD_STACK_MIN to match MIN_USER_STACK_SIZE
Thanks for pointing this out Pete!
2013-09-16 23:23:29 +02:00
Pawel Dziepak
f06af2e2f8 system: Use B_PAGE_SIZE to define stack sizes
As korli suggested use B_PAGE_SIZE for defining stack size related
definitions what seems to be more natural for them  and also may
help if we ever support an architecture with page size different than
4kB.
2013-09-16 23:23:29 +02:00
Pawel Dziepak
74018092d0 libroot: Make sure PTHREAD_STACK_MIN is in the allowed range 2013-09-16 23:23:28 +02:00
Stephan Aßmus
e69b2374f2 HaikuDepot: Update package list when necessary
* Pass the Model lock to the PackageListView.
 * Register a PackageInfoListener with every listed package.
 * Update the rating when it is fetched.
2013-09-16 23:20:32 +02:00
Stephan Aßmus
bdd7ba66b5 BColumnListView: Enable invalidating rows, fix SetField()
* Seems like there was no easy way to simply invalidate
   a given BRow. Introduced BColumnListView::InvalidateRow().
 * BRow::SetField() tried to invalidate the row, but invalidated
   the listview instead of the BOutlineView responsible for
   drawing the list contents. Use the new InvaalidateRow().
2013-09-16 23:20:31 +02:00
Rene Gollent
206313697f Fix gcc2 build. 2013-09-16 22:39:18 +02:00
Stephan Aßmus
bb4c532b77 HaikuDepot: Fixed selecting the right package when the list is sorted. 2013-09-16 22:18:22 +02:00
Stephan Aßmus
b0fbddbd03 HaikuDepot: Also lock the model when updating the list 2013-09-16 22:18:21 +02:00
Stephan Aßmus
5f82742858 HaikuDepot: Package information can be retrieved asynchronously 2013-09-16 22:18:20 +02:00
Rene Gollent
f831939874 Fix previous format problem more correctly.
Thanks Ingo, Oliver and Ithamar for the hint.
2013-09-16 21:29:32 +02:00
Rene Gollent
fb916bc870 Debugger: Fix data copy issue.
- B_PRIx8 unfortunately doesn't necessarily strictly stay within the bounds
  of an 8-bit hex constant, so force the size passed to snprintf to make it
  that way.
2013-09-16 20:22:24 +02:00
Rene Gollent
af967edb7d Build fix. 2013-09-16 19:59:33 +02:00
Rene Gollent
6c5893fbbf Debugger: Add selection support to MemoryView.
- The Inspector's memory view now supports selecting chunks of the hex display in
  the manner one would in a TextView. The selection can also be copied to the clipboard,
  or if it matches the size of a target address, can be used as input for an address to
  inspect directly.

Still needs some fine tuning, but basically works.
2013-09-16 19:45:27 +02:00
Rene Gollent
29fdf5e8ae Debugger: Implement #9961.
- FileManager now saves any explicitly located file mappings,
  and properly restores them when reloading the same team/files later.
2013-09-16 15:29:19 +02:00
Rene Gollent
37fc9962f8 Fix incorrect name usage. 2013-09-16 15:29:19 +02:00
Rene Gollent
b9b126139a Debugger: add settings manager for source location mappings.
- If it was necessary to help the debugger locate a particular source
  file due to it not being found on disk at the location specified in
  the debug information, the associated user-supplied path mappings
  are now saved and restored in the team settings. The file manager still
  needs a bit of extra work to apply these as files are added though.
2013-09-16 15:29:18 +02:00
Jerome Duval
e968e4b090 intel_extreme: don't expose overlay in accelerant when not allocated
... in the driver.
2013-09-16 15:07:58 +02:00
Jerome Duval
1410faca6c x86_64: added agp_gart, intel_gart, intel_extreme to the image.
* tested on Intel GM45 and Atom_N4x0
2013-09-16 14:50:43 +02:00
Jerome Duval
a20d645226 usb_disk: fixed mounting a USB disk on x86_64
* usb_disk_prepare_partial_buffer() was miscalculating the offset in the temp buffer,
which led to a page fault later when copying to the user buffer.
2013-09-16 13:27:42 +02:00
Jerome Duval
367d254419 usb_disk: fixes 64bit trace build 2013-09-16 11:48:22 +02:00
Siarzhuk Zharski
81cdbc6ae6 ListView: More safe ScrollToSelection implementation
The Problem was observed in the Time Preferences Zone view - the
selection was set inside of TimeZoneView::DoLayout() call on
the OutlineListView control that had zero-sized Bounds. After
the control was resized the selection stay mainly hidden "under"
the upper edge. The Problem looks like generic so should be fixed
in the interface kit code. Proposed fix introduces additional check
for the scroll position to not cross the top edge of control.
2013-09-16 00:05:28 +02:00
Stephan Aßmus
83f9d3c431 HaikuDepot: Added some listener support to PackageInfo 2013-09-15 17:47:35 +02:00
Jerome Duval
a07d888425 hdaudio: check pin sense on init, don't wait for a switch event
with headphones plugged on boot, sound was still enabled on speakers.
see #9956
2013-09-15 15:39:01 +02:00
Rene Gollent
396a3d082f Merge branch 'debugger_report_add_disassembly' 2013-09-15 15:35:38 +02:00
Stephan Aßmus
d1d48f6483 HaikuDepot: Add interface for PackageInfoListener.
Also defines PackageInfoEvent.
2013-09-15 17:24:15 +02:00
Stephan Aßmus
d2c9f2e651 HaikuDepot: Use PackageInfoRefs instead of PackageInfos
Instead of storing PackageInfo objects directly in the
 PackageLists, store PackageInfoRefs instead. This makes a
 lot of operations much cheaper, and it also allows making
 changes to a PackageInfo (which now exists only once)
 and have those changes reflect everywhere. In particular,
 it will be easier to populate some information of the
 PackageInfo lazily, and to listen for changes on a
 PackageInfo object.
2013-09-15 17:21:11 +02:00
Rene Gollent
92d6655640 Debugger: Implement #9960.
- DebugReportGenerator now retrieves and dumps disassembly for the crashing
  function up to the crashing line.
2013-09-15 15:32:19 +02:00
Jerome Duval
c11cdf8d88 dpc: fix comments spelling. 2013-09-15 14:41:43 +02:00
Ithamar R. Adema
4ace94e6b1 beos_mime: add sniffer rule for .mp3 files
Patch from markh (ticket #9790), thanks!
2013-09-15 11:45:40 +02:00
Ithamar R. Adema
b9f280cb8c ntfs: make sure our confidence is higher then the intel partition add-on
This as the intel partition addon just does a very weak test, and the
NTFS test is much safer. This prevents NTFS filesystems that have a
valid boot sector signature but no partition table, from being
picked up by the intel partition table add-on instead of the ntfs
add-on.

Patch provided by markh, thanks!
2013-09-15 11:35:31 +02:00
Jerome Duval
b119365b21 usb_disk: returns B_DEV_NOT_READY for SCSI_SENSE_KEY_NOT_READY
...instead of B_DEV_NO_MEDIA. The latter seems to imply we stop testing
the unit is ready in usb_disk_device_added().
Based on a patch provided by markh in #9589.
2013-09-15 11:21:01 +02:00
Ithamar R. Adema
b9fa914d1e norflash: Add hack to hide start of NOR flash
This is a workaround for hiding U-Boot that is stored in the first 2
128k blocks, so we can put a BFS image into NOR to boot from (since
we do not have support for SD/MMC yet in Haiku).

When manually putting a BFS filesystem at block 3 we actually get
right up to the point where BootScript is attempted to be executed!
2013-09-15 07:26:02 +02:00
Ithamar R. Adema
c00e42d577 u-boot: make sure host makebootable builds too
Somehow missed these few lines in my last commit.
2013-09-15 04:55:07 +02:00
Ithamar R. Adema
a1d6968848 ARM: stub out makebootable so we can build a full haiku-image 2013-09-15 04:39:37 +02:00