Remove the uncacheable bit 39 check (needs to be merged in with head tree

if Tru64 is to continue to be supported on Turbolaser) and fixed
translation of physical addresses by clearing PA<42:35> when the real
uncachable bit (43) is set

arch/alpha/ev5.hh:
    Change to support 256 ASNs and seperate VA_SPACE checks for EV5 and EV6
    also add support proper translation of uncacheable physical addresses
dev/ide_ctrl.cc:
    Fix to work with real address translation

--HG--
extra : convert_revision : aa3d1c284b8271d4763a8da2509c91bbcf83189a
This commit is contained in:
Andrew Schultz
2004-05-19 15:58:24 -04:00
parent 675b849b50
commit f5c7b1358c
3 changed files with 29 additions and 45 deletions

View File

@@ -357,7 +357,7 @@ IdeController::WriteConfig(int offset, int size, uint32_t data)
pioInterface->addAddrRange(pri_cmd_addr,
pri_cmd_addr + pri_cmd_size - 1);
pri_cmd_addr = ((pri_cmd_addr | 0xf0000000000ULL) & PA_IMPL_MASK);
pri_cmd_addr = pri_cmd_addr & PA_UNCACHED_MASK;
break;
case PCI0_BASE_ADDR1:
@@ -366,7 +366,7 @@ IdeController::WriteConfig(int offset, int size, uint32_t data)
pioInterface->addAddrRange(pri_ctrl_addr,
pri_ctrl_addr + pri_ctrl_size - 1);
pri_ctrl_addr = ((pri_ctrl_addr | 0xf0000000000ULL) & PA_IMPL_MASK);
pri_ctrl_addr = pri_ctrl_addr & PA_UNCACHED_MASK;
break;
case PCI0_BASE_ADDR2:
@@ -375,7 +375,7 @@ IdeController::WriteConfig(int offset, int size, uint32_t data)
pioInterface->addAddrRange(sec_cmd_addr,
sec_cmd_addr + sec_cmd_size - 1);
sec_cmd_addr = ((sec_cmd_addr | 0xf0000000000ULL) & PA_IMPL_MASK);
sec_cmd_addr = sec_cmd_addr & PA_UNCACHED_MASK;
break;
case PCI0_BASE_ADDR3:
@@ -384,7 +384,7 @@ IdeController::WriteConfig(int offset, int size, uint32_t data)
pioInterface->addAddrRange(sec_ctrl_addr,
sec_ctrl_addr + sec_ctrl_size - 1);
sec_ctrl_addr = ((sec_ctrl_addr | 0xf0000000000ULL) & PA_IMPL_MASK);
sec_ctrl_addr = sec_ctrl_addr & PA_UNCACHED_MASK;
break;
case PCI0_BASE_ADDR4:
@@ -392,7 +392,7 @@ IdeController::WriteConfig(int offset, int size, uint32_t data)
if (pioInterface)
pioInterface->addAddrRange(bmi_addr, bmi_addr + bmi_size - 1);
bmi_addr = ((bmi_addr | 0xf0000000000ULL) & PA_IMPL_MASK);
bmi_addr = bmi_addr & PA_UNCACHED_MASK;
break;
}
}