Index: hal/halx86/generic/dma.c =================================================================== --- hal/halx86/generic/dma.c (revision 68317) +++ hal/halx86/generic/dma.c (working copy) @@ -142,14 +142,17 @@ HalpDmaOperations.FreeMapRegisters = (PFREE_MAP_REGISTERS)IoFreeMapRegisters; HalpDmaOperations.MapTransfer = (PMAP_TRANSFER)IoMapTransfer; - /* - * Check if Extended DMA is available. We're just going to do a random - * read and write. - */ - WRITE_PORT_UCHAR((PUCHAR)FIELD_OFFSET(EISA_CONTROL, DmaController2Pages.Channel2), 0x2A); - if (READ_PORT_UCHAR((PUCHAR)FIELD_OFFSET(EISA_CONTROL, DmaController2Pages.Channel2)) == 0x2A) + if (HalpBusType == MACHINE_TYPE_EISA) { - HalpEisaDma = TRUE; + /* + * Check if Extended DMA is available. We're just going to do a random + * read and write. + */ + WRITE_PORT_UCHAR((PUCHAR)FIELD_OFFSET(EISA_CONTROL, DmaController2Pages.Channel2), 0x2A); + if (READ_PORT_UCHAR((PUCHAR)FIELD_OFFSET(EISA_CONTROL, DmaController2Pages.Channel2)) == 0x2A) + { + HalpEisaDma = TRUE; + } } /*