Commit Graph
13 Commits
Author SHA1 Message Date
daniel b44b3ffe43 feat: USB root boot on Pi 4/400 - wait up to 10s for a late MONTAUKROOT, retry USB enumeration after a port reset, recover halted EP0/bulk endpoints, MSC card reader settle (TUR/sense, CSW stall) 2026-10-25 17:55:49 +01:00
daniel ffee9002a6 feat: Raspberry Pi 4/400 Bluetooth over mini UART (H4, Broadcom patchram, firmware mailbox BT_ON); move BT stack to Drivers/Bluetooth 2026-10-25 15:59:33 +01:00
daniel 808e1d66fd feat: aarch64 port - Raspberry Pi 4/400 SD boot (SDHCI, ext2 root + first-boot grow), USB hubs, PCI INTx routing, SMP, DMA fences 2026-10-25 13:48:26 +01:00
daniel 24f88ec4c6 feat: power down dGPUs on hybrid graphics laptops 2026-10-01 13:09:26 +02:00
daniel a01e63c717 feat: intel wi-fi (AX211) driver with network scanning 2026-08-06 08:36:10 +02:00
danielandClaude Fable 5 500020ce47 fix: match Intel HDA controllers enumerated as subclass 0x01
Restricting the IntelHDA PCI match to subclass 0x03 (e0c02f7) hid the
speakers on modern laptops, where the same HDA controller enumerates
as 0x01 (Multimedia audio controller) when the Smart Sound DSP is
enabled. Match any multimedia subclass instead; legacy AC'97 devices
also report 0x01 but expose an I/O-space BAR0, which Probe already
rejects via the ReadBar0 check.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 12:41:28 +02:00
danielandClaude Fable 5 e0c02f76d3 fix: boot failure on VirtualBox legacy-BIOS VMs (AC'97 probed as HDA)
VirtualBox default VMs expose an AC'97 audio controller (8086:2415,
class 04/subclass 01) whose BAR0 is an I/O-space BAR. The IntelHDA
driver matched any Intel multimedia subclass, and ReadBar0 masked the
I/O BAR's port number into a bogus 'physical address' that MapMMIO
panicked on (non-page-aligned), halting boot.

Two fixes:
- IntelHDA now matches only subclass 0x03 (HD Audio); AC'97 (0x01) is
  a different programming model and is not claimed.
- ReadBar0 returns 0 (no usable MMIO BAR) for I/O-space BARs instead
  of handing a port number to MapMMIO.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 16:33:54 +02:00
daniel fc106e6c71 cleanup: rename Graphics:Cursor => Graphics::Framebuffer 2026-06-21 10:42:27 +02:00
daniel 9f54e4957d feat: Intel HDA audio driver, audio streaming syscalls, userspace Music app, fixes and improvements, rudimentary Bluetooth support 2026-03-10 17:14:33 +01:00
daniel b540a43f39 feat: GPT, FAT32 driver, disks app, userspace adapted for multiple drives, and more 2026-03-07 15:58:27 +01:00
daniel 663567fbb3 feat: Ahci, ACPI shutdown 2026-03-06 23:39:35 +01:00
daniel 5dded4bda0 feat: graphics/net PnP, keyboard driver improvements 2026-03-04 21:10:34 +01:00
daniel cd8f756574 cleanup: move some logic out of kernel Main.cpp into separate files/functions 2026-03-03 20:30:59 +01:00