summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-07-28Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/alpha-systemBenjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/alpha-system console/console.c: Clean up code. h/rpb.h: Update CTB struct.
2005-07-28changesMiguel Serrano
console/console.c: fixed bootstrap stack h/rpb.h: ctb_term_type instead of ctb_baud
2005-07-26Merge m5read@m5.eecs.umich.edu:/bk/alpha-systemBenjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/alpha-system
2005-07-26New console terminal block structure, fix kernel stack pointer.Benjamin Nash
console/console.c: Use virtual addresses for kernel stack pointer, use new ctb structure. h/rpb.h: Update console terminal block structure.
2005-06-29Add missing TSUNAMI ipi code.Nathan Binkert
2005-06-28console code cleanupNathan Binkert
console/console.c: the go parameter to unixBoot is never used, so get rid of it. just panic if we return from unixBoot since it's never supposed to happen. remove the MAX_CPUS parameter and the bootStrapImpure variable and just allocate memory as needed. (Can in theory support many more CPUs.)
2005-06-28pass the location of the m5 backdoor via the m5AlphaAccess variableNathan Binkert
only compile one console console/Makefile: Now that the location of the m5 backdoor is passed into the console via the m5AlphaAccess variable, we only need to compile one console, and don't need to define TLASER or TSUNAMI console/console.c: Don't hardcode the location of the AlphaAccess structure, but rely on m5 to pass in the correct value. Setup "volatile struct AlphaAccess *m5AlphaAccess" for use and get rid of the hardcoded usage.
2005-06-27Add tlaser.h, required by platform.SNathan Binkert
2005-06-27Major system code cleanup and formattingNathan Binkert
remove unused code console/Makefile: cleanup Makefile. Remove unneeded -D options console/console.c: Major cleanup and formatting remove unused #ifdef code remove unused #includes rename xxm -> m5 rename simos -> m5 console/dbmentry.S: console/paljtokern.S: console/paljtoslave.S: console/printf.c: Major cleanup and formatting remove unused #ifdef code remove unused #includes rename __start -> _start to get rid of warning. h/cserve.h: h/dc21164FromGasSources.h: h/ev5_alpha_defs.h: h/ev5_defs.h: h/ev5_osfalpha_defs.h: h/ev5_paldef.h: h/fromHudsonMacros.h: h/fromHudsonOsf.h: h/rpb.h: Major cleanup and formatting h/ev5_impure.h: Major cleanup and formatting remove unused #ifdef code palcode/Makefile: cleanup Makefile remove unused -D options unify platform_tlaser.S and platform_tsunami.S into platform.S and generate multiple .o files using various #defines unify osfpal.S osfpal_cache_copy.S and osfpal_cache_copy_unaligned.S into osfpal.S and generate multiple .o files using various #defines palcode/osfpal.S: Major cleanup and formatting remove unused #defines remove unused #if code merge copy code into this file. palcode/platform.S: Major cleanup and formatting remove unused #defines remove unused #if code merge platform code into this file.
2005-06-04HP copyrightsAli Saidi
console/Makefile: Added copyright added CROSS_COMPILE variable removed install target console/console.c: console/dbmentry.S: console/paljtokern.S: console/paljtoslave.S: console/printf.c: h/cia.h: h/cserve.h: h/dc21164FromGasSources.h: h/eb164.h: h/ev5_alpha_defs.h: h/ev5_defs.h: h/ev5_impure.h: h/ev5_osfalpha_defs.h: h/ev5_paldef.h: h/fromHudsonMacros.h: h/fromHudsonOsf.h: h/lib.h: h/platform.h: h/regdefs.h: h/rpb.h: palcode/Makefile: palcode/osfpal.S: palcode/osfpal_cache_copy.S: palcode/osfpal_cache_copy_unaligned.S: palcode/platform_m5.S: palcode/platform_tlaser.S: added hp and our copyright
2005-01-30removed tlaserreg.h, rewrote necessary partsAli Saidi
deleted simos.h deleted tlaserreg.h palcode/platform_m5.S: palcode/platform_tlaser.S: removed tlaserreg.h, rewrote necessary parts
2004-12-06Add support for tsunami with 64 processors and fix some console bugsAli Saidi
I steped on while doing it console/console.c: Allocate more HWRPB pages so we have room for 64 percpu_rpbs Fix writing of Console Relocation Block virtual addresses so that if they are outside of the first page, which they will be with more than 8 processors, the correct adress is written palcode/Makefile: Update makefile for tsunami with 64 processors palcode/platform_m5.S: Add support for tsunami with 64 processors
2004-11-23do a better job of always locking printf. We used to only lock onAli Saidi
secondary cpus, this also locks on the primary cpu. Now the initial print out doesn't get garbled with more than 1 cpu.
2004-11-23Makefile cleanup, no seperate middle preprocessing steps anymoreAli Saidi
2004-11-23cleanup makefile and fix platform bug introduced in last commitAli Saidi
palcode/Makefile: Cleanup make file, no more ugly preprocessing steps palcode/platform_m5.S: fix a mistake with m5 platform cleanup from before
2004-11-23update platform code to use PALTemp Whami register to get cpu idAli Saidi
instead of reading register from tsunami chipset, saving an uncached read
2004-10-06Fix from Adam: Strip the kseg off the physical address in the RPB structure.Ali Saidi
2004-09-01changes to make smp work in linuxAli Saidi
console/console.c: Remove Printed SimOS references and replace with M5 Rework the SMP stuff, so we don't trash any stacks, or what we thought were stacks, but are actually other ppls memory. console/dbmentry.s: add a carefully crafted piece of assembly that doesn't use the stack, so we don't clobber anthing in the time between when we are spinning and when the OS tells us to go. palcode/platform_m5.s: add/fix code for IPI, multiprocessor interrupts (DIR), and initial bootstrapping of the cpu
2004-08-01changed to generate tlaser and tsunami console code at differentAli Saidi
addresses so the uncachable bit is set for tsunami. console/Makefile: console/console.c: changed to generate tlaser and tsunami console code at different addresses
2004-07-01changed the code not to use r11 (specifically) and r8,r9 for goodAli Saidi
measure. The rest of the registers I used are touched by the tlaser platform code so I would guess their are fair game. Random memory troubles hopefully over.
2004-06-23Copy variables over one at a time rather than copying 4 bytes at aAli Saidi
time. Easiest way to deal with the endian issue.
2004-06-06Rather than using a loop to calculate the interrupt vector, use the ctlz ↵Ali Saidi
instruction.
2004-05-18Added ALPHA_ACCESS_BASE to get rid of machine_defs.hAli Saidi
2004-05-18erik and I made the the same modification... merged.Ali Saidi
2004-05-18Major clean up of alpha system files.Ali Saidi
console/Makefile: palcode/Makefile: moved header files to /h so updated make file for that console/dbmentry.s: console/paljtokern.s: console/paljtoslave.s: upadated to use osf file that the palcode uses, one less file
2004-05-17Setup makefile to compile the 3 flavors of palcode for each platform.Erik Hallnor
2004-05-17Deleted a whole bunch of files that we didn't nede in the headerAli Saidi
directory console/dbmentry.s: console/printf.c: removed unneeded includes
2004-05-17Merge zeep.eecs.umich.edu:/m5/Bitkeeper/alpha-systemAli Saidi
into zeep.eecs.umich.edu:/.automount/zizzer/y/saidi/work/alpha-system
2004-05-17console code now builds on zizzerAli Saidi
console/Makefile: Updated to build on linux and removed lots of crud that compiled, disassembled, and then reassembled console/dbmentry.s: the assembler didn't like they comments, so I removed them console/printf.c: Gcc was very unhappy, so I fixed this line h/lib.h: time_t is defined in a std header, and this was causing some problems
2004-05-17Add copy implementations to palcode.Erik Hallnor
palcode/osfpal.s: Add copypal loop copy implementation.
2004-05-17palcode updated to deal with interrupts correctlyAli Saidi
deleted and then upon realizing we needed them undeleted a bunch of header files in the palcode dir console/Makefile: fixed so it will work with tru64... still haven't got the console to build under linux palcode/platform_m5.s: fixed code to "fake" srm console interrupt handling correctly include serial interrupts
2004-05-11added some comments to palcode and zeroed system type in HWPRB (m5 will fill in)Ali Saidi
console/console.c: 0 the system type, let m5 overwrite palcode/platform_m5.s: add some comments and make the timer interrupt actually care what CPU it happened on
2004-02-19Change addressing in interrupt code to meet physical addressing requirementsAndrew Schultz
2004-02-15Fixed device I/O interrupt handlingAndrew Schultz
2004-02-03Fix improper shift for loading addressAndrew Schultz
2004-02-03Fix the sys_int_20 handler for doing low priority device interrupts.Andrew Schultz
Now reads the MISC register to handle interrupts from multiple CPUs
2004-02-02Added platfrom_m5 - Our hacked up tsunami palcode and modified palcodeAli Saidi
makefile to that end. Additionally made a change in console to preserve t7 on call back because linux uses it for the "current" pointer. console/Makefile: Changed makefile back to using gcc and gas rather then trying to cross-compile for now console/console.c: Put code in to save t7 on CallBackFixup() call and changed the system type to Tsunami palcode/Makefile: updated palcode makefile to have targets for tlaser and tsunami
2004-01-15makefiles updated to make use of cross compile toolsAli Saidi
console/Makefile: All tools are variables now palcode/Makefile: tool names changed to variables, can build palcode on zizzer
2004-01-14Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/alpha-systemAli Saidi
into zizzer.eecs.umich.edu:/y/saidi/alpha-system
2004-01-14Added support for OPEN_CONSOLE and CLOSE_CONSOLE; fixed PUTS bugAli Saidi
2003-12-22Implement GetChar()Nathan Binkert
console/Makefile: Quick install target to copy the binary to zizzer
2003-12-19The palcode will now build by simply typing make in this directory.Ali Saidi
Most of the changes were to fix broken macros in platfrom_tlaser.s palcode/Makefile: Completly new makefile to build palcode palcode/ev5_alpha_defs.h: fixed a broken define palcode/ev5_impure.h: macro fixes palcode/platform_srcmax.s: manual macro expansion of broken macros... this file isn't needed to build tlaser palcode palcode/platform_tlaser.s: lots of fixups to make the code assemble
2003-12-17Implement support for more console environment variables. ThereNathan Binkert
are some default values here, but they can be changed from the simulator itself. (Search in m5 for boot_osflags)
2003-11-14Get the console code to compile correctlyNathan Binkert
Add support for some thigns that M5 needs Make this better support Tru64 v5.1 console/Makefile: I couldn't figure out the old build system since I was missing a bunch of tools at the time, so I kinda rewrote it. console/console.c: Get the includes right, and make things compile little bit of cleanup along the way console/paljtokern.s: formatting junk console/printf.c: Formatting get const right h/lib.h: fiddle with the includes that we need console/console.c: Get the BOOTDEVICE_NAME right Add a bit of support for grabbing console environment variables
2003-11-14Import changesetLisa Hsu
2011-02-08MESI CMP: Unset TBE pointer in L2 cache controllerNilay Vaish
The TBE pointer in the MESI CMP implementation was not being set to NULL when the TBE is deallocated. This resulted in segmentation fault on testing the protocol when the ProtocolTrace was switched on.
2011-02-07Stats: Re update stats.Gabe Black
2011-02-07Stats: Back out broken update.Gabe Black
2011-02-07X86: Obey the wp bit of CR0.Tim Harris
If cr0.wp ("write protect" bit) is clear then do not generate page faults when writing to write-protected pages in kernel mode.
2011-02-07X86: Use all 64 bits of the lstar register in the SYSCALL_64 macroop.Tim Harris
During SYSCALL_64, use dataSize=8 when handling new rip (ref http://www.intel.com/Assets/PDF/manual/253668.pdf 5.8.8 IA32_LSTAR is a 64-bit address)