From d460a307114285c675846bc4be2a57b59c06c11a Mon Sep 17 00:00:00 2001 From: Daniel Campora Date: Tue, 31 Mar 2015 14:31:25 +0200 Subject: [PATCH] cc3200: Add specific version file for the CC3200 port. Current version has been numbered as 0.9.0 since Timers/PWM support is still missing. --- cc3200/boards/LAUNCHXL/mpconfigboard.h | 5 +++- cc3200/boards/WIPY-SD/mpconfigboard.h | 7 ++++-- cc3200/boards/WIPY/mpconfigboard.h | 7 ++++-- cc3200/mods/modpyb.c | 11 ++++++++ cc3200/mptask.c | 2 +- cc3200/qstrdefsport.h | 1 + cc3200/version.h | 35 ++++++++++++++++++++++++++ 7 files changed, 62 insertions(+), 6 deletions(-) create mode 100644 cc3200/version.h diff --git a/cc3200/boards/LAUNCHXL/mpconfigboard.h b/cc3200/boards/LAUNCHXL/mpconfigboard.h index 982a15c2ff..e1dbac29b0 100644 --- a/cc3200/boards/LAUNCHXL/mpconfigboard.h +++ b/cc3200/boards/LAUNCHXL/mpconfigboard.h @@ -25,9 +25,12 @@ * THE SOFTWARE. */ +#include "version.h" + #define LAUNCHXL -#define MICROPY_HW_BOARD_NAME "LaunchPad" +#define BOARD_NAME "LaunchPad " +#define MICROPY_HW_BOARD_NAME VERSION_E(BOARD_NAME, VERSION_NUMBER) #define MICROPY_HW_MCU_NAME "CC3200" #define MICROPY_HW_HAS_SDCARD (0) diff --git a/cc3200/boards/WIPY-SD/mpconfigboard.h b/cc3200/boards/WIPY-SD/mpconfigboard.h index 27de4b8aad..74435858f7 100644 --- a/cc3200/boards/WIPY-SD/mpconfigboard.h +++ b/cc3200/boards/WIPY-SD/mpconfigboard.h @@ -25,9 +25,12 @@ * THE SOFTWARE. */ -#define LAUNCHXL +#include "version.h" -#define MICROPY_HW_BOARD_NAME "WiPy-SD" +#define WIPY-SD + +#define BOARD_NAME "WiPy-SD " +#define MICROPY_HW_BOARD_NAME VERSION_E(BOARD_NAME, VERSION_NUMBER) #define MICROPY_HW_MCU_NAME "CC3200" #define MICROPY_HW_HAS_SDCARD (1) diff --git a/cc3200/boards/WIPY/mpconfigboard.h b/cc3200/boards/WIPY/mpconfigboard.h index 415038cd3e..edbb8a4b36 100644 --- a/cc3200/boards/WIPY/mpconfigboard.h +++ b/cc3200/boards/WIPY/mpconfigboard.h @@ -25,9 +25,12 @@ * THE SOFTWARE. */ -#define LAUNCHXL +#include "version.h" -#define MICROPY_HW_BOARD_NAME "WiPy" +#define WIPY + +#define BOARD_NAME "WiPy " +#define MICROPY_HW_BOARD_NAME VERSION_E(BOARD_NAME, VERSION_NUMBER) #define MICROPY_HW_MCU_NAME "CC3200" #define MICROPY_HW_HAS_SDCARD (0) diff --git a/cc3200/mods/modpyb.c b/cc3200/mods/modpyb.c index 07a25776ab..fbff8bae6c 100644 --- a/cc3200/mods/modpyb.c +++ b/cc3200/mods/modpyb.c @@ -66,6 +66,7 @@ #include "utils.h" #include "gccollect.h" #include "mperror.h" +#include "genhdr/py-version.h" #ifdef DEBUG @@ -233,6 +234,15 @@ STATIC mp_obj_t pyb_repl_uart(uint n_args, const mp_obj_t *args) { } STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(pyb_repl_uart_obj, 0, 1, pyb_repl_uart); +/// \function version() +/// Prints the software version (MicroPython + Port) +STATIC mp_obj_t pyb_version(void) { + char version[128]; + snprintf(version, sizeof(version), "Micro Python " MICROPY_GIT_TAG " on " MICROPY_BUILD_DATE "; " MICROPY_HW_BOARD_NAME " with " MICROPY_HW_MCU_NAME); + return mp_obj_new_str(version, strlen(version), false); +} +STATIC MP_DEFINE_CONST_FUN_OBJ_0(pyb_version_obj, pyb_version); + MP_DECLARE_CONST_FUN_OBJ(pyb_main_obj); // defined in main.c STATIC const mp_map_elem_t pyb_module_globals_table[] = { @@ -257,6 +267,7 @@ STATIC const mp_map_elem_t pyb_module_globals_table[] = { { MP_OBJ_NEW_QSTR(MP_QSTR_elapsed_micros), (mp_obj_t)&pyb_elapsed_micros_obj }, { MP_OBJ_NEW_QSTR(MP_QSTR_delay), (mp_obj_t)&pyb_delay_obj }, { MP_OBJ_NEW_QSTR(MP_QSTR_udelay), (mp_obj_t)&pyb_udelay_obj }, + { MP_OBJ_NEW_QSTR(MP_QSTR_version), (mp_obj_t)&pyb_version_obj }, #if MICROPY_HW_ENABLE_RNG { MP_OBJ_NEW_QSTR(MP_QSTR_rng), (mp_obj_t)&pyb_rng_get_obj }, diff --git a/cc3200/mptask.c b/cc3200/mptask.c index a3b6bb2894..5bb10dd8a8 100644 --- a/cc3200/mptask.c +++ b/cc3200/mptask.c @@ -241,7 +241,7 @@ soft_reset_exit: // soft reset pybsleep_signal_soft_reset(); - printf("WiPy: soft reset\n"); + printf("PYB: soft reboot\n"); sflash_disk_flush(); diff --git a/cc3200/qstrdefsport.h b/cc3200/qstrdefsport.h index 6b123a6e7c..375027824f 100644 --- a/cc3200/qstrdefsport.h +++ b/cc3200/qstrdefsport.h @@ -29,6 +29,7 @@ Q(micros) Q(elapsed_millis) Q(elapsed_micros) Q(udelay) +Q(version) Q(flush) Q(FileIO) Q(mkdisk) diff --git a/cc3200/version.h b/cc3200/version.h new file mode 100644 index 0000000000..aa8aac58b6 --- /dev/null +++ b/cc3200/version.h @@ -0,0 +1,35 @@ +/* + * This file is part of the Micro Python project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2015 Daniel Campora + * + * 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. + */ + +#ifndef VERSION_H_ +#define VERSION_H_ + +#define VERSION_NUMBER v0.9.0 + +#define VERSION_PASTE(name, number) name # number +#define VERSION_E(name, number) VERSION_PASTE(name, number) + +#endif /* VERSION_H_ */