Commit Graph

72 Commits

Author SHA1 Message Date
mintsuki a795dc1972 build: Backport misc autoconf/pkgconf improvements 2023-10-24 01:21:24 +02:00
mintsuki 49cfba851c build: Misc minor QOL configure.ac/GNUmakefile.in improvements 2023-10-24 01:21:24 +02:00
mintsuki ece02695e8 misc: limine-cd.bin -> limine-bios-cd.bin 2023-06-15 01:07:44 +02:00
mintsuki 264decd0ef misc: limine-cd-efi.bin -> limine-uefi-cd.bin 2023-06-14 03:14:41 +02:00
mintsuki d0b9bbdca6 misc: limine-pxe.bin -> limine-bios-pxe.bin 2023-06-14 03:04:01 +02:00
xvanc 9274ee656e
Initial riscv64 port (#274)
* initial riscv64 port

* enable Paging Mode feature for all architectures

* riscv: add missing protocol docs

* riscv: fix tests

* docs: clarify `LIMINE_PAGING_MODE_DEFAULT` macro

* build: fix whitespace in common/GNUmakefile

* riscv: default to Sv48 paging when supported

* vmm: make `VMM_MAX_LEVEL` 1-indexed

* limine: do not call `reported_addr()` before finaling paging mode

smp/riscv: do not overwrite the argument passed to APs

* limine/riscv: update default paging mode in limine.h

* test/riscv: pad OVMF.fd when downloading it
2023-06-04 01:36:06 +02:00
mintsuki 7ad444936e host: Condense various host utilities into a single executable 2023-04-11 22:04:05 +02:00
mintsuki eba0183b6e build: Reorganise warning flags 2023-04-11 17:15:41 +02:00
mintsuki 0196abf2ec build: Minor build system updates 2023-03-23 02:35:08 +01:00
mintsuki f71f506b0a build: configure: Change some variable names to be more friendly 2023-03-16 02:28:50 +01:00
mintsuki c7a7539d23 build: configure: Exit on freestanding-toolchain error 2023-03-14 22:35:11 +01:00
mintsuki 7dc04b42cc build: Add and use PROG_ABSPATH autoconf macro 2023-03-14 19:51:22 +01:00
mintsuki 9009404a11 build: Updates for newer freestanding-toolchain 2023-03-14 17:20:46 +01:00
mintsuki 8d61d0ab3a misc: Use freestanding-toolchain instead of cross-detect 2023-03-13 20:40:32 +01:00
mintsuki d1e4b9946c docs: LICENSE.md -> LICENSE 2023-03-10 14:01:49 +01:00
mintsuki 11ef3bced2 build: Honour CROSS_CPPFLAGS 2023-02-25 01:38:26 +01:00
mintsuki d17e220e61 docs: Add man pages for host executables 2023-02-21 00:15:04 +01:00
mintsuki 9bcad9d258 build: Very minor QOL fixes 2023-02-20 22:24:21 +01:00
mintsuki c924d7b7e5 build: Misc quality-of-life fixes 2023-02-19 10:07:21 +01:00
mintsuki 8b7dc549f7 build: Misc configure.ac improvements, install-strip fix ups 2023-02-12 20:14:51 +01:00
mintsuki 7e46840b86 build: Update for latest cross-detect 2023-02-12 07:39:17 +01:00
mintsuki 390372533f build: Update build option dependencies and names 2022-09-22 15:58:59 +02:00
mintsuki dab2a35b3e build: Honor CPPFLAGS variable 2022-09-20 21:28:12 +02:00
mintsuki 430e841903 build: Do not request readelf from cross-detect when not needed 2022-09-15 06:56:32 +02:00
mintsuki 708868c889 build: Change name of --enable-uefi-x86_64 option to --enable-uefi-x86-64 2022-09-15 06:38:04 +02:00
mintsuki a95d475c89 build: Only check nasm and gzip presence as needed 2022-09-15 06:33:29 +02:00
mintsuki fe00a3c45d build: Updates for new cross-detect 2022-09-11 15:23:58 +02:00
mintsuki 4869c14ce0 build: Fix cross-detect errors detection for aarch64 2022-09-01 04:47:19 +02:00
mintsuki 57194bc15e build: Default to -O2 optimisation instead of -O3 2022-08-28 23:50:25 +02:00
mintsuki a91abf2c2a build: Handle -no-pie bug with cross-detect 2022-08-26 10:23:35 +02:00
mintsuki 2460b33f9c build: Misc build system improvements 2022-08-23 00:21:09 +02:00
mintsuki c626e63b56 build: Fix #208 2022-08-22 18:41:32 +02:00
Kacper Słomiński e1f6ac8860
Initial AArch64 port (#205)
* Initial aarch64 port

* Enable chainload on aarch64

No changes necessary since it's all UEFI anyway.

* Add specification for Limine protocol for aarch64

* PROTOCOL: Specify state of information in DT /chosen node

* common: Add spinup code for aarch64

* common: Port elf and term to aarch64

* common: Port vmm to aarch64

Also prepare to drop VMM_FLAG_PRESENT on x86.

* protos: Port limine boot protocol to aarch64

Also drop VMM_FLAG_PRESENT since we never unmap pages anyway.

* test: Add DTB request

* PROTOCOL: Port SMP request to aarch64

* cpu: Add cache maintenance functions for aarch64

* protos/limine, sys: Port SMP to aarch64

Also move common asm macros into a header file.

* test: Start up APs

* vmm: Unify get_next_level and implement large page splitting

* protos/limine: Map framebuffer using correct caching mode on AArch64

* CI: Fix GCC build for aarch64

* entry, menu: Replace uses of naked attribute with separate asm file

GCC does not understand the naked attribute on aarch64, and didn't
understand it for x86 in older versions.
2022-08-18 17:32:54 +02:00
mintsuki dc3a81cb61 build: Drop support for building GCC toolchain 2022-08-09 13:30:16 +02:00
mintsuki 4422ebd61c build: Get proper mkdir -p from autoconf 2022-08-08 22:00:25 +02:00
mintsuki 6106285d35 build: Move to using external cross-detect package 2022-07-05 09:14:48 +02:00
mintsuki 1843b26078 build: Minor configure.ac adjustments 2022-07-04 09:09:46 +02:00
mintsuki 8f8af188fb build: Make sure autoreconf -fvi is able to reconf tarballs. Fixes #187 2022-07-02 12:34:01 +02:00
mintsuki 4b32083ab6 build: Misc improvements 2022-06-22 21:56:41 +02:00
mintsuki 9f00d613a1 build: Update for newer limine-efi 2022-06-22 21:24:30 +02:00
mintsuki 2590c5ac05 build: Remove useless LIMINE_AS 2022-06-21 22:14:05 +02:00
mintsuki 53a2dbefdf build: Improve toolchain detection 2022-06-20 00:22:02 +02:00
mintsuki 7eac8416e7 build: Run toolchain-detect at configure time 2022-06-18 03:03:06 +02:00
mintsuki 7404cb467e build: Add toolchain-detect 2022-06-15 07:16:41 +02:00
mintsuki 0c084e37d5 build: Remove useless x86-specific test from configure 2022-06-15 05:28:53 +02:00
mintsuki 539ac94563 build: Disable all ports by default 2022-06-15 05:01:22 +02:00
mintsuki 1fc8247a86 build: Increase portability of Makefile targets 2022-06-15 03:25:36 +02:00
mintsuki 3d9737f5e6 build: Configure improvements 2022-05-21 04:23:03 +02:00
mintsuki 64e9c11daa build: No longer hard depend on GNU binutils 2022-04-20 04:38:58 +02:00
mintsuki c052509567 misc: limine-s2deploy -> limine-deploy 2022-04-02 09:31:19 +02:00