From 0bc87d660ce0043696cf654d1573723274265711 Mon Sep 17 00:00:00 2001 From: mintsuki Date: Fri, 15 Jan 2021 05:14:20 +0100 Subject: [PATCH] misc: Make build system download stivale headers from stivale repository and delete local copies --- .gitignore | 1 + Makefile | 7 +- stivale/stivale.h | 73 ------------------- stivale/stivale2.h | 173 --------------------------------------------- 4 files changed, 7 insertions(+), 247 deletions(-) delete mode 100644 stivale/stivale.h delete mode 100644 stivale/stivale2.h diff --git a/.gitignore b/.gitignore index cdad5b15..67b4bf89 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ !/limine.bin !/limine-pxe.bin !/stage2.map +/stivale diff --git a/Makefile b/Makefile index 81c2ca43..263915b8 100644 --- a/Makefile +++ b/Makefile @@ -33,8 +33,13 @@ bootloader-clean: stage2-clean decompressor-clean test-clean rm -f stage2/stage2.bin.gz test/stage2.map test.hdd distclean: clean bootloader-clean + rm -rf stivale -stage2: +stivale: + git clone https://github.com/stivale/stivale.git + cd stivale && git checkout b962c172cbf1cf51098758b9a62ec80c50fb6432 + +stage2: stivale $(MAKE) -C stage2 all stage2-clean: diff --git a/stivale/stivale.h b/stivale/stivale.h deleted file mode 100644 index 4fc5dbe2..00000000 --- a/stivale/stivale.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef __STIVALE__STIVALE_H__ -#define __STIVALE__STIVALE_H__ - -#include - -/* --- Header --------------------------------------------------------------- */ -/* Information passed from the kernel to the bootloader */ - -struct stivale_header { - uint64_t stack; - uint16_t flags; - uint16_t framebuffer_width; - uint16_t framebuffer_height; - uint16_t framebuffer_bpp; - uint64_t entry_point; -} __attribute__((packed)); - -/* --- Struct --------------------------------------------------------------- */ -/* Information passed from the bootloader to the kernel */ - -struct stivale_module { - uint64_t begin; - uint64_t end; - char string[128]; - uint64_t next; -} __attribute__((packed)); - -enum { - STIVALE_MMAP_USABLE = 1, - STIVALE_MMAP_RESERVED = 2, - STIVALE_MMAP_ACPI_RECLAIMABLE = 3, - STIVALE_MMAP_ACPI_NVS = 4, - STIVALE_MMAP_BAD_MEMORY = 5, - STIVALE_MMAP_KERNEL_AND_MODULES = 10, - STIVALE_MMAP_BOOTLOADER_RECLAIMABLE = 0x1000 -}; - -struct stivale_mmap_entry { - uint64_t base; - uint64_t length; - uint32_t type; - uint32_t unused; -} __attribute__((packed)); - -enum { - STIVALE_FBUF_MMODEL_RGB = 1 -}; - -struct stivale_struct { - uint64_t cmdline; - uint64_t memory_map_addr; - uint64_t memory_map_entries; - uint64_t framebuffer_addr; - uint16_t framebuffer_pitch; - uint16_t framebuffer_width; - uint16_t framebuffer_height; - uint16_t framebuffer_bpp; - uint64_t rsdp; - uint64_t module_count; - uint64_t modules; - uint64_t epoch; - uint64_t flags; // bit 0: 1 if booted with BIOS, 0 if booted with UEFI - // bit 1: 1 if extended colour information passed, 0 if not - uint8_t fb_memory_model; - uint8_t fb_red_mask_size; - uint8_t fb_red_mask_shift; - uint8_t fb_green_mask_size; - uint8_t fb_green_mask_shift; - uint8_t fb_blue_mask_size; - uint8_t fb_blue_mask_shift; -} __attribute__((packed)); - -#endif diff --git a/stivale/stivale2.h b/stivale/stivale2.h deleted file mode 100644 index df1e6ba5..00000000 --- a/stivale/stivale2.h +++ /dev/null @@ -1,173 +0,0 @@ -#ifndef __STIVALE__STIVALE2_H__ -#define __STIVALE__STIVALE2_H__ - -#include - -struct stivale2_tag { - uint64_t identifier; - uint64_t next; -} __attribute__((packed)); - -/* --- Header --------------------------------------------------------------- */ -/* Information passed from the kernel to the bootloader */ - -struct stivale2_header { - uint64_t entry_point; - uint64_t stack; - uint64_t flags; - uint64_t tags; -} __attribute__((packed)); - -#define STIVALE2_HEADER_TAG_FRAMEBUFFER_ID 0x3ecc1bc43d0f7971 - -#define STIVALE2_HEADER_TAG_FB_MTRR_ID 0x4c7bb07731282e00 - -struct stivale2_header_tag_framebuffer { - struct stivale2_tag tag; - uint16_t framebuffer_width; - uint16_t framebuffer_height; - uint16_t framebuffer_bpp; -} __attribute__((packed)); - -#define STIVALE2_HEADER_TAG_SMP_ID 0x1ab015085f3273df - -struct stivale2_header_tag_smp { - struct stivale2_tag tag; - uint64_t flags; -} __attribute__((packed)); - -#define STIVALE2_HEADER_TAG_5LV_PAGING_ID 0x932f477032007e8f - -/* --- Struct --------------------------------------------------------------- */ -/* Information passed from the bootloader to the kernel */ - -struct stivale2_struct { -#define STIVALE2_BOOTLOADER_BRAND_SIZE 64 - char bootloader_brand[STIVALE2_BOOTLOADER_BRAND_SIZE]; - -#define STIVALE2_BOOTLOADER_VERSION_SIZE 64 - char bootloader_version[STIVALE2_BOOTLOADER_VERSION_SIZE]; - - uint64_t tags; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_CMDLINE_ID 0xe5e76a1b4597a781 - -struct stivale2_struct_tag_cmdline { - struct stivale2_tag tag; - uint64_t cmdline; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_MEMMAP_ID 0x2187f79e8612de07 - -enum { - STIVALE2_MMAP_USABLE = 1, - STIVALE2_MMAP_RESERVED = 2, - STIVALE2_MMAP_ACPI_RECLAIMABLE = 3, - STIVALE2_MMAP_ACPI_NVS = 4, - STIVALE2_MMAP_BAD_MEMORY = 5, - STIVALE2_MMAP_BOOTLOADER_RECLAIMABLE = 0x1000, - STIVALE2_MMAP_KERNEL_AND_MODULES = 0x1001 -}; - -struct stivale2_mmap_entry { - uint64_t base; - uint64_t length; - uint32_t type; - uint32_t unused; -} __attribute__((packed)); - -struct stivale2_struct_tag_memmap { - struct stivale2_tag tag; - uint64_t entries; - struct stivale2_mmap_entry memmap[]; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_FRAMEBUFFER_ID 0x506461d2950408fa - -enum { - STIVALE2_FBUF_MMODEL_RGB = 1 -}; - -struct stivale2_struct_tag_framebuffer { - struct stivale2_tag tag; - uint64_t framebuffer_addr; - uint16_t framebuffer_width; - uint16_t framebuffer_height; - uint16_t framebuffer_pitch; - uint16_t framebuffer_bpp; - uint8_t memory_model; - uint8_t red_mask_size; - uint8_t red_mask_shift; - uint8_t green_mask_size; - uint8_t green_mask_shift; - uint8_t blue_mask_size; - uint8_t blue_mask_shift; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_FB_MTRR_ID 0x6bc1a78ebe871172 - -#define STIVALE2_STRUCT_TAG_MODULES_ID 0x4b6fe466aade04ce - -struct stivale2_module { - uint64_t begin; - uint64_t end; - -#define STIVALE2_MODULE_STRING_SIZE 128 - char string[STIVALE2_MODULE_STRING_SIZE]; -} __attribute__((packed)); - -struct stivale2_struct_tag_modules { - struct stivale2_tag tag; - uint64_t module_count; - struct stivale2_module modules[]; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_RSDP_ID 0x9e1786930a375e78 - -struct stivale2_struct_tag_rsdp { - struct stivale2_tag tag; - uint64_t rsdp; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_EPOCH_ID 0x566a7bed888e1407 - -struct stivale2_struct_tag_epoch { - struct stivale2_tag tag; - uint64_t epoch; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_FIRMWARE_ID 0x359d837855e3858c - -struct stivale2_struct_tag_firmware { - struct stivale2_tag tag; - uint64_t flags; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_SMP_ID 0x34d1d96339647025 - -struct stivale2_smp_info { - uint32_t processor_id; - uint32_t lapic_id; - uint64_t target_stack; - uint64_t goto_address; - uint64_t extra_argument; -} __attribute__((packed)); - -struct stivale2_struct_tag_smp { - struct stivale2_tag tag; - uint64_t flags; - uint32_t bsp_lapic_id; - uint32_t unused; - uint64_t cpu_count; - struct stivale2_smp_info smp_info[]; -} __attribute__((packed)); - -#define STIVALE2_STRUCT_TAG_PXE_SERVER_INFO 0x29d1e96239247032 - -struct stivale2_struct_tag_pxe_server_info { - struct stivale2_tag tag; - uint32_t server_ip; -} __attribute__((packed)); - -#endif