diff --git a/sysdata/libraries/pci/src/lib.hb b/sysdata/libraries/pci/src/lib.hb index 54fb294..1445fae 100644 --- a/sysdata/libraries/pci/src/lib.hb +++ b/sysdata/libraries/pci/src/lib.hb @@ -13,7 +13,10 @@ scan_bus := fn(): void { config_read32 := fn(bus: u32, device: u32, func: u32, offset: u32): u32 { // construct address param - address := bus << 16 | device << 11 | func << 8 | offset & 0xFC | 0x80000000 + address := bus << 16 | device << 11 | func << 8 + address |= offset + address &= 0xFC + address |= 0x80000000 // write address //Port::new(0xCF8).write(address);