- Don't probe for EISA DMA capability on non-EISA machines (i.e. currently never). Patch by Andrey Kudravets.
CORE-9895 #resolve

svn path=/trunk/; revision=69613
This commit is contained in:
Thomas Faber 2015-10-19 08:00:47 +00:00
parent d41f9c44b4
commit 016e5d9466

View file

@ -146,15 +146,18 @@ HalpInitDma(VOID)
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)
{
DPRINT1("Machine supports EISA DMA. Bus type: %lu\n", HalpBusType);
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)
{
DPRINT1("Machine supports EISA DMA. Bus type: %lu\n", HalpBusType);
HalpEisaDma = TRUE;
}
}
/*