summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* stmhal: L4: Add basic STM32L4xx HAL files.Tobias Badertscher2016-04-16
| | | | | | These files come from STM32Cube_FW_L4_V1.3.0, with Windows line endings converted to unix. Only basic HAL files are added. In addition the QSPI support is included to support later external QSPI flash as mass storage.
* stmhal: L4: Add CMSIS files to support STM32L476.Tobias Badertscher2016-04-16
|
* stmhal: For frozen bytecode generation, add dependency of qstr file.Damien George2016-04-16
|
* minimal: For frozen bytecode generation, add dependency of qstr file.Damien George2016-04-16
|
* esp8266: Adapt port to use new auto-qstr generation.Damien George2016-04-16
|
* py/mkrules.mk: Suppress line-no output from CPP for qstr auto-gen.Jan Čapek2016-04-16
|
* py/py.mk: Add makefile variable for qstr autogeneration control.Jan Čapek2016-04-16
| | | | | | | - any architecture may explicitely build with qstring make QSTR_AUTOGEN_DISABLE=1 autogeneration disabled and provide its own list of qstrings by the standard mechanisms (qstrdefsport.h).
* windows/msvc: Implement automatic qstr generation using makeqstrdefs.stijn2016-04-16
| | | | | | Note this still needs some work: currently all source files are always preprocessed no matter which one actually changed, moreover that happens file by file without any parallellism so builds are painstakingly slow.
* py/mkrules.mk: Add mpconfig[port].h dependency to qstr generating rule.Jan Čapek2016-04-16
|
* py: Add rules for automated extraction of qstrs from sources.Jan Čapek2016-04-16
| | | | | | | | | | | | | | | | | | | | | - add template rule that converts a specified source file into a qstring file - add special rule for generating a central header that contains all extracted/autogenerated strings - defined by QSTR_DEFS_COLLECTED variable. Each platform appends a list of sources that may contain qstrings into a new build variable: SRC_QSTR. Any autogenerated prerequisities are should be appened to SRC_QSTR_AUTO_DEPS variable. - remove most qstrings from py/qstrdefs, keep only qstrings that contain special characters - these cannot be easily detected in the sources without additional annotations - remove most manual qstrdefs, use qstrdef autogen for: py, cc3200, stmhal, teensy, unix, windows, pic16bit: - remove all micropython generic qstrdefs except for the special strings that contain special characters (e.g. /,+,<,> etc.) - remove all port specific qstrdefs except for special strings - append sources for qstr generation in platform makefiles (SRC_QSTR)
* py/makeqstrdefs: Add script to automate extraction of qstr from sources.Pavel Moravec2016-04-16
| | | | | | | | | | This script will search for patterns of the form Q(...) and generate a list of them. The original code by Pavel Moravec has been significantly simplified to remove the part that searched for C preprocessor directives (eg #if). This is because all source is now run through CPP before being fed into this script.
* esp8266/modmachine: Add reset_cause() function.Paul Sokolovsky2016-04-15
|
* docs/speed_python: Add article.Paul Sokolovsky2016-04-15
|
* tests: Fix dict1.py so it doesn't rely on the order of dict elems.Damien George2016-04-15
|
* py/map: Change hash-table allocation policy to be less aggressive.Damien George2016-04-15
| | | | | | | | | | Small hash tables (eg those used in user class instances that only have a few members) now only use the minimum amount of memory necessary to hold the key/value pairs. This can reduce performance for instances that have many members (because then there are many reallocations/rehashings of the table), but helps to conserve memory. See issue #1760.
* docs/speed_python: Add many more details on memoryviews.Paul Sokolovsky2016-04-15
|
* docs/speed_python: Generalize "Floating point" subsection.Paul Sokolovsky2016-04-15
| | | | | Don't describe just single port's peculiarities, note aboute possible array of issues with floating-point.
* docs/speed_python: Clarify/generalize "Buffers" subsection.Paul Sokolovsky2016-04-15
|
* docs/machine: Start to update for esp8266 port.Paul Sokolovsky2016-04-15
|
* docs/esp: Enumerate flash access functions.Paul Sokolovsky2016-04-15
|
* tools/mpy-tool.py: Add support for Python 2.7.Damien George2016-04-15
|
* esp8266/moduos: Add uos.mkdir function.Damien George2016-04-14
|
* extmod/fsusermount: In mount/mkfs, deregister VFS object on error.Damien George2016-04-14
| | | | Should fix issue #1947.
* esp8266/scripts/_boot: Mount block device on "" instead of "/".Damien George2016-04-14
| | | | | | "" is the correct name of the root directory when mounting a device there (as opposed to "/"). One can now do os.listdir('/') and open('/abc'), as well as os.listdir() and open('abc').
* extmod/modlwip: More debug messages for various edge conditions.Paul Sokolovsky2016-04-15
|
* esp8266/qstrdefsport.h: Mark qstr's for "esp" module.Paul Sokolovsky2016-04-15
|
* esp8266: Enable input() builtin.Paul Sokolovsky2016-04-15
|
* py: Declare help, input, open builtins in core.Paul Sokolovsky2016-04-15
| | | | These are *defined* per-port, but why redeclare them again and again.
* esp8266/scripts/port_diag.py: Module to collect diagnostic info.Paul Sokolovsky2016-04-14
| | | | | A shortcut for users to provide background diagnostic info for bug reports.
* py/makeqstrdata: Add special case to handle \n qstr.Damien George2016-04-14
|
* py/makeqstrdata: Reinstate Python2 compatibility.Damien George2016-04-14
|
* py/makeqstrdata: Fix rendering of qstrs that have non-printable ASCII.Damien George2016-04-14
| | | | | The qstr data needs to be turned into a proper C string so non-ASCII chars must be properly escaped according to C rules.
* py: Simplify "and" action within parser by making ident-rules explicit.Damien George2016-04-14
| | | | | | | | | | Most grammar rules can optimise to the identity if they only have a single argument, saving a lot of RAM building the parse tree. Previous to this patch, whether a given grammar rule could be optimised was defined (mostly implicitly) by a complicated set of logic rules. With this patch the definition is always specified explicitly by using "and_ident" in the rule definition in the grammar. This simplifies the logic of the parser, making it a bit smaller and faster. RAM usage in unaffected.
* esp8266: Switch integer arith routines to BootROM.Paul Sokolovsky2016-04-14
|
* esp8266: Separate 1-wire timing funcs from Python module to save iRAM.Damien George2016-04-14
| | | | | esponewire.c contains low-level timing-critical functions that go in iRAM. modonewire.c contains Python wrapper code.
* esp8266: Add hard IRQ callbacks for pin change on GPIO0-15.Damien George2016-04-14
|
* esp8266: Add dummy entries for non-existing pins to simplify pin logic.Damien George2016-04-14
| | | | | Now pins can be easily looked up in the table using the pin number as the index and vice versa.
* esp8266: Remove pin_id field from C pin object.Damien George2016-04-14
| | | | This field is the same as phys_port and not needed.
* extmod/modlwip: Start adding debug output.Paul Sokolovsky2016-04-14
|
* extmod/modlwip: lwip_tcp_receive(): Properly handle EOF for non-blocking sock.Paul Sokolovsky2016-04-14
|
* py/makeqstrdata: Add more names for escaped chars and esc non-printable.Damien George2016-04-13
| | | | | Non-printable characters are escaped as 0xXX, where XX are the hex digits of the character value.
* extmod/modwebsocket: Another case to propagate EOF.Paul Sokolovsky2016-04-13
|
* stmhal: Add Makefile option FROZEN_MPY_DIR to support frozen bytecode.Damien George2016-04-13
|
* minimal: Add example of frozen persistent bytecode (.mpy file).Damien George2016-04-13
| | | | | frozentest.py is frozen into the binary as frozen bytecode. The .mpy file is included so that there is no dependency on the cross compiler.
* py: Add ability to have frozen persistent bytecode from .mpy files.Damien George2016-04-13
| | | | | | | The config variable MICROPY_MODULE_FROZEN is now made of two separate parts: MICROPY_MODULE_FROZEN_STR and MICROPY_MODULE_FROZEN_MPY. This allows to have none, either or both of frozen strings and frozen mpy files (aka frozen bytecode).
* tools: Add mpy-tool.py, to work with .mpy files.Damien George2016-04-13
| | | | Currently it can freeze .mpy files.
* py/makeqstrdata: Factor out some code to functions that can be reused.Damien George2016-04-13
|
* py/emitglue: Make mp_raw_code_t* arguments constant pointers.Damien George2016-04-13
|
* py/emitglue: Move typedef of mp_raw_code_t from .c to .h file.Damien George2016-04-13
| | | | It's needed by frozen bytecode.
* tests: Skip async tests for native emitter.Damien George2016-04-13
|