Changes between Initial Version and Version 1 of sysace/sreconfig


Ignore:
Timestamp:
Jul 19, 2006, 9:46:58 PM (18 years ago)
Author:
snovich
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • sysace/sreconfig

    v1 v1  
     1= Reconfiguring on Flash Using Software =
     2
     3Peforming a soft-reconfiguration on flash requires a little extra work – specifically: the project MUST have the SysACE peripheral included, a modification to the system MSS file, and the addition of several software libraries included in the project’s C-code. [[BR]]
     4After building the system with the SysACE peripheral, the user must attach the following lines of code to the end of the system '''MSS''' file (this can also be automatically generated by adding the library and modifying the parameters for it in '''“Software”->”Software Platform Settings…”'''): [[BR]]
     5{{{
     6BEGIN LIBRARY
     7 PARAMETER LIBRARY_NAME = xilfatfs
     8 PARAMETER LIBRARY_VER = 1.00.a
     9# # add write capabilities
     10 PARAMETER CONFIG_WRITE = true
     11# # add make/change dir support needed for the libs to work correctly.
     12 PARAMETER CONFIG_DIR_SUPPORT = true
     13# don't not work with FAT12 systems. Use 16 and/or 32
     14 PARAMETER CONFIG_FAT12 = false
     15# max files alloted
     16 PARAMETER CONFIG_MAXFILES = 5
     17# buffer size
     18 PARAMETER CONFIG_BUFCACHE_SIZE = 10240
     19 PARAMETER PROC_INSTANCE = ppc405_0
     20END
     21}}}
     22
     23Next, the following libraries must be included into the project:
     24       
     25 * xsysace_l.h (does not require the user to manually add the *.c & *.h files)
     26 * xsysace.h (does not require the user to manually add the *.c & *.h files)
     27 * sysace_stdio.h (does not require the user to manually add the *.c & *.h files)
     28 * warpsysace.h ('''requires''' the user to add the library files manually)
     29 * warplib.h ('''requires''' the user to add the library files manually)
     30[[BR]]
     31Once these changes and libraries have been applied to the project, writing the code to perform the reconfiguration is simple:
     32
     33 * Before calling the reconfigure function, WarpSysace_GetLock must be called.
     34  * The format for this is: '''WarpSysace_GetLock(base_addr)'''
     35  * '''base_addr''' is the name of the SysACE peripheral’s base-address found in xparameters.h (you may have to “generate libraries and BSPs” first)
     36  * xparameters.h is available under the Project’s “Applications” tab, under the active Project (in Bold) under the expanded “Processor: ppc405_0” listing
     37 * The reconfiguration function can be placed anywhere in the code as long as the lock function has been called first.
     38  * The format for this is: '''WarpSysace_reconfigure(base_addr, proj_addr)'''
     39  * '''base_addr''' is the name of the SysACE peripheral’s base-address found in xparameters.h (see above)
     40  * '''proj_addr''' is a type '''int''' between '''0''' and '''7''' which is the configuration-address for where the project sits on the flash card. Thus, it’s important to plan ahead of time where you want your projects to sit on the card for when you load them – otherwise this won’t work! See the above section: “Formatting and Loading Systems on to a Compact Flash”
     41 * Once you have finished the coding, prepare the flash card using the first section of this document as a reference. The current project calling the reconfiguration may be downloaded to the board in any way (JTAG, CF, etc), so long as the project to be switched to is sitting on the correct configuration address of a properly formatted flashcard (and is inserted on WARP).