This commit forces arm_mpu_init() to use the provided API
functions to enable and disable the MPU. Besides the clean-up
the commit enforces the MPU driver to use data and instruction
synchronization barriers every time the MPU is enabled. This
is aligned with the programming recommendations by ARM.
Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
This fixes a build issue on esp32 that was introduced recently with the
merge of an old PR.
Include the register headers in soc.h rather than soc.c and make them
available to other code via soc.h
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
ESP32 does not like newlib, exclude for now to get a clean sanitycheck
run. We have issues about this already.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Use the same variable type for the odd bit handling
and fix the boolean expression warning with gcc 7.3.1.
Signed-off-by: Johann Fischer <j.fischer@phytec.de>
We utilize defines like -ESHUTDOWN in the network stack. To support
this errno value with newlib we need to enable
__LINUX_ERRNO_EXTENSIONS__.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
__LINUX_ERRNO_EXTENSIONS__ gets defined in HAL/inc/sys/alt_errno.h,
however we also need to define this if we are building with newlib. So
add a simple ifdef guard to only define __LINUX_ERRNO_EXTENSIONS__ if
its not defined already.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
After running some tests which enable assert macro I found some issues
with the i.MX UART configuration.
This patch configures the Tx Fifo Watermark and Modem Mode accordingly.
Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
implement a method that can set SN string descriptor at runtime.
but runtime SN and default SN configured in Kconfig must has the
same length.
Fixes: #6593
Signed-off-by: qianfan Zhao <qianfanguijin@163.com>
Documenting new logger features: waking up processing thread
and internal logger processing thread.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
When enabled, logger is creating own thread which processes buffered
logs. When no logs to process, thread sleeps for configurable period.
Thread can be waken up if number of buffered log messages exceeds
configured threshold. Logging sample aligned to use new feature.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
Added configurable threshold of number of buffered log messages
on which log wakes up thread which processes buffered logs. Thread
ID is provided during logger initialization. Feature is optional
and can be disabled by setting CONFIG_LOG_PROCESS_TRIGGER_THR to 0.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
If we use newlib the isdigit (and other similar functions) return an
error as char can possibly be viewed as signed:
usr/include/ctype.h:57:54: error: array subscript has type ‘char’ [-Werror=char-subscripts]
#define __ctype_lookup(__c) ((__ctype_ptr__+sizeof(""[__c]))[(int)(__c)])
Explicity cast to unsigned char so we deal with both this warning and
possible warning when -Wpointer-sign is enabled.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
If we use newlib the isdigit (and other similar functions) return an
error as char can possibly be viewed as signed:
usr/include/ctype.h:57:54: error: array subscript has type ‘char’ [-Werror=char-subscripts]
#define __ctype_lookup(__c) ((__ctype_ptr__+sizeof(""[__c]))[(int)(__c)])
Explicity cast to unsigned char so we deal with both this warning and
possible warning when -Wpointer-sign is enabled.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
If we use newlib the isdigit (and other similar functions) return an
error as char can possibly be viewed as signed:
usr/include/ctype.h:57:54: error: array subscript has type ‘char’ [-Werror=char-subscripts]
#define __ctype_lookup(__c) ((__ctype_ptr__+sizeof(""[__c]))[(int)(__c)])
Explicity cast to unsigned char so we deal with both this warning and
possible warning when -Wpointer-sign is enabled.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Minor improvement in the help text description of Kconfig option
SYS_CLOCK_HW_CYCLES_PER_SEC, clarifying that the option can be
defined in either SOC or Board Kconfig file.
Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
Addition of a Flash partition to the 'frdm_k64f.dts' file in the
currently existing 'Application Area' (Partition Location: 0x0001e000
Partition Size:0x00002000). This partitioned area can be used as a FCB
for Bluetooth and other applications.
Signed-off-by: Arjun Warty <arjun.warty@nxp.com>
Removed redundant and unused config options from conf files.
Added separate files for handing power management and device
handling functions.
Added the PM policy based on the next timeout event instead of
simply advancing to the next power state.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
In case of tickless kernel, k_busy_wait() calls __enable_sys_clock()
which in turn calls _set_time() with maximum RTC counter programmable
value. This will set the expected_sys_ticks to maximum tick value even
though there is no explicit timeout is requested from the kernel or from
an application. In this scenario, if an app calls k_sleep() which in
turn calls _add_timeout() which will adjust timeout value as per the
elapsed program time which based on incorrectly set expected_sys_ticks.
To fix this issue, we should not set the expected_sys_ticks in case
of __enable_sys_clock() as it just requests to run the counter but
a timeout event request.
Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
On 'drivers/i2c_esp32.c' there are functions useful for other
drivers. Functions and struct went moved to:
* arch/xtensa/soc/esp32/peripheral.h
* arch/xtensa/soc/esp32/soc.h
* include/drivers/gpio/gpio_esp32.h
Signed-off-by: Vitor Massaru Iha <vitor@massaru.org>
Log API can be used before user can explicitly initialize the logger.
In order to ensure that logger core is ready to buffer log messages
it must be initialize as early as possible. Initialization does not
include initialization of default backend since driver may not be
ready and backend is needed only when log messages are processed.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
$srctree was changed to an absolute path when the documentation building
was switched over to CMake, which uncovered a bug in Kconfiglib that
caused symbols in gsource'd files to show up with absolute paths in the
auto-generated Kconfig documentation.
This commit adds upstream commit ac692af07a123 ("Fix absolute $srctree
prefixes showing up on gsource'd files"), which fixes it.
Upstream commit message:
When using gsource with $srctree set to an absolute path, the $srctree
prefix would show up in MenuNode.filename, trickling its way into e.g.
generated documentation.
This was due to a broken test: os.path.isabs() was checked after
joining the pattern with $srctree, making it mistake an absolute
$srctree for an absolute path in the Kconfig file.
Fix the test.
Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
Add config file that enables to run http_get and big_http_download
samples with TLS enabled and receive the data through HTTPS.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Implement socket poll function for TLS socket. In addition to regular
poll checks, we have to check if there is some decrypted data pending on
mbedTLS.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Add entropy source for mbedTLS. If no entropy driver is available, use
non-secure, software entropy source.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Add tls_context structure that stored data required by TLS socket
implementation. This structure is allocated from global pool during
socket creation and freed during socket closure.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Add switch to a socket layer that will enable switching socket API to
TLS secure sockets. At this point there is no secure sockets
implementation, so secure socket calls redirect to regular socket calls.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
In order to build the documentation one needs Doxygen. Now that building
the documentation is supported on Windows, include this package.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
In order to be able to use this CMakeLists.txt file from other projects,
use the proper variables so that they refer to their own paths.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
NXP periodically releases new versions of the MCUXpresso SDK (mcux).
Automate the process of importing mcux into zephyr with a python script.
Example usage:
$ import_mcux_sdk.py -f SDK_2.3.0_EVK-MIMXRT1050.tar.gz
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
If we use newlib the isdigit (and other similar functions) return an
error as char can possibly be viewed as signed:
usr/include/ctype.h:57:54: error: array subscript has type ‘char’ [-Werror=char-subscripts]
#define __ctype_lookup(__c) ((__ctype_ptr__+sizeof(""[__c]))[(int)(__c)])
Explicity cast to unsigned char so we deal with both this warning and
possible warning when -Wpointer-sign is enabled.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
The common spi.yaml defines an optional clocks property that can be
overridden by specific spi driver bindings to be required. The
description and generation attributes are duplicated.
This fixes build warnings:
extract_dts_includes.py: Merge of 'description': 'Clock gate control
information' overwrites 'Clock gate information'.
extract_dts_includes.py: Merge of 'generation': 'structures' overwrites
'define'.
And introduces a different build warning, which is intended behavior:
extract_dts_includes.py: Merge of 'category': 'required' overwrites
'optional'.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
The common uart.yaml defines an optional clocks property that can be
overridden by specific serial driver bindings to be required. The
description and generation attributes are duplicated.
This fixes build warnings:
extract_dts_includes.py: Merge of 'description': 'Clock gate control
information' overwrites 'Clock gate information'.
extract_dts_includes.py: Merge of 'generation': 'structures' overwrites
'define'.
And introduces a different build warning, which is intended behavior:
extract_dts_includes.py: Merge of 'category': 'required' overwrites
'optional'.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
If temperature value are out of range which is from 0x0320
to 0x4E20 then no relevant get message handler will execute.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>
Added extra case under state binding's switch statement for
Lightness i.e DELTA_LEVEL. Also upgrade binding between
1. root element's LEVEL state & Light Lightness Actual state.
2. Light Lightness Linear state & Light Lightness Actual state.
3. Light CTL lightness state & Light Lightness Actual state
This is as per Bluetooth Mesh Model Specification 3.3.2.2.3.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>
Now on reboot, NODE as client do not start message publishing
with TID = 1. Instead of that it would start with any random value
from 0 to 255.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>
Improved code readability by declaring some pre-processor
definitions in device_composition.c
Remove model_instance variable from some structures define in
device_composition.h & its relevant code.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>
Update Vendor model message handlers & make it to work as per
TID like other Models defined by SIG. Removed union based data
extraction mechanism.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>
Updated state Binding as per PTS test requirements. Now if
gen_onoff_server & gen_onpowerup_server received Prohibited values
then they will not react on it further. Plus make necessary changes
wherever required for message handlers as per Mesh Model
Specification which is mostly regarding to default & range values.
Now right Status code would get publish in response to set lightness
& temperature range. Also upgrade Message handler
gen_delta_set_unack() algorithm as per PTS requirements.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>