Commit Graph

132 Commits

Author SHA1 Message Date
Mintsuki
f1b89ec1bb sys/cpu: Replace cycle-based delay() with calibrated stall() 2026-02-19 20:37:36 +01:00
Mintsuki
229bc85481 drivers/gop: Ensure SetMode is called at least once per GOP handle 2026-02-19 20:37:36 +01:00
Mintsuki
1f9a418511 drivers/gop: Use gop->Mode->Info for pitch instead of QueryMode 2026-02-19 20:37:36 +01:00
Mintsuki
e0f56b958f drivers/gop: Remove unnecessary pitch calculation cast 2026-02-19 20:37:36 +01:00
Mintsuki
f85f86ff42 drivers/disk: Remove sector size whitelist 2026-02-19 20:37:36 +01:00
Mintsuki
66fe9a7cce drivers/vbe: Remove unnecessary EDID resolution bounds check 2026-02-19 20:37:36 +01:00
Mintsuki
38cebea808 drivers/vbe: Skip modes with invalid pitch values 2026-02-19 20:37:36 +01:00
Mintsuki
0996767811 drivers/gop: Skip modes with invalid pitch values 2026-02-19 20:37:36 +01:00
Mintsuki
a2fc8af1e3 drivers/disk: Move BlockSize and LastBlock validation before volume allocation 2026-02-10 11:10:03 +01:00
Mintsuki
4e05e7852c drivers/disk: Skip UEFI block devices with BlockSize == 0 2026-02-10 11:10:02 +01:00
Mintsuki
8c4fc614f1 drivers/disk: Free volume on detect_sector_size failure 2026-02-10 11:10:02 +01:00
Mintsuki
00a542f0c6 misc: Fix wrong format specifiers for 64-bit arguments in print calls 2026-02-10 11:10:02 +01:00
Mintsuki
ac09279d91 drivers/gop: Reject PixelBitMask modes with all-zero masks 2026-02-10 10:58:04 +01:00
Mintsuki
0f4c63a93e drivers/vga_textmode: Copy attribute byte in text_move_character 2026-02-10 10:58:04 +01:00
Mintsuki
ac4d2bb589 drivers/disk: Guard against LastBlock == UINT64_MAX overflow 2026-02-10 10:58:03 +01:00
Mintsuki
f1765109ec drivers/disk: Re-add mistakenly removed responsiveness check for EFI volumes 2026-02-05 13:28:18 +01:00
Mintsuki
e5d6b4c5db drivers/disk: Lazily find unique sectors if needed 2026-02-04 08:47:52 +01:00
Mintsuki
7e392b12cd drivers/disk: Add extra layer of verification for unique sector fallback matches 2026-02-04 08:47:52 +01:00
Mintsuki
2c29269804 drivers/disk: Use volume_by_device_path() as primary detection method 2026-02-04 08:47:52 +01:00
Mintsuki
e2e5e6dcf4 drivers/disk: Normalise sect_count to always be in 512-byte blocks 2026-02-04 08:47:52 +01:00
Mintsuki
36885711f7 drivers/disk: Fix issue with unique sectors discovery
Sometimes (in cases with 3+ instances of collisions) non-unique cases could be classified as unique.
2026-02-04 08:47:52 +01:00
Mintsuki
f6b393b5d0 drivers/disk: Work around PicoEFI structure definition issue in volume_by_device_path() 2026-02-04 08:47:52 +01:00
Mintsuki
643e042a93 drivers/disk: Optical volume detection without writes on BIOS 2026-02-02 03:12:37 +01:00
Mintsuki
852381e60f drivers/disk: Get rid of more unreliable volume detection methods and misc fixes 2026-02-02 03:12:37 +01:00
Mintsuki
8631da1c92 drivers/disk: Re-add unique sector volume detection method 2026-02-02 03:12:37 +01:00
Mintsuki
f67649238b drivers/disk: Refactor disk_volume_from_efi_handle() and disk_create_index() to not ever attempt disk writes 2026-02-02 03:12:37 +01:00
Mintsuki
6875b2ad84 gop: Fix potential integer overflow in pitch calculation 2026-01-14 18:40:49 +01:00
Mintsuki
96d9167bc3 edid: Fix memory leak on UEFI error path 2026-01-14 18:40:49 +01:00
Mintsuki
f92bec0534 gop: Fix mode count mismatch in get_mode_list() 2026-01-14 18:40:49 +01:00
Mintsuki
5971be9a33 disk: Free volume struct on partition enumeration failure 2026-01-14 18:40:49 +01:00
Marvin Friedrich
db3ac54d4e drivers/serial: Initialize serial baudrate ahead of time 2026-01-06 15:08:00 +01:00
Mintsuki
0b17ff4a98 drivers/serial: Validate baud rate to prevent division by zero 2026-01-04 18:31:09 +01:00
Mintsuki
18fb572dd2 mm/pmm: Use uint64_t instead of size_t for the size argument for ext_mem_alloc/pmm_free functions 2025-12-27 22:45:52 +01:00
Mintsuki
1b5f95c2ac drivers/vbe: Add iteration limit and EDID sanity checks 2025-12-26 13:30:13 +01:00
Mintsuki
8a0f7684a7 drivers/disk: Validate sector size and device path traversal 2025-12-26 13:27:34 +01:00
Mintsuki
71a5cf86b1 drivers/gop: Fix current_fallback incremented before use bug 2025-12-25 20:20:42 +01:00
Mintsuki
42e5fb9ded drivers/disk: Skip EFI handles with VenHw(7CCE9C94-983F-4D0A-8143-B6C05545B223)
See https://github.com/limine-bootloader/limine/issues/521#issuecomment-3160168795
2025-10-29 00:01:44 +01:00
Mintsuki
aeb805620d drivers/serial: Default baud rate to 115200 instead of 9600 on BIOS 2025-09-15 20:07:23 +02:00
Mintsuki
a0b5faddf9 drivers/disk: Partial revert of f39f51d0; ensure EFI handles are HDD type before attempting write-back method 2025-09-13 22:11:22 +02:00
Mintsuki
e9592014da drivers/disk: Only validate EFI handle before running the fallback detection method 2025-09-05 22:52:35 +02:00
Mintsuki
d36726b4ba drivers/disk: EFI: Do not disable write caching unnecessarily
See #525
2025-08-06 18:45:42 +02:00
Mintsuki
b1422f5692 drivers/disk: EFI: Attempt to restore original data to volume even after a write failure
See #525
2025-08-06 18:23:55 +02:00
Mintsuki
47667c34f4 drivers/disk: EFI: More coarse validation of handles based on PCI HW subtype 2025-08-06 16:11:57 +02:00
Mintsuki
a68dd11cff driver/disk: EFI: Attempt to validate EFI volume handles before use 2025-08-06 06:44:14 +02:00
Mintsuki
05b1a75fde misc: Update Flanterm to latest 2025-07-14 15:36:58 +02:00
Mintsuki
dc42296949 drivers/disk: Reinstate limit for scanned drives to 0xf0 for BIOS 2025-05-27 19:59:58 +02:00
Mintsuki
73d03e7149 disk: Avoid mistakingly allocating more memory than necessary
What should've been a sizeof(void *) had been a sizeof(struct volume) for the longest time
2025-03-25 23:18:20 +01:00
Mintsuki
3ef6bb6764 disk: Handle dynamically allocating volume index. Fixes #481 2025-03-25 21:54:08 +01:00
mintsuki
04883abb0c drivers/vbe: Fix size of reserved area of VBE mode info struct 2024-10-15 21:40:18 +02:00
mintsuki
568f665be3 drivers/vbe: Improve error handling for get_vbe_mode_info() and set_vbe_mode() 2024-07-21 08:17:17 +02:00