summaryrefslogtreecommitdiff
path: root/kern/linux/linux_system.hh
AgeCommit message (Collapse)Author
2004-09-16switch contexts on palcode rather than kernel codeAli Saidi
cpu/pc_event.cc: mask off lower three bits so we can have an event in palcode --HG-- extra : convert_revision : 49fcdc5c359ca2bd9149f092f80f77abcd7b20ee
2004-09-03added system option to bin interrupt code seperately.Ali Saidi
arch/alpha/ev5.cc: set the mode explictly rather than having a bool user/notuser cpu/simple_cpu/simple_cpu.hh: there is no class Kernel kern/kernel_stats.cc: use cpu_mode_num kern/kernel_stats.hh: add interrupt mode and use cpu_mode_num rather than constant kern/linux/linux_system.cc: kern/linux/linux_system.hh: kern/system_events.cc: kern/system_events.hh: add events to change the mode to/from interrupt sim/system.cc: sim/system.hh: add a pal symbol table --HG-- extra : convert_revision : 9d30e826b72122062a5ea12d094f94760e75c66a
2004-08-20- Clean up and factor out all of the binning code into aNathan Binkert
single place so it's easier to work with. - Add support for binning kernel/user/idle time separately from lisa's binning stuff, but make the two compatible. - KernelStats used to directly implement the pImpl idiom, but it makes more sense to just remove the level of indirection and make the exec context have a pointer to the stats. - Factor common code out of LinuxSystem and Tru64System and put it into the System base class. While doing that, make all constructors take a pointer to a parameter struct instead of naming the parameters individually to make it much easier to add parameters to these classes. SConscript: Move the function tracking and binning stuff around. arch/alpha/ev5.cc: kernelStats is now a pointer arch/alpha/pseudo_inst.cc: kernelStats is now a pointer the parameters to the system have been moved into their own struct base/trace.hh: provide a little functor class for wrapping a string that can allow you to define name() in any scope very simply for use with DPRINTF cpu/base_cpu.cc: New order of arguments for consistency. cpu/exec_context.cc: kernelStats no longer has the level of indirection in it, execContext has the indirection now. so, kernelStats is a pointer. We also need a pointer to the kernelBinning stuff from the system and we need to figure out if we want to do binning or not. Move a whole bunch of code into kern_binning.cc so it's all in the same place. cpu/exec_context.hh: We want pointers to the kernel binning/stats stuff and we'll have the exec_context and system have the level of indirection instead of having the extra layer in the kernel stats class. cpu/simple_cpu/simple_cpu.cc: call through the exec context to do the special binning stuff. kern/kernel_stats.cc: kern/kernel_stats.hh: Re-organize the stats stuff and remove the level of indirection (that was there to simplify building) and move the binning stuff into its own class/file. kern/linux/linux_system.cc: kern/linux/linux_system.hh: kern/tru64/tru64_system.cc: kern/tru64/tru64_system.hh: sim/system.cc: sim/system.hh: move lots of common system code into the base system class so that it can be shared between linux, tru64, and whatever else we decide to support in the future. Make the constructor take a pointer to a parameter struct so that it is easier to pass parameters to the parent. kern/system_events.cc: move the majority of the binning code into the Kernel::Binning class in the kern_binning file kern/system_events.hh: FnEvents only need to know the bin create the Idle start event to find the PCBB of the idle process when it starts. kern/tru64/tru64_events.cc: memCtrl -> memctrl sim/process.cc: sim/process.hh: re-order args for consistency --HG-- extra : convert_revision : 86cb39738c41fcd680f2aad125c9dde000227b2b
2004-08-18Added code using VPtr to be able to extract info from linux threadAli Saidi
structures. Added event to print out currently running task base/traceflags.py: Added Thread trace flag kern/linux/linux_system.cc: kern/linux/linux_system.hh: Added event to print out currently running task --HG-- extra : convert_revision : 94347dbaf90f39eb40467b2a43b4628a3deafc6c
2004-07-30Added debug printk supportAli Saidi
arch/alpha/ev5.hh: Added max address PAL code can be at arch/alpha/vtophys.cc: Check max address pal can be at so we don't do the wrong conversion if gdb asks for an unaligned access. --HG-- extra : convert_revision : b44f6a8fcd8582337a7d4033f28137c7e718a6a8
2004-06-04Updated copyright on Tsunami and kern/linux files.Ali Saidi
dev/baddev.cc: dev/baddev.hh: dev/ide_ctrl.cc: dev/ide_ctrl.hh: dev/ide_disk.cc: dev/ide_disk.hh: dev/ns_gige.cc: dev/ns_gige.hh: dev/pciconfigall.cc: dev/pciconfigall.hh: dev/pcidev.cc: dev/pcidev.hh: dev/pcireg.h: dev/platform.cc: dev/platform.hh: dev/tsunami.cc: dev/tsunami.hh: dev/tsunami_cchip.cc: dev/tsunami_cchip.hh: dev/tsunami_io.cc: dev/tsunami_io.hh: dev/tsunami_pchip.cc: dev/tsunami_pchip.hh: kern/linux/linux.hh: kern/linux/linux_syscalls.cc: kern/linux/linux_syscalls.hh: kern/linux/linux_system.cc: kern/linux/linux_system.hh: Updated copyright dev/tsunamireg.h: Updated copyright and fixed a ULL --HG-- extra : convert_revision : 4800bd227c7064044ee98169d6a91f74c791956f
2004-05-31Added and cleaned up some commentsAli Saidi
dev/tsunami_cchip.hh: clean up some comments kern/linux/linux_syscalls.cc: Cleaned up spacing of syscall numbers kern/linux/linux_system.hh: Added doxygen comments --HG-- extra : convert_revision : 23ecdaa92a208458dd5c5d3c68ac9012ce2690da
2004-05-30Cleaned up and commented code. I think we are ready to merge with head.Ali Saidi
dev/baddev.hh: dev/pcidev.hh: dev/tsunami.hh: dev/tsunami_cchip.hh: dev/tsunami_io.hh: dev/tsunami_pchip.hh: Added doxygen comments dev/pciconfigall.hh: Added doxygen comments. Made the hlist of devices private and provided members to modify the data. dev/pcidev.cc: updated for change in pciconfigall dev/tsunami_pchip.cc: Deleted commented out code we don't need kern/linux/linux_syscalls.cc: Simplified the number -> name conversion. kern/linux/linux_syscalls.hh: Removed StandardNumber and replaced with Number. kern/linux/linux_system.cc: kern/linux/linux_system.hh: LinuxSkipIdeDelay50msEvent was simply the same as the SkipFunc event, so I removed it. Same with with LinuxSkipFuncEvent. --HG-- extra : convert_revision : 1508c335f87d90373f5772f3a0407ea13e858d7e
2004-05-26Fixed serial support in 2.6 (too much work for...)Ali Saidi
Removed bootloader and just wrote command line into linux kernel base/inifile.cc: the forked process should not return, it should exit. dev/tsunami_uart.cc: dev/tsunami_uart.hh: The serial port in reality has some delay and linux expects it. This schedules an interrupt 300 cycles after the transmit instead of immediately kern/linux/linux_system.cc: kern/linux/linux_system.hh: removed boot loader and stuck boot command line in the kernel manually --HG-- extra : convert_revision : 68aa54f8ca4e8391789f7a4c1ae227e6f8b94e13
2004-05-24removed mbuf code from linux since it only exists in tru64Ali Saidi
--HG-- extra : convert_revision : b1dbd8a143b7c1204bf57f6964880f957242d4fb
2004-05-18lift FnEvents and and Binning stuff out of LinuxSystem into commonn places ↵Lisa Hsu
with Tru64. kern/linux/linux_system.cc: add binned_fns parameter to System, remove nonLinux events from LinuxSystem, fix ~LinuxSystem() by adding delete of some things that need to be deleted. kern/linux/linux_system.hh: fix header file to go with linux_system.cc, removing nonLinux events and adding binned_fns param. kern/tru64/tru64_system.cc: add somme consistency by having having binned_fns be _binned_fns in the Tru64System arg list. --HG-- extra : convert_revision : b2ec0c1614e185aafa177c220b91d1f6a4fe6876
2004-05-11successful merge, linux still builds and runs as far it used to, network ↵Lisa Hsu
device still transmit ARP packet. arch/alpha/alpha_memory.cc: change to the main m5 tree convention for naming base/traceflags.py: add ide and pciconfigall traceflags kern/linux/linux_system.cc: kern/linux/linux_system.hh: kill some old binning styled stuff --HG-- extra : convert_revision : 0558878906817975a714b1c7c08f9ee405468535
2004-05-09Added ULL for 64bit intsAli Saidi
Added function to skip determine_cpu_caches(). We may have to update this in the future: see note below. arch/alpha/alpha_memory.cc: dev/ide_ctrl.cc: dev/tsunamireg.h: Added ULL for 64bit ints kern/linux/linux_system.cc: Added a function to skip determine_cpu_caches, right now it is only used for printing in proc, however in the future we may either want to implement the SC_CTL IPR register or manually set alpha_l1i_cacheshape, alpha_l1d_cacheshape, alpha_l2_cacheshape, alpha_l3_cacheshape to ((size << 10) | (linesize>>1)<<4 | way) kern/linux/linux_system.hh: added event to skip determine_cpu_caches() --HG-- extra : convert_revision : 1065f2091bbe6832b730af490f5b4672c2afedce
2004-03-23Add initial support for IDEAndrew Schultz
--HG-- extra : convert_revision : e07dc6c87b0b692d428b541d4032fcf82996ef15
2004-03-11merge from head of m5. note: i did not bother to merge the PIO stuff with ↵Lisa Hsu
scsi since we're not going that route anymore anyway. esp because it was giving me an error i couldn't seem to fix. dev/alpha_console.cc: missed this >>>> after i merged kern/linux/linux_system.cc: get rid of FS_MEASURES and change FnEvent to LinuxFnEvent kern/linux/linux_system.hh: get rid of FS_MEASURE --HG-- extra : convert_revision : 210f46573bba0c772a224ce110af9a9230fabf6a
2004-02-05Now skips the calibrate_delay loop in the kernel bootAndrew Schultz
dev/tsunami.cc: Changed so Tsunami has a pointer to the System to which it belongs. Now it is derived from generic base class Platform so platform stuff can be accessed based on the system dev/tsunami_io.cc: dev/tsunami_io.hh: Cleanup and added copyright kern/linux/linux_system.cc: kern/linux/linux_system.hh: Added event to skip the "calibrate_delay" function, now calculate loops_per_jiffy based on frequency, interrupt frequency, and constant sim/system.hh: Added pointer to generic Platform base class --HG-- extra : convert_revision : 5bd925eec220a2ca48eb6164d2ecfdec96922c2c
2004-01-11addad kern/linuxAli Saidi
--HG-- extra : convert_revision : 2a14af3191a532524ee92a47b5bb6e68555010c3