tlb.cc (3902:f09fe9c1e609) tlb.cc (3906:4cf7d8d42349)
1/*
2 * Copyright (c) 2001-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 862 unchanged lines hidden (view full) ---

871 pkt->set(tc->readMiscRegWithEffect(MISCREG_SCRATCHPAD_R0 + (va >> 3)));
872 break;
873 case ASI_IMMU:
874 switch (va) {
875 case 0x0:
876 temp = tc->readMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS);
877 pkt->set(bits(temp,63,22) | bits(temp,12,0) << 48);
878 break;
1/*
2 * Copyright (c) 2001-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 862 unchanged lines hidden (view full) ---

871 pkt->set(tc->readMiscRegWithEffect(MISCREG_SCRATCHPAD_R0 + (va >> 3)));
872 break;
873 case ASI_IMMU:
874 switch (va) {
875 case 0x0:
876 temp = tc->readMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS);
877 pkt->set(bits(temp,63,22) | bits(temp,12,0) << 48);
878 break;
879 case 0x18:
880 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_ITLB_SFSR));
881 break;
879 case 0x30:
880 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS));
881 break;
882 default:
883 goto doMmuReadError;
884 }
885 break;
886 case ASI_DMMU:
887 switch (va) {
888 case 0x0:
889 temp = tc->readMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS);
890 pkt->set(bits(temp,63,22) | bits(temp,12,0) << 48);
891 break;
882 case 0x30:
883 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS));
884 break;
885 default:
886 goto doMmuReadError;
887 }
888 break;
889 case ASI_DMMU:
890 switch (va) {
891 case 0x0:
892 temp = tc->readMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS);
893 pkt->set(bits(temp,63,22) | bits(temp,12,0) << 48);
894 break;
895 case 0x18:
896 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_DTLB_SFSR));
897 break;
898 case 0x20:
899 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_DTLB_SFAR));
900 break;
892 case 0x30:
893 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS));
894 break;
895 case 0x80:
896 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_PART_ID));
897 break;
898 default:
899 goto doMmuReadError;

--- 165 unchanged lines hidden (view full) ---

1065 warn("Ignoring write to SPARC ERROR regsiter\n");
1066 break;
1067 case ASI_HYP_SCRATCHPAD:
1068 case ASI_SCRATCHPAD:
1069 tc->setMiscRegWithEffect(MISCREG_SCRATCHPAD_R0 + (va >> 3), data);
1070 break;
1071 case ASI_IMMU:
1072 switch (va) {
901 case 0x30:
902 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS));
903 break;
904 case 0x80:
905 pkt->set(tc->readMiscRegWithEffect(MISCREG_MMU_PART_ID));
906 break;
907 default:
908 goto doMmuReadError;

--- 165 unchanged lines hidden (view full) ---

1074 warn("Ignoring write to SPARC ERROR regsiter\n");
1075 break;
1076 case ASI_HYP_SCRATCHPAD:
1077 case ASI_SCRATCHPAD:
1078 tc->setMiscRegWithEffect(MISCREG_SCRATCHPAD_R0 + (va >> 3), data);
1079 break;
1080 case ASI_IMMU:
1081 switch (va) {
1082 case 0x18:
1083 tc->setMiscRegWithEffect(MISCREG_MMU_ITLB_SFSR, data);
1084 break;
1073 case 0x30:
1074 tc->setMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS, data);
1075 break;
1076 default:
1077 goto doMmuWriteError;
1078 }
1079 break;
1080 case ASI_ITLB_DATA_ACCESS_REG:

--- 55 unchanged lines hidden (view full) ---

1136 tc->getITBPtr()->demapAll(part_id);
1137 break;
1138 default:
1139 panic("Invalid type for IMMU demap\n");
1140 }
1141 break;
1142 case ASI_DMMU:
1143 switch (va) {
1085 case 0x30:
1086 tc->setMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS, data);
1087 break;
1088 default:
1089 goto doMmuWriteError;
1090 }
1091 break;
1092 case ASI_ITLB_DATA_ACCESS_REG:

--- 55 unchanged lines hidden (view full) ---

1148 tc->getITBPtr()->demapAll(part_id);
1149 break;
1150 default:
1151 panic("Invalid type for IMMU demap\n");
1152 }
1153 break;
1154 case ASI_DMMU:
1155 switch (va) {
1156 case 0x18:
1157 tc->setMiscRegWithEffect(MISCREG_MMU_DTLB_SFSR, data);
1158 break;
1144 case 0x30:
1145 tc->setMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS, data);
1146 break;
1147 case 0x80:
1148 tc->setMiscRegWithEffect(MISCREG_MMU_PART_ID, data);
1149 break;
1150 default:
1151 goto doMmuWriteError;

--- 100 unchanged lines hidden ---
1159 case 0x30:
1160 tc->setMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS, data);
1161 break;
1162 case 0x80:
1163 tc->setMiscRegWithEffect(MISCREG_MMU_PART_ID, data);
1164 break;
1165 default:
1166 goto doMmuWriteError;

--- 100 unchanged lines hidden ---