Commit graph

99049 commits

Author SHA1 Message Date
Marti Bolivar
100a2bba6c scripts: update pyocd in requirements.txt
This includes a bugfix for a pyocd requirement on pyyaml
that could not be satisfied using officially supported
releases.

Signed-off-by: Marti Bolivar <marti.bolivar@nordicsemi.no>
2019-04-10 17:52:15 -04:00
Johan Hedberg
91139c1534 doc: bluetooth: Clarify notes about blocking in the RX thread
Callbacks called from the RX thread may block, but should avoid doing
it for long periods of time.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 17:43:55 -04:00
Johan Hedberg
c5e826e8ff doc: bluetooth: Move L2CAP text from to API reference section
Move the L2CAP text from the guides section to the API reference
section.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 17:43:55 -04:00
Johan Hedberg
bf31fbd789 doc: bluetooth: Move GATT text to API reference section
Move the GATT text from the guides section to the API reference.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 17:43:55 -04:00
Johan Hedberg
d34128a97b doc: bluetooth: Add reference to Mesh API section
Add a reference from the architecture guide to the Mesh API section.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 17:43:55 -04:00
Johan Hedberg
eb46f47a8d doc: bluetooth: Fix text corruption
For some reason there were garbage characters at the end of the line.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 17:43:55 -04:00
Johan Hedberg
83b443aa2d doc: bluetooth: Move connection management text to API reference
Move the connection management text from the Guides section to the API
reference section.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 17:43:55 -04:00
Andrzej Głąbek
112baf1721 boards: nrf9160_pca10090: Fix polarity of pwm0/ch0
This is a follow up to commit 436c4262da.
By default the channel 0 of pwm0 is set to the pin that drives led0.
Since the LED is active high, the inversion of polarity is incorrect.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2019-04-10 13:55:10 -04:00
Michael Scott
cb2bfcb9c0 net: lwm2m: fix periodic services handling
This fixes an issue where if timestamp == service_due_timestamp,
we don't call the periodic service.  Then the following call to
engine_next_service_timeout_ms() returns 0 because the service
is still due and lwm2m_engine_service() is called again.
This process repeats several times until the value of
k_uptime_get() changes and then the work is finally handled.

Previously, the resolution of k_uptime_get() was in ms.  A recent
change to this API defaults Zephyr so that the resolution is
set via CONFIG_SYS_CLOCK_TICKS_PER_SEC (default 100).

This means the value of k_uptime_get() only changes every 10ms.

Reported-by: Github User pieterjanc
Signed-off-by: Michael Scott <mike@foundries.io>
2019-04-10 13:54:23 -04:00
Michael Scott
42abfc6532 net: lwm2m: dont use system workqueue for services
"It's a Trap!" -- Admiral Ackbar

When moving to the BSD-socket APIs, the original thread running LwM2M
periodic services such as observes and lifetime updates, was replaced
with a re-occuring workqueue job.  To save the overhead of creating a
new thread, I used the system workqueue for these jobs.

This was a mistake.  If these jobs hit a semaphore or wait for some
reason, it cannot be prempted due to the priority of the system work
queue.

Let's instead add this service handling to the thread that we already
use for polling sockets.  This also removes a configuration issue where
the system workqueue stack size needed to be increased.  This can now
be adjusted via the LWM2M_ENGINE_STACK_SIZE knob.

Directly fixes semaphore usage in the socket-based DNS code.
This was introduced as a bugfix for non-responsive DNS server hanging
the Zephyr device forever.  However, this probably fixes randomly
seeming hangs on the device.

Signed-off-by: Michael Scott <mike@foundries.io>
2019-04-10 13:54:23 -04:00
Mieszko Mierunski
6a739435a0 drivers: nrf: Fix UARTE interrupt driven operation.
Bad order of interrupt calls made it unable to transmitt data
using interrupt driven API.

Signed-off-by: Mieszko Mierunski <mieszko.mierunski@nordicsemi.no>
2019-04-10 13:53:40 -04:00
Andrew Boie
9e69c54060 sanitycheck: add more info during processing
After the testcase configs are built, there is a step to
filter all the test case information to determine the set
of tests to run.

As this step takes a nontrivial amount of time, add an
informational message about it.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2019-04-10 13:09:28 -04:00
Alberto Escolar Piedras
6a70f397ff doc: Reorganize development model section
Renamed the page "review_process.rst" to "dev_env_and_tools.rst"
as the old name did not cover all its content.
Moved the labels page content into this
"Developemnt Environment and Tools" page.

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-04-10 12:58:43 -04:00
Alberto Escolar Piedras
ee194c375a doc: dev_process: Add description about GH labels usage
There has been some confusion about how GitHub labels
should be used.
This commit adds a new doc page, which tries to clarify this.

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-04-10 12:58:43 -04:00
Alberto Escolar Piedras
1923a04ff0 doc: Add to 1.14 release notes native_posix and nrf52_bsim changes
Added information to the release notes about the new drivers
in native_posix, the new nrf52_bsim board and the BabbleSim
integration in CI and testcases.

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-04-10 12:41:51 -04:00
Ioannis Glaropoulos
e2969e5de0 tests: kernel: fp_sharing: minor fix in #ifdef expression
We need to use the ARMV7_M_ARMV8_M_FP Kconfig symbol,
which denotes the Floating-Point capabilities, instead
of the option that signifies the Cortex-M variant. Fix
is of minor importance, as long as the #ifdef block
remains empty.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2019-04-10 10:59:46 -04:00
Ulf Magnusson
3a8db5549a editorconfig: Set insert_final_newline true
This is what checkpatch.pl expects, and GitHub's file viewer flags a
missing trailing newline too.

Note that this is different from a blank line at the end of the file. It
just says whether the last line must end in a newline.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2019-04-10 14:15:38 +02:00
Joakim Andersson
0e7bf9b657 Bluetooth: controller: Send unknown rsp to unexpected ENC ctrl PDU
Send unknown rsp instead of asserting when encryption related control
PDUs are received in the wrong state.
This would allow an attacker to intentionally crash the device.

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2019-04-10 14:01:21 +02:00
Joakim Andersson
9fb3abef1e Bluetooth: controller: Fix length request during encryption procedure
Stop the Length request procedure from initiating during the encryption
procedue. This would cause the peer to disconnect the link with error
code LMP_TRANSACTION_COLLISION

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2019-04-10 14:01:21 +02:00
Joakim Andersson
0cf82cdd31 Bluetooth: controller: Set encryption procedure pending
Set the encryption procedure pending and start it as soon as
there are no other procedures running.
This allows the Host to enqueue the encryption procedure, and not
get disallowed command because a different LL procedure is active.

Fixes #15012

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2019-04-10 14:01:21 +02:00
Aaron Tsui
5922be2ed6 samples: subsys: logging Remove repetitive code.
Remove repetitive code

Signed-off-by: Aaron Tsui <aaron.tsui@outlook.com>
2019-04-10 13:51:38 +02:00
Aaron Tsui
1c742a9756 doc: subsys: logging Update documentation
Update documentation.

Signed-off-by: Aaron Tsui <aaron.tsui@outlook.com>
2019-04-10 13:51:38 +02:00
Johan Hedberg
63955e5f70 Bluetooth: Fix clearing conn->le.keys when unpairing
When calling bt_unpair() the keys were removed from flash, however a
pointer was left to the invalidated keys in case there was an existing
connection. This would then lead to a bogus entry being stored in
flash for a zero-address peer device. Fix this issue by clearing the
conn->le.keys pointer in the bt_unpair() function.

Fixes #15325

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 14:47:29 +03:00
David B. Kinder
2e5172dab7 doc: update 1.14 release notes with doc changes
Update 1.14 draft release notes with doc changes.  Also edited existing
release notes material to make sentence tense consistent (past tense).

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-04-10 07:37:04 -04:00
Johan Hedberg
686f5c79cf Bluetooth: Mesh: Fix not updating health publication message
The bt_mesh_fault_update() API is meant for updating the publication
message and sending it out to the network, however it was missing the
necessary call to health_pub_update() which is responsible for
updating the publication message.

Fixes #15300

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-10 10:56:27 +03:00
Andrew Boie
9926f947ab tests: ringbuffer: avoid unaligned mem access
Casting the rb_data character array to a u32_t can result
in an unaligned u32_t * pointer being passed to
ring_buf_item_put(), since rb_data is only byte-aligned.

Our Altera Max10 CPU build is not configured to detect
unaligned memory access and throw an exception, it is
instead rounding down the memory address
of the data pointer to the nearest 4-byte value, causing
the wrong data to be copied into the ring buffer.

It appears that in the C standard this is considered
Undefined Behavior so the approach this patch takes is
to fix the test, by ensuring that rb_data is aligned to
u32_t.

Fixes: #14869

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2019-04-09 19:59:46 -04:00
Andrew Boie
7387b56c61 tests: add nsim special cases for two tests
The NSIM emulator has severe performance issues when
the MPU registers are reprogrammed on context switch.
Disable runtime reprogramming of the MPU for these
platforms on these two tests, which have a lot of context
switch thrashing. This is done by ensuring userspace
and hardware stack overflow detection via guard areas
is disabled.

I have assurances from the ARC team that the tests run fine
on real hardware and this is an emulation issue.

For 1.15, this will be completely resolved by optimizing
MPU region gap-filling to not take place during context
switch time, which will drastically reduce the number of
MPU registers poked during context switch on nsim_sem.

Meanwhile, for 1.14 we ensure that no runtime reprogramming
of the MPU is done for these tests.

Fixes: #14642

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2019-04-09 19:38:32 -04:00
Wayne Ren
5bc307e60f arch: arc: optimize the macros of thread stack
* clean up and optimzie the macros of thread stack

Signed-off-by: Wayne Ren <wei.ren@synopsys.com>
2019-04-09 18:39:48 -04:00
Wayne Ren
290aa59ada arch: arc: fix the bug of mpu stack guard when no USERSPACE
* fix the stack allocation and initialization
  for mpu stack guard when USERSPACE is not configured
* fixes #15163

Signed-off-by: Wayne Ren <wei.ren@synopsys.com>
2019-04-09 18:39:48 -04:00
Alexander Wachter
c204f70540 net: increase mgmt event stack size
Increase the default mgmt event stack size from 512 to 768 because of
stack overflows.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-04-09 15:35:41 -04:00
Wayne Ren
1f0fc6d712 arch: arc: fix the bug of nest interrupt handling in int exit
* it's not reliable to use exc_nest_count to decide nest interrupt.
  A better option is to use IRQ_ACT

* ext_nest_count is just used to switch interrupt stack

Signed-off-by: Wayne Ren <wei.ren@synopsys.com>
2019-04-09 15:35:17 -04:00
Adithya Baglody
d39e68d6b2 samples: code_relocation: Disable code coverage.
Currently coverage is enabled only in platforms which dont have
multiple memory regions. This sample was designed to emulate
different memory regions. This in conjunction with gcov which
might instrument data in different memory regions will not work
as expected. Therefore disabling gcov for this sample.

Fixes: GH-15107

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2019-04-09 12:46:24 -04:00
Andrew Boie
9f2188706c samples: remove mem_domain_apis_test
We have actual tests now under tests/kernel/mem_protect/userspace
and tests/kernel/mem_protect/mem_protect that exercise all the
memory domain APIs. This old test is superfluous.

Fixes: #15178

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2019-04-09 11:47:28 -04:00
Torsten Rasmussen
ad026c09b1 cmake: modules: using posix path for Kconfig generated file
Fixes: #15289

Kconfig requires posix style path when sourcing other files.
As abspath in python will use native host style, i.e. backslash '\' in
windows this will cause invalid paths in Kconfig generated file and
thus the file will never be loaded.

This commit uses PurePath to convert the path to posix style, ensuring
Kconfig can load the modules.

Signed-off-by: Torsten Rasmussen <torsten.rasmussen@nordicsemi.no>
2019-04-09 16:47:45 +02:00
Anas Nashif
ceca823b59 doc: remove references to IRC
Remove references to IRC and mention Slack instead.

Fixes #15266

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-09 07:53:31 -04:00
Jim Paris
38ecf5b41f shell: Consume all input data
A transport may receive multiple bytes of data between shell_thread
wakeups, but state_collect is only called once per wakeup.  So it must
process all data, and only return when all data from the transport has
been consumed.  This is mostly handled correctly, but there were two
places where state_collect would return early instead.

Signed-off-by: Jim Paris <jim@jtan.com>
2019-04-08 19:38:01 -04:00
Piotr Mienkowski
d38ffedd4d doc: add example of how to build MCUBoot app with west
This commit extends existing documentation by providing an example
of how to build Hello World sample application for MCUboot using
west.

Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2019-04-08 19:37:39 -04:00
Anas Nashif
15ca53dbba doc: development process: feature tracking
Add section about adding features and feature tracking.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-08 19:00:12 -04:00
Anas Nashif
7946b88c2d doc: remove outdated and wrong merge-window description
This picture was wrong and outdated describing an old process we used to
have.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-08 19:00:12 -04:00
Henrik Brix Andersen
35afc873fe dts: rv32m1_ri5cy: fix comment
Fix a comment in the rv32m1_ri5cy.dtsi file.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2019-04-08 16:50:22 -04:00
Andrzej Puzdrowski
bfb7e4531c tests/subsys/settings/fcb: fix unaligned test
Unaligned test might filed in case fcb area was not clen before
run.
The patch insert clean operation before this test.

fixes #15063

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2019-04-08 10:50:10 -04:00
Anas Nashif
7f378d6ef8 benchmarks: sched: capture output and evaluate
We were running this as a test and not evluating the output. Now we
verify the output and stop treating this as a ztest item.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-08 10:46:55 -04:00
Cinly Ooi
f874ac72e4 doc: Remove prj_single.conf from README.rst
Removed documentation about prj_single.conf from README.rst
as it is no longer needed and was removed.

Signed-off-by: Cinly Ooi <cinly.ooi@intel.com>
2019-04-08 10:45:52 -04:00
Jim Paris
7cdfe7f26f Bluetooth: shell: fix build warning if !BT_CENTRAL
Fixes:
  .../zephyr/subsys/bluetooth/shell/bt.c:906:12:
     warning: 'cmd_chan_map' defined but not used [-Wunused-function]

Signed-off-by: Jim Paris <jim@jtan.com>
2019-04-08 12:36:15 +03:00
Anas Nashif
318a98a7fb doc: fix ztest code samples
Remove extra commas and close brackets in code samples.

Fixes #14098

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 12:22:00 -04:00
Anas Nashif
a520266e44 tests: remove unused defaults.tc
This file is not used and was originally added to support TCF hardware
testing. We use harness now.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 10:26:27 -04:00
Anas Nashif
f6a163fc5c ci: remove unused script merge_junit.py
This script is now part of ci-tools repo.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 10:26:27 -04:00
Anas Nashif
073e017c75 tests: use correct kconfig in help message
CONFIG_TEST_HAS_USERSPACE was removed, fix the help the text to reflect
that.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 10:26:27 -04:00
Anas Nashif
83ceb4953a net: telnet: remove obsolete code
Remove obsolote telnet console code. We now have a proper shell backend
for telnet.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 10:26:27 -04:00
Johan Hedberg
309b7ff3b4 Bluetooth: Mesh: Update TODO to match current situation
Persistent storage is done. So are the configuration and health
clients. We're also not actively looking to optimize the provisioning
protocol & mesh networking memory usage anymore.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2019-04-07 09:39:30 -04:00