This flashes Zephyr at 0x1000: that's where the first stage bootloader,
part of the ESP32 ROM, expects to find an "image header".
The second-stage bootloader, part of ESP-IDF, isn't used by the Zephyr
port. However, the bootloader can be used if desired; please refer to
the ESP-IDF documentation on how to set up partitions tables and use
the bootloader.
The following environment variables will affect the ESP32 flashing
process:
Variable Default value
ESP_DEVICE /dev/ttyUSB0
ESP_BAUD_RATE 921600
ESP_FLASH_SIZE detect
ESP_FLASH_FREQ 40m
ESP_FLASH_MODE dio
ESP_TOOL espidf
It's impossible to determine which serial port the ESP32 board is
connected to, as it uses a generic RS232-USB converter. The default of
/dev/ttyUSB0 is provided as that's often the assigned name on a Linux
machine without any other such converters.
The baud rate of 921600bps is recommended. If experiencing issues when
flashing, try halving the value a few times (460800, 230400, 115200,
etc). It might be necessary to change the flash frequency or the flash
mode; please refer to the esptool documentation for guidance on these
settings.
If ${ESP_TOOL} is set to "espidf", the esptool.py script found within
ESP-IDF will be used. Otherwise, this variable is handled as a path to
the tool.
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
Three environment variables must be set to use this variant:
export ZEPHYR_GCC_VARIANT="espressif"
export ESP_IDF_PATH=/path/to/esp-idf
export ESPRESSIF_TOOLCHAIN_PATH=/path/to/xtensa-esp32-elf/
ESP-IDF is the SDK provided by Espressif. It contains, among other things,
the HAL and header files for registers and ROM functions used by the Zephyr
port. At this stage, with the exception of the HAL library, none of the
binary blobs provided by ESP-IDF are used. This can be obtained directly
from Espressif, at <https://github.com/espressif/esp-idf>.
Instructions on how to obtain the toolchain are detailed in the README for
ESP-IDF.
Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
This patch fixes the LOAD_OFFSET calculation to use the actual offset
of the partition. This assumes the reg entry in the DTS for that
partition is in relative offset to the flash base address.
Signed-off-by: Andy Gross <andy.gross@linaro.org>
Moving the net_buf_pool objects to a dedicated area lets us access
them by array offset into this area instead of directly by pointer.
This helps reduce the size of net_buf objects by 4 bytes.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This patch changes the config target to use the config-sanitycheck
target. The config-sanitycheck target gets not only the Kconfig
options, but also the DTS generated options.
Signed-off-by: Andy Gross <andy.gross@linaro.org>
- board name olimex_stm32_e407
- CPU STM32F407ZGT6 Cortex M4
- LED/BUTTON support
- Console on USART1 with 8n1 115200 baud
Signed-off-by: Erwin Rol <erwin@erwinrol.com>
Generates the MMU page tables. This creates a binary output for
the page tables. It takes an binary input which represents the
configuration information needed to generate the page tables.
JIRA:ZEP-2096
Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
This patch ports helper scripts from python2 to python3
with following changes:
- print should be used with () in python3
- resolved bytes-like object is required, not 'str'
- added python3 header
ZEP-2054
Signed-off-by: punit vara <punit.vara@intel.com>
This patch fixes a bug with the computation of the FLASH_LOAD_OFFSET
option that is derived as part of the DTS parsing. Offset should be
the relative offset from the base of flash. If the flash base address
and selected partition are the same, the offset should be 0.
JIRA: ZEP-2260
Signed-off-by: Andy Gross <andy.gross@linaro.org>
When we build with newlib enabled and utilizing one of the other
variants (like having floating point enabled) we need to have the proper
library path setup to find the library. This is mimicked after what we
do in Makefile.toolchain.zephyr for newlib.
Issue: ZEP-2240
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
When checking for line length limits, ignore lines with Signed-off-by.
Some developers have a long name that would not fit within the limits.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Add necessary board files, pinmux and device tree in order to have a
usable debug console.
Origin: Original
Change-Id: I43a9d278c3f2c936a714263626722f630367b663
Signed-off-by: Florian Vaussard <florian.vaussard@heig-vd.ch>
On MSYS2, the #include paths for GCC need to be in native format
(Windows-style paths) since GCC is a native Windows application and
therefore requires standard paths.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This will generate an additional file that can be sourced by the build
system to expose definitions generated by device tree and used for
flashing and debugging targets.
Change-Id: I184e247f0a8dbd1a4a42dd4b02ea01f2caa70533
Jira: ZEP-2119
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Use argeparse for options and add a fixup option to add on top of
generated file. This was previously done in the top Makefile and was
generated defines outside of the header main if statement.
Jira: ZEP-2147
Change-Id: If65f34a11de27baa770d4ce0ef4fca2abbd30258
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This reverts commit 96def63f10.
This breaks building with xtools for some reason, removing for now while
we figure out what went wrong.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Instead of requiring the dts overlay files to be at the top level
directory (where make is invoked), allow this default to be overridden
by setting DTS_OVERLAY_DIR. This is a directory where the overlays
themselves (which are still named $(BOARD_NAME).overlay) will live.
Change-Id: Ie9796afbd27971650b7636a36149c0d1f8e2b9fb
Signed-off-by: David Brown <david.brown@linaro.org>
This patch adds a dependency for the DTS overlay so that the DTS is
compiled when the state of the overlay file changes.
Change-Id: I2affe67f90f56b1d97384d5cd4e3026abed24253
Signed-off-by: Andy Gross <andy.gross@linaro.org>
The 0.9.1 SDK is now required to cover all architectures and to enable
tests on all plartforms supported.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Eliminate following errors:
make[2]: /home/nashif/Work/sdk/xtools/outdir/x-tools//bin/-gcc: Command
not found
make[2]: /home/nashif/Work/sdk/xtools/outdir/x-tools//bin/-gcc: Command
not found
make[2]: /home/nashif/Work/sdk/xtools/outdir/x-tools//bin/-gcc: Command
not found
Also, usage of CROSS_COMPILE with a predefined toolchain is not required and
complicates things, just call CROSS_COMPILE with the full path if you
want to build with a toolchain not supported with Zephyr.
Change-Id: I93ec4ff2e04d22cee82c8e4b74b652927572b30a
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
If the value of the property is a string quote it on output. This lets
us use things like label properties that will have values of strings.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
The stm32f4discovery was incorrectly named and should have been
stm32f4_disco. Also added 96b_carbon_nrf51 that was missing from the
list.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Add configuration, pinmux, dts and documentation for the STM32L496G
Discovery board based on the STM32L496AG SoC.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Here are the main changes:
* board: Update EMSK onboard resources such as Button, Switch and LEDs
+ update soc.h for em7d, em9d, em11d
+ update board.h for em_starterkit board
* arc: Add floating point support and code density support
+ add kconfig configuration
+ add compiler options
+ add register definitions, marcos, assembly codes
+ fixes in existing codes and configurations.
* arc: Update detailed board configurations for cores of emsk 2.3
* script: Provide arc_debugger.sh for debugging em_starterkit board
+ make BOARD=em_starterkit debug
This will start openocd server for emsk, and arc gdb will connect
to this debug server, user can run `continue` command if user just
want to run the application, or other commands if debugging needed.
+ make BOARD=em_starterkit debugserver
This will start an openocd debugger server for emsk, and user can
connect to this debugserver using arc gdb and do what they want to.
+ make BOARD=em_starterkit flash
This will download the zephyr application elf file to emsk,
and run it.
Signed-off-by: Huaqi Fang <huaqi.fang@synopsys.com>
Now that we can specify what toolchain is intended for each
SOC, enable some more SOCs to be built.
A full sanitycheck run will require the installation of both
RF-2016.4 and RG-2016.4 releases.
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
XTENSA_TOOLS_PATH and XTENSA_BUILDS_PATH have been retired.
XTENSA_SDK is now the base directory for the Xtensa SDK. The build
systems will search for toolchains in there, using
CONFIG_TOOLCHAIN_VARIANT to locate the right one. It defaults to
/opt/xtensa.
XTENSA_BUILD_PATHS is now a list of additional directories to search
for Xtensa CPU builds. By default the build system will already search
the builds included in the SDK; this is intended for vendor-supplied
CPU build definitions.
Some whitespace changes made for readability and comments added.
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This greatly increases the speed in which test cases are evaluated
on the Xtensa simulator.
The cycle limit parameter was removed, we don't currently need it
since sanitycheck handles killing test cases if they time out.
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
classname seems to be expected by some parsers, so use it in the report,
the name now has the same value, we can add some more information once
we have meaningful metadata for the testcases with more details.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This new options makes it possible to only run a subset of the tests
which will allow us to run sanitycheck on multiple hosts and merge the
results into one report. This way we do not need to worry about
selecting specific architectures to be run on a certain host.
The option accepts a string value: x/y where x is the subset and y is
the total, so if we specify --subset 1/5, we will only run the first
fifth of the total tests, --subset 5/5 would only select the last fifth.
To get consistent results, the testcase instance list is now ordered,
to avoid duplications and have full coverage.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Add necessary board files, pinmux and device tree in order to have a
usable debug console.
Origin: Original
Change-Id: I280320700352fd36a544c03f4e57d2eeec2449e5
Signed-off-by: Florian Vaussard <florian.vaussard@heig-vd.ch>
Adds a new debug support script using pyOCD and configures most NXP
boards so they can use it. frdm_kw41z is the one exception because pyOCD
doesn't yet support kw41z. Tested with pyOCD v0.8.0 and the latest
DAPLink firmware for each board.
Introduces two new environment variables, PYOCD_FLASHTOOL and
PYOCD_GDBSERVER, that allow you to set custom paths to the pyOCD tools.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>