Commit graph

99553 commits

Author SHA1 Message Date
Andrzej Puzdrowski
a8b801f171 ext: nffs: update for enabling statistic
Origin: Apache Mynewt NFFS
URL: https://github.com/apache/mynewt-nffs/tree/master
Commit: 199575aa8b309dfe809cc59b9c6854ccdad9bdf7
Maintained-by: External

This patch introduce version whitch enables NFFS statistic.
Statistic functionalities were (recently) introduced within
mgmtm subsystem.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2018-03-21 17:04:07 +01:00
Sebastian Bøe
43bc30466a Revert "doc: Kconfig: Decode Kconfig sources as UTF-8 instead [...]"
This reverts commit f8d451258e. The
revert is done because of a regression in Mac OSX
https://github.com/zephyrproject-rtos/zephyr/issues/6726

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-03-21 08:57:44 -04:00
Sebastian Bøe
799b456354 Revert "kconfig: Decode Kconfig sources as UTF-8 instead of [...]"
This reverts commit 8500134cc2. The
revert is done because of a regression in Mac OSX
https://github.com/zephyrproject-rtos/zephyr/issues/6726

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-03-21 08:57:44 -04:00
Stig Bjørlykke
5f42a26488 net: sockets: Allow empty service in getaddrinfo()
Make the service parameter optional in getaddrinfo().

The application should be able to use NULL as service when only
interested in the host lookup.

Signed-off-by: Stig Bjørlykke <stig.bjorlykke@nordicsemi.no>
2018-03-21 10:00:17 +02:00
Stig Bjørlykke
c8732d93d0 net: sockets: Add freeaddrinfo()
Add freeaddrinfo() to complement getaddrinfo().

Existing applications using getaddrinfo() will usually free
allocated memory using freeaddrinfo(). Even if nothing is allocated
the function should exist to avoid having to change the application
when porting.

Signed-off-by: Stig Bjørlykke <stig.bjorlykke@nordicsemi.no>
2018-03-21 10:00:05 +02:00
Stig Bjørlykke
57e7ea8793 net: sockets: Support MSG_DONTWAIT flag in zsock_sendto
Add support for MSG_DONTWAIT flag in send() and sendto(). This
aligns with the same flag used in recv() and recvfrom().

Signed-off-by: Stig Bjørlykke <stig.bjorlykke@nordicsemi.no>
2018-03-21 09:59:49 +02:00
Carles Cufi
8aa9a37902 drivers: flash: nrf: Rename nrf5 to nrf
With upcoming ICs that are not in the nRF5x family, rename the flash
driver and all its dependencies from nrf5 to nrf.

Should also fix the issue introduced by f49150cab6 which broke the
assignment of the flash device due to a partial rename.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-03-20 20:07:09 +01:00
Anas Nashif
639f8ed344 doc: http: add HTTP APIs to net group
Make http APIs be part of the overall networking group in doxygen.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-20 14:01:30 -04:00
Anas Nashif
954d550364 kernel: api: mark internal functions as such
Add @internal doxygen command to mark internal functions.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-20 14:01:30 -04:00
Anas Nashif
11828bf66b doc: do not show undocumented members
Avoid listing internal function in the public API documentation. After
enabling those doxygen configs, we go lots of errors and bad refs that
were fixed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-20 14:01:30 -04:00
Anas Nashif
585fd1faec doc: kernel: capitalize Fifo/Lifo
Capitalise Fifo and Lifo in documentation, those are acronyms and need
to be all in caps.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-20 14:01:30 -04:00
Anas Nashif
166f5194ae kernel: api: fix doxygen group ending
Extra comments after @} were showing up in the next section details.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-20 14:01:30 -04:00
Maureen Helm
e2d73fb153 doc: application: Add Eclipse debugging section
Document how to debug a Zephyr application in the Eclipse IDE.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2018-03-20 12:44:05 -04:00
Ramakrishna Pallala
a2e1341592 tests: kernel: Add fifo timeout scenario tests
Add k_fifo kernel object timeout scenario tests like basic
k_fifo API tests with timeouts and tests which involve other
threads to get/put items from/into k_fifo with timeouts.

This test is inspired from test_stack legacy test from
Zephyr v1.7.0 release.

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2018-03-20 12:39:30 -04:00
Ramakrishna Pallala
f112b3eee1 tests: kernel: Add fifo usage scenario tests
Add k_fifo kernel object usage scenario tests between thread
to thread and thread to ISR.

This test is inspired from test_fifo legacy test from
Zephyr v1.7.0 release.

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2018-03-20 12:39:30 -04:00
Anas Nashif
25f6ab62c7 Revert "sanitycheck: Default to using Ninja"
This reverts commit 0e6689d559.

Parallel builds are broken due to a mix of Make/Ninja and the job server
not being operational.

See https://github.com/ninja-build/ninja/issues/1139

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-20 12:31:52 -04:00
Adithya Baglody
3a6d72ecde kernel: mem_domain: k_mem_partition is now placed in kernel memory.
The k_mem_partition structs need to be placed in the kernel memory.
This patch ensures that these structs are placed correctly.
Also when a struct k_mem_domain is declared it is advised to add
__kernel.

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2018-03-20 09:19:59 -07:00
Jukka Rissanen
feec8bfadb net: websocket: Leave space for null in strncpy
There was not enough space for \0 at the end of the string.

Coverity-CID: 183057
Coverity-CID: 183050
Fixes #6675
Fixes #6682

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-20 12:19:13 -04:00
Jukka Rissanen
44eb83624f tests: net: websocket: Fix null pointer dereference
Network packet cannot be NULL so no need to check its value.

Coverity-CID: 183063
Fixes #6669

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-20 12:19:13 -04:00
Punit Vara
fcf942afce tests: msgq_api: Improve scenario testing
Pend multiple thread to wait for writing on msgq.

Signed-off-by: Punit Vara <punit.vara@intel.com>
2018-03-20 12:13:27 -04:00
Sebastian Bøe
f8d451258e doc: Kconfig: Decode Kconfig sources as UTF-8 instead of as LC_CTYPE
Decode Kconfig sources as UTF-8 instead of decoding them according to
the system locale (which might be ascii-only).

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-03-20 12:07:02 -04:00
Sebastian Bøe
8500134cc2 kconfig: Decode Kconfig sources as UTF-8 instead of as LC_CTYPE
Decode Kconfig sources as UTF-8 instead of decoding them according to
the system locale (which might be ascii-only).

This resolves an issue that can be reproduced like this:

$ export LANG=C
$ echo '# Sebastian Bøe' >> ~/zephyr/Kconfig
$ build_any_zephyr_app

See the Python comment for details.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-03-20 12:07:02 -04:00
Jukka Rissanen
8b8178b0f9 drivers: eth: gmac: Do not verify config for unit tests
No need to verify that the configuration is proper if we are
compiling the driver for unit test and not going to ever run
the test.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-20 10:37:34 -04:00
Jukka Rissanen
9643fd2bd4 boards: sam_e70_explained: Enable ethernet by default
As the board has ethernet chip it makes sense to enable the
ethernet support by default.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-20 10:37:34 -04:00
Jukka Rissanen
ebb7845937 net: pkt: net_pkt_get_reserve_data() was aliased incorrectly
If CONFIG_NET_DEBUG_NET_PKT was enabled, then a call to
net_pkt_get_reserve_data() was calling wrong debug function
which caused compile error.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-20 15:58:16 +02:00
Stig Bjørlykke
7c9c825138 net: sockets: Support MSG_PEEK flag in zsock_recvfrom
Add support for MSG_PEEK flag in recv and recvfrom.

This flag is needed when using non-zephyr embedded applications with
Zephyr's socket API.

Signed-off-by: Stig Bjørlykke <stig.bjorlykke@nordicsemi.no>
2018-03-20 15:55:04 +02:00
Ruslan Mstoi
b3a5797dba net: ipv6: fix memory leak caused by echo request
Memory leak occurs if neighbor table is full and echo request from an
unknown neighbor is received. Hence, on an attempt to send NS unref of
pending is not done, causing the memory leak.

Signed-off-by: Ruslan Mstoi <ruslan.mstoi@intel.com>
2018-03-20 15:51:37 +02:00
Ioannis Glaropoulos
65607ee104 arch: arm: SecureFault_IRQn for non-CMSIS-compliant MCUs
Define IRQ number for SecureFault Handler when building Secure
Firmware for non-CMSIS-compliant ARM Cortex-M MCUs.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-03-20 21:34:01 +08:00
Jukka Rissanen
317eae06f6 net: ethernet: Avoid overlapping memcpy for tx packets
This was reported by valgrind

Source and destination overlap in memcpy(0x80c18c0, 0x80c18c0, 6)
   at 0x4035C3E: memcpy (vg_replace_strmem.c:1023)
   by 0x80978CA: ethernet_send (ethernet.c:319)
   by 0x8061B9B: net_if_send_data (net_if.c:281)
   by 0x805F215: net_send_data (net_core.c:399)
   by 0x8080998: send_mldv2_raw (ipv6.c:2858)
   by 0x8080BA6: send_mldv2 (ipv6.c:2889)
   by 0x8080D6C: net_ipv6_mld_join (ipv6.c:2915)
   by 0x8061EF0: join_mcast_allnodes (net_if.c:438)
   by 0x8062CA4: net_if_ipv6_addr_add (net_if.c:826)
   by 0x8062296: net_if_start_dad (net_if.c:557)
   by 0x8066667: net_if_up (net_if.c:2107)
   by 0x8066AF0: net_if_post_init (net_if.c:2341)

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-20 14:36:07 +02:00
Carles Cufi
6656969598 arch: arm: nordic_nrf: Restore copyright years
A previous commit had mistakenly overwritten the copyright years instead
of extending the range. Fix this mistake so that the proper range is
recorded.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-03-20 13:25:44 +01:00
Carles Cufi
b2016da563 arch: arm: nrf: Rename common header to apply to all nRFx ICs
The existing nrf5_common.h now applies to other Nordic ICs that are not
part of the "5" family. Instead rename this to nrf_common.h to cover the
upcoming ICs that belong to other families.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-03-20 11:57:14 +01:00
Carles Cufi
f49150cab6 arch: arm: nrf: Rename nrf5 SoC Family to nrf
Upcoming Nordic ICs that share many of the peripherals and architecture
with the currently supported nRF5x ones are no longer part of the nRF5
family. In order to accomodate that, rename the SoC family from nrf5 to
nrf, so that it can contain all of the members of the wider Nordic
family.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-03-20 11:57:14 +01:00
Johan Hedberg
0cee4ed747 Bluetooth: Mesh: cfg_cli: Fix possible race condition
If the thread that sends the configuration messages has low priority
and is sending to the local node (a common use case currently) it's
possible that the response arrives before the cli->op_* state
variables are set, resulting in the message never getting properly
processed and the client API call timing out.

Split the initialization into a separete cli_prepare() call and add a
cli_reset() to clean up the variables in case of premature completion
of the client operation (e.g. due to message sending failure).

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2018-03-20 09:22:42 +02:00
Johan Hedberg
7fd4184d2e Bluetooth: Mesh: cfg_cli: Fix trying to write a NULL pointer
It's not always guaranteed that param->status will be non-NULL,
especially not after a subsequent patch to fix a race condition with
the response waiting.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2018-03-20 09:22:42 +02:00
Adithya Baglody
c7553acdef tests: kernel: pipe_api: Run test with userspace enabled.
Previously qemu_x86 was the only device to run this test in
userspace. With this patch, the pipe testcases can now
run on any device which has userspace enabed.

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2018-03-19 18:18:00 -04:00
Adithya Baglody
84fed56236 tests: kernel: pipe: Added new test cases for pipe.
The following are the test cases added for pipe.
1. Test pipe APIs on single data element.
2. Test pipe APIs on multiple data elements.
3. Test pipe APIs with forever wait.
4. Test pipe APIs with timeout.
5. Test pipe APIs on an empty pipe.
6. Test pipe get API with forever timeout.
7. Test pipe get API with limited timeout.

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2018-03-19 18:17:35 -04:00
Adithya Baglody
a47f14accc tests: Kconfig: Added a new kconfig.
A new Kconfig to help test the userspace mode. Needed for devices
which have userspace capabilities but are not enabled by default.
This kconfig enables the userspace for the devices which have
CONFIG_ARCH_HAS_USERSPACE enabled.

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2018-03-19 18:16:58 -04:00
Reto Schneider
6320dce434 boards: sensortag: Update links to reference manual
New revision (SWCU117H) got published and the old one (supposedly
SWCU117G) is no longer available.

Signed-off-by: Reto Schneider <code@reto-schneider.ch>
2018-03-20 05:19:36 +08:00
Anas Nashif
e5f1b51f01 debug: fix RTT console Kconfig
Use HAS_ Kconfig option as intended, those are invisible option that
signify support of a certain feature that can be selected by a hardware
or platform.

For RTT and system view this was not dont in an inconsistent way.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-19 15:37:26 -04:00
Anas Nashif
8470b4d365 kernel: kconfig: reorg kernel Kconfig a bit
Move INIT_STACK to debug options and give POSIX layer its own menu.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-19 15:37:26 -04:00
Anas Nashif
ee9bebf7d0 kernel: smp: group SMP options in Kconfig file
Move SMP option together and align help text.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-19 15:37:26 -04:00
Anas Nashif
bb64ec2921 lib: move ring_buffer Kconfig to lib/, cleanup lib/Kconfig
* ring_bufffer is in lib, so move the Kconfig out of the kernel.
* move one Kconfig used for json to lib/Kconfig alongside other
  Kconfigs.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-03-19 15:37:26 -04:00
Jukka Rissanen
e4212306cd samples: net: eth_native_posix: Sample for native networking
This application just enables native host networking and net-shell
which allows connectivity from zephyr to host system via tap device.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-18 20:47:36 -04:00
Jukka Rissanen
0f66426f4a drivers: eth: Add ethernet driver for native posix arch
This creates zeth network interface in your host and allows user
to send and receive data sent to this network interface.

Fixes #6007

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-18 20:47:36 -04:00
Jukka Rissanen
b047f816f4 net: Create helper to convert MAC strings to array of bytes
As following commits need this functionality, create a function
which converts "01:02:ab:fe:34:dd" type hex strings to array of
bytes. Change the SLIP driver to use this new function.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-18 20:47:36 -04:00
Sebastian Bøe
46239ba512 kconfiglib: Update to fd21c5cb320b9
Update kconfiglib to revision fd21c5cb320b9 which can be found at
https://github.com/SebastianBoe/Kconfiglib

This allows us to eventually resolve some outstanding Kconfig issues
such as https://github.com/zephyrproject-rtos/zephyr/issues/4951

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-03-18 17:09:40 -04:00
Stig Bjørlykke
158adc684f net: sockets: Support MSG_DONTWAIT flag in zsock_recvfrom
Add support for MSG_DONTWAIT flag in recv and recvfrom.

This flag is needed when using non-zephyr embedded applications with
Zephyr's socket API.

Signed-off-by: Stig Bjørlykke <stig.bjorlykke@nordicsemi.no>
2018-03-18 17:06:38 -04:00
Ilya Tagunov
48a5fbcaa9 drivers: flash: stm32f0: remove CONFIG_FLASH_PAGE_SIZE
STM32F0 flash driver already uses FLASH_PAGE_SIZE from HAL
in flash layout part, so CONFIG_FLASH_PAGE_SIZE is redundant
and confusing.

Signed-off-by: Ilya Tagunov <tagunil@gmail.com>
2018-03-18 17:02:53 -04:00
Andy Ross
81242985c2 kernel/sched: Clean up docs for _pend_thread(), limit scope
The scheduler has a kernel-internal _pend_thread() utility which
sounds like a function which will add an arbitrary thread to a wait_q.
This is essentially unsupportable in SMP, where that thread might
actually be executing on a different CPU.

Thankfully we never used it like that.  The only spots outside the
scheduler that use the API are in pipes and mailbox, which both just
want to pend a DUMMY thread to track the timeout but will never try to
pend a true foreign thread.

Clarify the comment and add an assertion to make sure this promise
isn't broken in the future.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-03-18 16:58:12 -04:00
Andy Ross
345553b19b kernel/queue: Clean up scheduler API usage
This was the only spot where the scheduler-internal
_peek_first_pending_thread() API was used.  Given that this kind of
thing is inherently racy (it may not be pending as long as you expect
if a timeout expires, etc...), it would be nice to retire it.

And as it happens all the queue code was using it for was to detect
the case of a non-empty wait_q over which it was looping, which is
trivial to do without API support.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-03-18 16:58:12 -04:00