gcc2 complains otherwise when using -ansi -pedantic-errors that
"text afer `#endif' violates ANSI standard" because it doesn't
recognize C++ comments in C mode.
Change-Id: Icb091d15a4324625ce305aa89391c44a94f4a38e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8094
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* ARM documentation indicates this may save power.
* Notably, the timer keeps ticking even when "disabled", but
cannot be read by the core without temporarily "enabling"
the timer.
Change-Id: Iccff84915c611b43ee7a3c53ed2f8a3e426eda06
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8093
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Fixes exception in arch_init_timer on boot when trying to write
CNTP_CTL_EL0 under virtualization on M1 Max.
* Update TIMER_IRQ to match.
* Boot now proceeds before crashing with an invalid page fault in
device manager.
Change-Id: I82f080bdc671258a1a35bf998d906e9010a6736e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8091
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
We always skip loading debug information in this case, so
querying the package kit is just a waste of time. And it could
result in hangs or crashes if the package kit is in an invalid
state (e.g. if we are debugging package_daemon.)
... up from 600MB because we need a bit more space for swap in the
live environment for 3d apps.
Fixes #18986
Change-Id: Ie8ba03c2fb65d02f1c26609d78101ee355d65630
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8085
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Cache & TLB maintenance need to be performed when TBBR1_EL1 is
enabled, not when it is setup.
* Boots all the way into the kernel (and dies in the kernel
debugger) on M1 Max hardware under virtualization.
* Add more details comments on the reasoning behind the process.
Change-Id: Ib4b5aa3bbae71d69169575c06c7cd75d616307d9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8084
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: David Karoly <karolyd577@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Rework redirection to not use synchronous XHRs.
* Fix QuickTour LoaderPage (and update bookmark to point to it.)
* Change default view of LoaderPages to List mode.
* Other misc cleanups.
Fixes #19005.
* Fix crash in arch_mmu_generate_post_efi_page_tables due to MMU being
disabled too early. Fixed by only disabling the cache/MMU while TTBRx
is being written.
* Disable I-cache while TTBRx is being written. This mirrors the
behavior in u-boot.
* With these fixes, UEFI boot now reaches ExitBootServices before
crashing.
Change-Id: Iea04765cdf914791b93b3da378b0df56e46a1d9d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8079
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: David Karoly <karolyd577@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
This has been in the last few beta releases; we should just apply
it to master at this point.
Change-Id: I9dafc6a7fe72c1144fde8b07bafd59952d1310a3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8080
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
(cherry picked from commit 85443dda80d11520b4925765bafbeb9d5cd07f2e)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8064
* Ensure that when initializing a FAT partition, the media byte value
assigned in the bootsector matches that in the first FAT entry.
* See #18969.
Change-Id: Iffc3dd7549b918954e9145a2a02221616c38a016
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8081
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
The sanity check of the physical_page_number can't work in many cases
since physical page ranges may be discontiguous. Instead what we should
check here is that the page structure address is at an expected offset
within the pages array, and print messages if it's not (and also don't
try to read the mappings linked list if it's not.)
This would have more easily caught the problem fixed in hrev57945:
the KDLs that commit fixed were "invalid concurrent access to page",
but with a very large "expected" number, indicating an overflow.
Change-Id: I784c183c2c146077ffe3c1dede2e54817bde52c7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8051
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Add the area of the tab that just got removed from the stack
to the update (redraw) region so that it will be redrawn.
Fixes #16006, #18517
Change-Id: I5a26c353e2dd2e63f72440ddd0b522b52b02b2a2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8046
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: John Scipione <jscipione@gmail.com>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: X512 X512 <danger_mail@list.ru>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
- This key code is inherited from BeOS, where it was used for the power
key on Apple ADB keyboards
- Since then, we have introduced a new system for "multimedia" keys,
that uses HID key codes directly instead of defining our own mappings
- The PS2 driver was using the HID keycode, but the USB driver was still
using the BeOS defined one
- Japanese keyboards, which have a few more keys than US and European
ones, reused the same keycode for something else
Since the power key does not need to be mapped by the keymap, move it
out of the way by using the HID keycode (key codes larger than 0x7f
cannot be mapped to UTF8 symbols). Remove all mentions of the use of
0x6b as a keycode for the power key, but add a note in the documentation
that BeOS did this.
To avoid further confusions, complete the documentation of extra
keycodes, and remove some definitions from keyboard_mouse_driver.h that
should have been in InterfaceDefs.h.
While researching this, I also found that some keys specific to Korean
keyboards were declared in the wrong place, as mapped codes instead of
unmapped ones (checked that by looking at the HID driver, which emits
these raw keycodes, and confirming that the mapped ones are not used in
any keymaps. Also added a note about the mapping of the extra modifier
keys in Japanese keyboards, which I think may be a problem since these
map to invalid UTF-8 byte sequences, but this is what the existing
keymap does, so leaving it as is for now until we can determine if this
can be changed or if we have to keep it that way.
Change-Id: I6a198a0840cba7739bdc78e0c65e5d8fd23956c9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8047
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
This avoids starting the clock at 00:00, just to jump to current time.
Change-Id: I911b60716ab60722e4ac38a3d597ab495fb5945d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8049
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
According to the ARMv7 Reference Manual, "Wait for Interrupt" is supported only through the WFI instruction on ARMv7.
The currently used ARMv6 equivalent may not work on ARMv7 and newer CPUs.
Fixes #18520
Change-Id: I69a136870654be33c0c789004e08bf610db3dd97
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8044
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
ACPI sometimes print a single message line using several calls to
its printf function. We directly map it to dprintf, which causes two problems:
- In the syslog, each call to dprintf is prefixed with 'KERN:'. So,
several 'KERN:' were added in the middle of such messages.
- The successive calls to dprintf may be intertwined with logs from
other places, making it difficult to see what message came from where.
To avoid these problems, store data in a buffer until we have a complete
line, and only then send it to dprintf. The resulting syslog is much
easier to read then.
Change-Id: I745e50b6fbbc3c875716fb68951d8d47312f96f6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6896
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
These were upstreamed in https://github.com/acpica/acpica/pull/918
Unfortunately the last release of ACPICA is just before merging these
changes.
Change-Id: Ib183235d9197bed0a421eec9adfa68c1a13c6bf4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7999
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
This change fixes the console on PowerPC machines
Change-Id: I3fdf3fb37e5358e828195803b21153a506e6c7e7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8040
Reviewed-by: waddlesplash <waddlesplash@gmail.com>