Commit Graph

86 Commits

Author SHA1 Message Date
mintsuki
e207c03f69 build: Drop -mabi=sysv for x86 for clang 16 2023-08-29 22:34:27 -05:00
mintsuki
50b8ab2c26 rv64: Misc relaxation related fixes 2023-08-01 05:32:05 -05:00
mintsuki
871a8053c2 build: Get rid of OBJCOPY2ELF_FLAGS since only IA-32/BIOS used it 2023-07-26 17:05:06 -05:00
mintsuki
49ecb6b577 build: Get rid of RISCV_CFLAGS variable as it is now unnecessary 2023-07-26 17:04:54 -05:00
mintsuki
bc1896c5bb riscv64: Do not use global pointer register 2023-07-26 17:04:30 -05:00
mintsuki
99d671ecf8 build: Drop -Wno-deprecated-declarations flag 2023-06-20 16:24:27 +02:00
mintsuki
bc8188e275 misc: limine.sys -> limine-bios.sys 2023-06-15 02:02:32 +02:00
mintsuki
7b1284808a build: Fix permissions of output files in makefile instead of release recipe 2023-06-15 01:33:17 +02:00
mintsuki
2b154138fe misc: Updates for new limine-efi 2023-06-12 05:57:47 +02:00
mintsuki
cde874fe80 misc: Updates for new flanterm 2023-06-10 19:23:50 +02:00
mintsuki
13042bd25e build/riscv64: libgcc-riscv64 -> libgcc-riscv64-softfloat 2023-06-06 00:02:07 +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
eac03c8c89 build/uefi: Remove now-useless -DGNU_EFI_USE_MS_ABI flag 2023-05-28 23:53:34 +02:00
mintsuki
0125dcd67a build/uefi: Pass -fshort-wchar to CC 2023-05-27 16:55:49 +02:00
mintsuki
f618eb26af Revert "misc: Revert back to using tinf for all GZ decompression"
This reverts commit 3438b8d235.
2023-05-03 19:53:27 +02:00
mintsuki
c41e3969a6 build: Pass proper warning flags to nasm 2023-04-18 12:41:01 +02:00
mintsuki
eba0183b6e build: Reorganise warning flags 2023-04-11 17:15:41 +02:00
mintsuki
ebd1953e51 build: Use uppercase PIE/PIC compilation flags 2023-04-11 15:57:02 +02:00
mintsuki
3438b8d235 misc: Revert back to using tinf for all GZ decompression 2023-04-08 02:17:02 +02:00
mintsuki
d0df21abb9 limine: Mark terminal as deprecated 2023-03-30 02:12:24 +02:00
mintsuki
0196abf2ec build: Minor build system updates 2023-03-23 02:35:08 +01:00
mintsuki
2ea3f7e9d8 build: Minor build system updates 2023-03-23 01:02:58 +01:00
mintsuki
9663318102 build: Remove useless unset commands from common GNUmakefile 2023-03-16 17:01:41 +01:00
mintsuki
fadb9a7c13 build: Misc updates for new freestanding-toolchain 2023-03-16 03:38:53 +01:00
mintsuki
f71f506b0a build: configure: Change some variable names to be more friendly 2023-03-16 02:28:50 +01:00
mintsuki
9009404a11 build: Updates for newer freestanding-toolchain 2023-03-14 17:20:46 +01:00
mintsuki
4ef529b4eb misc: Load BIOS port at 0xf000 instead of 0x8000 2023-03-07 02:21:09 +01:00
mintsuki
11ef3bced2 build: Honour CROSS_CPPFLAGS 2023-02-25 01:38:26 +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
71b3ae548b compress: Replace tinf's inflate implementation with stb_image's zlib 2023-02-15 11:21:53 +01:00
mintsuki
45312e66ae term: Add builtin font 2022-10-04 06:04:31 +02:00
mintsuki
b1bfa2d2d8 build: Fix issue introduced in 87e09dba 2022-09-20 10:02:33 +02:00
mintsuki
87e09dba61 build: Plug back limine_stage2only.elf into the BIOS build system 2022-09-19 02:31:23 +02:00
mintsuki
0ae552a25c misc: Misc stage 2 related improvements 2022-09-17 13:53:57 +02:00
mintsuki
7e6aad3113 build: Fix stage2 map 2022-09-14 02:20:12 +02:00
mintsuki
07c446f293 build: Updates for new limine-efi 2022-09-02 11:01:13 +02:00
mintsuki
c44f514738 misc: Rename UEFI and BIOS define macros 2022-09-02 02:29:12 +02:00
mintsuki
c34db50cfd build: Small formatting fix 2022-08-31 00:40:59 +02:00
mintsuki
21fa4a9616 build: Update for new cross-detect 2022-08-29 21:52:59 +02:00
mintsuki
44df23c81a build: Update linker and compiler flags 2022-08-28 23:24:47 +02:00
mintsuki
6631b595f2 build: Pretty up find calls 2022-08-27 05:09:42 +02:00
mintsuki
a91abf2c2a build: Handle -no-pie bug with cross-detect 2022-08-26 10:23:35 +02:00
mintsuki
5f7cb5c83f build: Properly set target arch on objcopy to ELF 2022-08-25 22:07:50 +02:00
mintsuki
04a6389fd8 build: Improvements and updates for new limine-efi 2022-08-23 01:41:18 +02:00
mintsuki
2460b33f9c build: Misc build system improvements 2022-08-23 00:21:09 +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
5f1680acc1 build: Misc improvements to makefiles 2022-08-15 17:41:04 +02:00
mintsuki
1e9ac0ac01 build: Update makefiles to not use INTERNAL variables 2022-08-15 16:37:31 +02:00
mintsuki
73f958e92e Revert "Revert "gensyms: Use as instead of nasm""
This reverts commit b3ca8ae9a2.
2022-08-13 20:32:06 +02:00