Create a reference page for each peripheral and move doxygen API
reference to the main documentation page.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
We get the following warning with sdk-ng:
drivers/sensor/lis2dh/lis2dh.c:210:38: error: bitwise comparison
always evaluates to false [-Werror=tautological-compare]
if ((value & LIS2DH_LP_EN_BIT_MASK) == 1 && ...
^~
The test needs to be:
(value & LIS2DH_LP_EN_BIT_MASK) == LIS2DH_LP_EN_BIT_MASK
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
pinmux dev isn't really used or supported. We only have one driver that
is implmeneted, and that driver isn't ever enabled.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Log backends (marked as autostart) are initialized late. By default
in logger thread which has the lowest priority. If log_panic() occurs
earlier no logs is printed because there is no backend enabled.
This patch fixes it by adding log_init() call to log_panic(). Log_init()
can be called multiple times.
This patch ensures that logs are printed if early panic occurs if
backend is configured to auto-start. This is not the case if shell
is acting as log backend.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
The v2018.10 release of OpenAMP reworks the API set and splits the
remoteproc vs rpmsg interfaces so one can use rpmsg without remoteproc.
This helps drastically reduce the code footprint utilized by OpenAMP.
The remote see around 4k reduction in code size.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Update to new OpenAMP v2018.10 release. This release allows us to
utilize just rpmsg without remoteproc. The API set has changed and
requires updates to the openamp sample. Additionally, the changes
in this release reduce the code size footprint, and support a static
allocation memory model.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
The fix in commit e664c78b82 ("kernel/timeout: Fix recursive
spinlock in z_set_timeout_expiry()") missed a spot that had also been
introduced with recent locking work. The new
_get_next_timeout_expiry() implementation takes its own lock, which is
recursive when called from z_clock_announce(). Fix by calling the
wrapped implementation instead.
Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
There was an existing validation layer in the spinlock implementation,
but it was only enabled when both SMP and CONFIG_DEBUG were enabled,
which meant that nothing was using it. Replace it with a more
elaborate framework that ensures that every lock taken is not already
taken by the current CPU and is released on the same CPU by the same
thread.
This catches the much more common goof of locking a spinlock
recursively, which would "work" on uniprocessor setups but have the
side effect of releasing the lock prematurely at the end of the inner
lock. We've done that in two spots already.
Note that this patch causes k_spinlock_t to have non-zero size on
builds with CONFIG_ASSERT, so expect a little data and code size
increase. Worth it IMHO.
Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
If Client send transition time values as 0x40 or 0x80 or 0xC0 then
this was cause the behind divide by zero exception during calculation
of transition->counter. This PR will solve this bug.
Signed-off-by: Vikrant More <vikrant8051@gmail.com>
A number of CONFIG_ symbols should have been converted to DT_ defines
instead. Clean that up for PORT2..PORT4.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
nRF91 only does `--sectorerase` (no UICR) and does not need to
enable pin reset (`--pinresetenable`).
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
When flashing nRF9160_pca10090 board with nrfjprog, explicitly
request for --sectorerase, instead of --sectoranduicrerase (used
when flashing boards with nRF52 SOC).
Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
Remove conditionals with kconfig options that are not defined and for
drivers that are not supported.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Building of nsim_em board will get the NSIM UART build tested so no need
to have an explicit test for it here.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Minor change:
Rename the file names of the test scripts for consistency with
other BLE code
The simulation identification string is also changed (although
there is no actual functional need)
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
To also cover the new split controller architecture (with a common ULL
and vendor dependent LLL).
Add a connection testcase (without encryption so far) for the nrf52_bsim
configured with the split controller architecture.
This is just the exact same as the Basic_con test but building the test
with CONFIG_BT_LL_SW_SPLIT=y.
Privacy and data lenght extensions are also so far disabled as the
new controller does not yet support them.
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
To allow for incremental builds also when 2 projects are only
differentiated by the project configuration file.
Separate the build dirertories also by the selected project file.
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
Previous SAM E70 HAL version was patched by commit 4dcfc8706 ("Add
missing interrupt number definitions") to add missing interrupt
definitions for SAM GMAC Priority Queues. This has been fixed in the
latest HAL by using a slightly different name. This patch updates the
driver accordingly.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Following the HAL import, reapply the part of commit 133306152 ("Add
missing header files symbols for Atmel SAM E70") which hasn't been fixed
upstream yet. From this commit, only the DACC alternate pin functions
have been fixed.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This is an import of Atmel SAM E70 HAL version 2.3.98, and only for the
revision A of the chip. The files have been passed through dos2unix to
minimize the differences with the previous version which seems to also
have been imported that way. All the patches that have been applied on
the previous version have been removed.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
off_t is int with the minimal libc and long with the newlib libc. The
log messages are assuming that off_t is int, therefore this causes
warnings when building with newlib.
Fix that by casting the offset to the "longer" type, ie long.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Every now and then the 100ms delay for collecting IMEI data from the
modem, wasn't long enough and this presents a bad user experience.
Let's set it to 500ms which seems to be working all the time.
Signed-off-by: Michael Scott <mike@foundries.io>
During development of the WNC-M14A2A modem driver, I felt like the
initialization took too long to make the user wait. However, due
to the addition of other drivers such as OpenThread where delays
during startup are noticable, the modem startup time isn't so bad.
Let's remove the delay work which allows Zephyr to startup before
the modem is fully initialized.
NOTE: This also fixes a long standing bug where samples using the
modem would never know when it was ready (without waiting for the
interface up event). This change makes it always ready once the
sample starts.
Signed-off-by: Michael Scott <mike@foundries.io>
Don't add non-existing include directories, it creates noise and even
warnings in some tooling, like Eclipse.
This fixes#12696
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Rework extract_{controller,cells} so they aren't recursive. As part of
this change we take the flat cell array property and build a proper list
based on what the number of cells each element would represent.
Fixes#12724
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Because of differents in dtc versions the output of a list property may
vary. We would flatten the list of lists to a single list to match how
older dtc versions did things. Rather than doing that flattening in
multiple places, move it to get_reduced() so we do it just once.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Leftovers from legacy MQTT removal commit, now all traces of the
old MQTT implementation are gone.
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
It is the macro name that matters, not its value. Here, that will help
to save 1 bit in struct net_pkt later on.
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Introduce the first of the toolchain_cc-family of macros:
toolchain_cc_security_fortify and toolchain_cc_security_canaries.
No functional change expected.
Fortify source is not supported by Clang, but this commit retains
current behavior.
This is motivated by the wish to abstract Zephyr's usage of toolchains,
permitting easier porting to other (commercial) toolchains.
Signed-off-by: Mark Ruvald Pedersen <mped@oticon.com>
Now that the descriptor lists are in non-cached memory, the helpers are
just accessing the w0 or w1 members of the structure. Just drop them and
access the members directly.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Atmel SAM Ethernet module is using a scatter-gather technique to
exchange data with the Ethernet driver. To communicate the location
of the data buffers the driver sets-up a so called descriptor list. This
is effectively a place in RAM containing a sequence of 32-bit words
representing buffer location and its status.
Currently the cache coherency is handled using cache clean or
invalidate. Unfortunately this strategy only works correctly when the
corresponding data size is a multiple of the cache line. This is not
the case here and might lead to data loss or corruption.
Instead of using cache operations, this patch moves the descriptor
listed to the recently added non-cached memory region, as recommended by
ATMEL. A data synchronisation barrier is still required for writes, as
the non-cached memory is defined with TEX=1, i.e. it is not strongly
ordered. The descriptor lists alignment can be decreased to 4 bytes, as
required by the SAM Ethernet module.
The RX/TX buffer are left unchanged, still managed by cache operations.
Fixes#9812
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
The RX buffer accounting list is not a list shared with Ethernet device,
therefore there is no need to run a cache clean operation on it.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
The MQTT over sockets doxygen group was not referenced, hence the API
documentation was missing. Replace legacy MQTT lib reference with a new
one.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
RTT log backend was locking in panic if host absense was not yet
detected (early panic). It is fixed by adding detection of host
absense while pending on data being read by the host.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
Added display text management to shell_fprintf function.
Now it can be used from diffrent threads with not risk that
displayed lines will overlay.
Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Removed foreground command functionality from shell source files.
Removed associated example.
Removed enter/exit command functions from the Bluetooth example
Updated project config files.
Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
After receiving FIN, the TCP stack will send a FIN and start
a timer to track the reception of the associated ACK. In case this
ACK is never received then the context will be released
without calling the associated received callback which leads to
upper layers not being informed that the connection was closed.
This issue was observed when using sockets, the effect is
that in this case the socket would never be closed and stay
in limbo forever.
Signed-off-by: Léonard Bise <leonard.bise@gmail.com>