]> rtime.felk.cvut.cz Git - pes-rpp/rpp-simulink.git/blobdiff - rpp/rpp/rpp_download.m
Change license to MIT
[pes-rpp/rpp-simulink.git] / rpp / rpp / rpp_download.m
index 22f072cec36a3bb9f972636617f848c44756dbb7..3bbdf7a271ecd54d3436dc747f1c747411193c76 100644 (file)
@@ -1,12 +1,28 @@
-% Copyright (C) 2013-2014 Czech Technical University in Prague
+% Copyright (C) 2013-2015 Czech Technical University in Prague
 %
 % Authors:
 %     - Carlos Jenkins <carlos@jenkins.co.cr>
 %
-% This document contains proprietary information belonging to Czech
-% Technical University in Prague. Passing on and copying of this
-% document, and communication of its contents is not permitted
-% without prior written authorization.
+% Permission is hereby granted, free of charge, to any person
+% obtaining a copy of this software and associated documentation
+% files (the "Software"), to deal in the Software without
+% restriction, including without limitation the rights to use,
+% copy, modify, merge, publish, distribute, sublicense, and/or sell
+% copies of the Software, and to permit persons to whom the
+% Software is furnished to do so, subject to the following
+% conditions:
+
+% The above copyright notice and this permission notice shall be
+% included in all copies or substantial portions of the Software.
+
+% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+% OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+% NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+% HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+% WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+% FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+% OTHER DEALINGS IN THE SOFTWARE.
 %
 % File : rpp_download.m
 % Abstract:
@@ -78,13 +94,14 @@ function rpp_download(modelName, buildDirectory, use_openocd, use_sdram)
                        disp(['###     -> Uncheck the option "Download compiled binary to SDRAM" (set use_sdram to false) to download the code to the Flash memory.'])
         else
             disp(['### Downloading ', modelName, ' to RPP board...']);
+                       ccxml_filename = ccxml_read(RppLibRoot);
                        if isunix
                                % -r,   --reset                 Reset target before run
                                % -c,   --cfg-file=CONFIG_FILE  Target setup config file
                                command = [...
                                        'CCS_SCRIPTING="' CCSRoot '/ccs_base/scripting/" ' ...
                                        '"' RppLibRoot '/../loadti/loadti.sh" -r ' ...
-                                       '-c "', RppLibRoot, '/../loadti/RM48L952.ccxml" ', ...
+                                       '-c "', ccxml_filename, '" ',  ...
                                        '"', outfile, ...
                                        '" 2> "', downloadLog, '"'];
                        else
@@ -93,7 +110,7 @@ function rpp_download(modelName, buildDirectory, use_openocd, use_sdram)
                                command = [...
                                        'set CCS_SCRIPTING="' CCSRoot '\ccs_base\DebugServer"&&' ...
                                        '"' RppLibRoot '\..\loadti\loadti.bat" -r ' ...
-                                       '-c "', RppLibRoot, '\..\loadti\RM48L952.ccxml" ', ...
+                                       '-c "', ccxml_filename, '" ',  ...
                                        '"', outfile];
             end
             disp('### Running downloader script:');
@@ -107,3 +124,16 @@ function rpp_download(modelName, buildDirectory, use_openocd, use_sdram)
        end
 
 end
+
+function ccxml_path = ccxml_read(RppLibRoot)
+    f = fopen(fullfile(RppLibRoot, 'Makefile.config'), 'r');
+    while ~feof(f),
+        l = fgetl(f);
+        [val, count] = sscanf(l, ' TARGET_CCXML = %s');
+        if count, ccxml=val; end
+        [val, count] = sscanf(l, ' TARGET = %s');
+        if count, target=val; end
+    end
+    ccxml_path = fullfile(RppLibRoot, 'build', target, ccxml);
+    fclose(f);
+end
\ No newline at end of file