From 22e4b1be3fe83053543994c325cb0d44e4587723 Mon Sep 17 00:00:00 2001 From: schodet Date: Fri, 23 Feb 2007 12:33:47 +0000 Subject: Added ecos and build system. git-svn-id: svn+ssh://pessac/svn/cesar/trunk@4 017c9cb6-072f-447c-8318-d5b54f68fe89 --- ecos/packages/kernel/current/host/instr/readme.txt | 80 ++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 ecos/packages/kernel/current/host/instr/readme.txt (limited to 'ecos/packages/kernel/current/host/instr/readme.txt') diff --git a/ecos/packages/kernel/current/host/instr/readme.txt b/ecos/packages/kernel/current/host/instr/readme.txt new file mode 100644 index 0000000000..51c3b99546 --- /dev/null +++ b/ecos/packages/kernel/current/host/instr/readme.txt @@ -0,0 +1,80 @@ + +README for User Friendly Instrumentation Messages +================================================= + +The CDL option CYGDBG_KERNEL_INSTRUMENT_MSGS controls whether the +system is capable of displaying user friendly instrumentation +messages. To do this it needs to know what event numbers mean +what events - as a text string to print for you. + +It gets the information from a table created by the header file +instrument_desc.h in the kernel. If the instrumentation numbers +change, you must rebuild that header to match. + +A further CDL option is provided to help you with that. The +procedure is as follows: + +1) Remove kernel/VERSION/include/instrument_desc.h from your + repository. Is is probably a good idea to move it away rather + than deleting it in case the next stages fail. + +2) Make a build configuration, enabling options + CYGDBG_KERNEL_INSTRUMENT, CYGDBG_KERNEL_INSTRUMENT_MSGS and + CYGDBG_KERNEL_INSTRUMENT_MSGS_BUILD_HEADERFILE in the kernel. + Viewed in the GUI configtool, "Kernel instrumentation", "Print + user friendly instrument messages" and "Rebuild the header + file" respectively. + +3) Make eCos within this build configuration. It should create + install/include/cyg/kernel/instrument_desc.h + +4) Copy that new file back to your repository, to + kernel/VERSION/include/instrument_desc.h replacing the file + you moved aside in step 1. + +5) Commit the new file to your version control system or whatever + you use. + +If you wish to rebuild the file "by hand" the command to use, in +a suitable shell, is this: + + $ECOS_REPOSITORY/kernel/$ECOS_VERSION/host/instr/instrument.sh + $ECOS_REPOSITORY/kernel/$ECOS_VERSION/include/instrmnt.h + > $ECOS_BUILD_PREFIX/include/cyg/kernel/instrument_desc.h + +(all on one line of course) or to rebuild it directly into the +kernel source repository: + + $ECOS_REPOSITORY/kernel/$ECOS_VERSION/host/instr/instrument.sh + $ECOS_REPOSITORY/kernel/$ECOS_VERSION/include/instrmnt.h + > $ECOS_REPOSITORY/kernel/$ECOS_VERSION/include/instrument_desc.h + +It's up to you to sort out file permissions for this to work, and +to set environment variables as required or edit these lines as +you type them. + + +There is also a host-based program which can print a buffer +nicely for you - if you can get the data into your host. +Enabling CDL option CYGDBG_KERNEL_INSTRUMENT_BUILD_HOST_DUMP or +"Build the host tool to print out a dump" will build it for you +in install/bin. To build it instead "by hand", use + + mkdir -p tempinc + cp -r $(ECOS_BUILD_PREFIX)/include/cyg tempinc + cp -r $(ECOS_BUILD_PREFIX)/include/pkgconf tempinc + cc -I./tempinc + $(ECOS_REPOSITORY)/kernel/${ECOS_VERSION}/host/instr/dump_instr.c + -o $(PREFIX)/bin/dump_instr + +again with environment variables as required, or type in whatever +is appropriate. You still have to somehow get the +instrumentation buffer into a file on the host. 'Exercise for the +reader' as university lecturers tend to say. + +One possibility is to set up a tftp *server* in the target which +will serve the instrumentation buffer. This hint is as far as +support for this goes. + + + -- cgit v1.2.3