Commit graph

41120 commits

Author SHA1 Message Date
Andrew Boie
79215adceb list_gen: slist: mark some APIs are private
The new APIs added are used behind the scenes by list_gen.h
to abstract away details on how lists and nodes work.

Name them with z_ prefix as they are not intended for use
by applications.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-16 17:32:59 -07:00
Andrew Boie
577d5ddba4 userspace: fix kobj detection declared extern
If a variable is declared extern first, the name and type
information is stored in a special DW_DIE_variable which
is then referenced by the actual instances via the
tag DW_AT_specification.

We now place extern variable instances in an extern environment
and use this data to fetch the name/type of the instances,
which do not have it (which is why they were being skipped).

As it turns out, the gross hack for the system workqueue was
due to this problem because of the extern declaration in
kernel.h.

Fixes: #6992

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-16 17:00:27 -07:00
Leandro Pereira
ab16853b26 drivers: crypto: crypto_mtls_shim: Set output length for all operations
The out_len member in struct cipher_pkt was not set.

Fixes #4684.

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2018-05-16 23:30:11 +03:00
Leandro Pereira
e61c48123c drivers: crypto: crypto_tc_shim: Set output length for all operations
The out_len member in struct cipher_pkt was not set.

Fixes #4684.

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2018-05-16 23:30:11 +03:00
Leandro Pereira
9c113d29f5 samples: drivers: crypto: Print output length for all operations
Printing the output length for all encryption/decryption operation will
make it easier to know if a particular crypto driver shim provides this
information.  TinyCript and mbedTLS were not providing this, making the
out_len field useless.

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2018-05-16 23:30:11 +03:00
Ramakrishna Pallala
bcdfa76ff3 lib: posix: Fix pthread_attr_init() return code
pthread_attr_init() should not return EBUSY as per POSIX spec
so fixed this by return ENOMEM if the attr pointer is NULL.

Also fixed the attribute initialization logic by copying the
init_pthread_attrs to the attr.

Fixes Issue #7480

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2018-05-16 23:15:21 +03:00
Anas Nashif
103cbe8c90 boards: minnowboard: do not run net/bluetooth tests
This board does not support both bluetooth and networking, so skip those
tests for now.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-16 23:10:30 +03:00
Anas Nashif
ddc30c8e40 samples: leds_demo: depend on netif and gpio
Do not build on unrelated hardware.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-16 23:10:30 +03:00
Anas Nashif
2a892d5d6d doc: update mac instructions
Use sdn-ng scripts to build toolchain instead of repeating them here.

Fixes #6912

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-16 22:21:31 +03:00
Andrew Boie
0daf69bb57 xtensa: fix CONFIG_INIT_STACKS for IRQ stack
The interrupt stack area wasn't being set to a repeating
0xAA pattern at boot as it should be. This is now done in
kernel_arch_init(), which runs before interrupts are
enabled for the first time.

Fixes #7327

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-16 12:06:31 -07:00
Andrzej Puzdrowski
11c68a10f4 boards/arm/nrf52xx_boards: makes GPIO_AS_PINRESET common
Kconfig keyword GPIO_AS_PINRESET is common for whole nrf52 series.
This patch move it to the series Kconfig.soc file.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2018-05-16 11:10:52 -05:00
Andrzej Puzdrowski
a5c12b6c05 arch/arm/soc/nordic_nrf/nrf52: NFCT pins configuration
It is possible to use NFCT pins as regular GPIOs.
This patch introduce option for enabling this feature.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2018-05-16 11:10:52 -05:00
Thiago Silveira
05c45e359a drivers: serial: Fix race condition in nRF5 UART TX
Fix a somewhat rare race condition when the thread gets
preempted in the middle of sending a byte through UART.

If the other thread also sends another byte through UART
and "consumes" the EVENTS_TXDRDY value, the first thread
will get stuck in the while loop forever.

By moving the reset to the function start, we guarantee that
the baseline state of EVENTS_TXRDY is 1. Therefore, the first
thread will continue normally when it executes again.

Signed-off-by: Thiago Silveira <thiago@exati.com.br>
2018-05-16 18:10:03 +02:00
Johan Hedberg
cfb34d2b80 Bluetooth: Mesh: shell: Add persistent storage support
Add persistent storage support to the mesh shell module and app.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2018-05-16 18:41:23 +03:00
Anas Nashif
48cc46206f boards: frdm_kw41z: enable xoroshiro on board level only
Enabling the driver on board level is sufficient. We need to find a
better way for selecting random drivers on SoC level, this is currently
not possible due to how Kconfig works.

Fixes #7097

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-16 10:36:59 -05:00
Yannis Damigos
d8983e6d11 dts/st,stm32-usb: Add use-prop-name to disconnect-gpios
Add use-prop-name to disconnect-gpios property in st,stm32-usb
yaml, in order to generate friendly name for the definitions.

Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
2018-05-16 10:27:04 -05:00
Savinay Dharmappa
48e2dba28f dts: xtensa: fix build error.
patch fix the build error due to wrong assignment of macro in
the dts.fixup file

Signed-off-by: Savinay Dharmappa <savinay.dharmappa@intel.com>
2018-05-16 10:25:19 -05:00
Luiz Augusto von Dentz
4b4b6762aa Bluetooth: GATT: Fix documentation of bt_gatt_notify
Document the return value of bt_gatt_notify.

Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
2018-05-16 18:02:14 +03:00
Carles Cufi
5ebf1a2c14 samples: smp_svr: Add sample.yaml
Add a sample.yaml file for Nordic platforms (QEMU is not supported due
to the lack of flash partitions), both nRF51 and nRF52.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-16 17:01:52 +02:00
Carles Cufi
b2fa9ada5e samples: smp_svr: Rename conf file
Rename the conf file so that extensions is preserved correctly.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-16 17:01:52 +02:00
Carles Cufi
5b6fde144d boards: arm: nrf: Enable mcumgr UART
In order to run the Simple Management Protocol (SMP) over UART, a DTS
symbol named uart-mcumgr needs to be defined on the board. Enable this
for all Nordic Development Kits.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-16 17:01:52 +02:00
Johan Hedberg
a3c1b3dbcc Bluetooth: Mesh: Expose bt_mesh_is_provisioned() publicly
After introducing persistent storage, it's useful for an app to check
if the node has been provisioned or not.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2018-05-16 18:00:19 +03:00
Ravi kumar Veeramally
6cadd380b7 samples: net: Fix echo_server reply packet preparation
If the incoming packet fragments doesn't have any link layer
header then build_reply_pkt() will set reply packet fragment's link
layer header space to zero. Which is causing issue in case of IPv4.
ARP layer is trying to fill Ethernet headers, but fragments
ll header length is set to zero.

Just use net_pkt_copy_all() to copy payload. That should be enough.

Fixes #6564

Signed-off-by: Ravi kumar Veeramally <ravikumar.veeramally@linux.intel.com>
2018-05-16 16:40:27 +03:00
Tomasz Gorochowik
d6dfde36c4 net/ethernet: Fix mac address setting through ethernet mgmt
Attributes passed to memcpy were inverted so the mac was always getting
set to all zeroes.

Signed-off-by: Tomasz Gorochowik <tgorochowik@antmicro.com>
2018-05-16 16:22:38 +03:00
Tomasz Gorochowik
e2db76c9cc tests/net: Fix ethernet mgmt mac change test
The test checked if the change was reported as successful and it always
was.  What needs to be done is comparing whether the mac address was
actually changed to the requested one.

This commit adds this check.

Signed-off-by: Tomasz Gorochowik <tgorochowik@antmicro.com>
2018-05-16 16:22:38 +03:00
Luiz Augusto von Dentz
05148610a4 mgmt: Fix smp_bt.c build
BT_GATT_CHARACTERISTIC has been changed to include the attribute value.

Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
2018-05-16 15:42:38 +03:00
Vinayak Kariappa Chettimada
e2393a002e drivers: timer: nRFx: Remove redundant code
Remove redundant declaration of youve_print. This probably
had been a review oversight and upstreamed.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2018-05-16 10:16:29 +02:00
Paul Sokolovsky
092f716020 samples: sockets: dumb_http_server: Disable TIME_WAIT delay
This is required to test the server with ab (ApacheBench), which
itself is an important integration test for the IP stack.

Fixes: #7377

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2018-05-16 11:03:49 +03:00
Paul Sokolovsky
89f57c225a net: tcp: Define single config option for TIME_WAIT delay
Previously, there was a boolean CONFIG_NET_TCP_TIME_WAIT setting
("master switch") and numeric CONFIG_NET_TCP_2MSL_TIME setting,
both named not ideally (there were both NET_TCP_TIME_WAIT and
CONFIG_NET_TCP_TIME_WAIT symbols in the source, with very different
meaning; "2MSL_TIME" was also a roundabout way to refer to
TIME_WAIT state time). In addition to that, some code was defining
adhoc, hardcoded duplicates for these settings.

CONFIG_NET_TCP_2MSL_TIME was also measured in seconds, giving
poor precision control for this resource-tying setting.

Instead, replace them all with the single
CONFIG_NET_TCP_TIME_WAIT_DELAY setting, measured in milliseconds.
The value of 0 means that TIME_WAIT state is skipped.

Fixes: #7459

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2018-05-16 11:03:49 +03:00
Michael Scott
d07391d386 net: coap: clear more fields in coap_reply_clear()
We only clear 3 of the 6 member variables of the coap_reply structure
in coap_reply_clear().

Let's make sure to reset all of them.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:57:55 +03:00
Michael Scott
bb98d8766a net: coap: add COAP_INIT_ACK_TIMEOUT_MS setting
The base CoAP retry setting is quite fast for network technologies
such as LTE-M and LoRa.  Let's add an option to delay retries
a bit longer depending on the need.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:57:55 +03:00
Michael Scott
07ec5567fc net: lwm2m: remove unused OBJ_FIELD_MULTI_DATA macro
The use-case for this macro was removed during optional resource
changes.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
b6774f0eea net: lwm2m: mark OPTIONAL resources for IPSO Temperature
Using IPSO Smart Object Guideline: "Smart Objects Starter Pack 1.0"
dated May 27, 2017, let's mark the OPTIONAL resources for an
IPSO Temperature object (Section 10. "IPSO Object: Temperature").

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
a5bdbc1751 net: lwm2m: mark OPTIONAL resources for IPSO Light Control
Using IPSO Smart Object Guideline: "Smart Objects Starter Pack 1.0"
dated May 27, 2017, let's mark the OPTIONAL resources for an
IPSO Light Control object (Section 16. "IPSO Object: Light Control")

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
7a1024e5c8 net: lwm2m: mark OPTIONAL resources for LwM2M Firmware Update
Using OMA Technical Specification LwM2M Enabler 1.0.2 dated
Feb. 9, 2018, let's mark the OPTIONAL resources for an LwM2M
Firmware Update object (Section E.6 "LwM2M Object: Firmware
Update")

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
1290139626 net: lwm2m: mark OPTIONAL resources for LwM2M Device
Using OMA Technical Specification LwM2M Enabler 1.0.2 dated
Feb. 9, 2018, let's mark the OPTIONAL resources for an LwM2M
Device object (Section E.4 "LwM2M Object: Device")

As a result, the Device object no longer configures the default
buffers for data storage of several optional resources.
The LwM2M client sample is also changed to to setup these read-only
buffers instead.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
9506b427b7 net: lwm2m: mark OPTIONAL resources for LwM2M Server
Using OMA Technical Specification LwM2M Enabler 1.0.2 dated
Feb. 9, 2018, let's mark the OPTIONAL resources for an LwM2M
Server object (Section E.1 "LwM2M Object: Server")

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
4fb16db26d net: lwm2m: mark OPTIONAL resources for LwM2M Security
Using OMA Technical Specification LwM2M Enabler 1.0.2 dated
Feb. 9, 2018, let's mark the OPTIONAL resources for an LwM2M
Security object (Section E.1 "LwM2M Object: Security")

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
0d67f6a78d net: lwm2m: introduce FLAG_OPTIONAL to denote optional resources
This patch introduces several changes to support OPTIONAL resources.

The primary indicator for this behavior is to assign FLAG_OPTIONAL
to the object field's permission flags.

These resources are not setup by the LwM2M object code.  They are
left up to the user-based code for initialization via the following
functions:
lwm2m_engine_set_res_data()
lwm2m_engine_get_res_data()

When assigning const-based data as a data buffer, user-based code can
also specify the following data flag: LWM2M_RES_DATA_FLAG_RO

The FLAG_OPTIONAL flag also affects the LwM2M engine in the following
ways:
- CREATE operations won't generate an error if optional resources are
  not included.
- Object instance READ operations won't complain about missing
  optional resources.
- In the future, BOOTSTRAP operations can have different handling
  based on optional resources.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Michael Scott
0db9af5a28 net: lwm2m: return error from lwm2m_engine_get_* functions
In the future, we will have optional resources that may or may
not be assigned a buffer for data storage.  When these resources
are queried we need to be able to return an error code if the
buffer isn't set.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 10:56:07 +03:00
Jukka Rissanen
e50cacb356 net: app: Select proper source IPv4 address in client
Instead of selecting the first IPv4 address from the network
interface, use destination address to select the proper local IPv4
address.

Fixes #7500

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-05-16 10:47:01 +03:00
Michael Scott
8a21d3862b net: app: fix build warning in _net_app_ssl_mainloop()
Fix a build warning when compiling a net_app sample with
CONFIG_NET_APP_DTLS enabled by changing the print formatter from %zu
to %d.  It references the var hdr_len which is defined as an int:

In file included from include/net/net_core.h:78:0,
                 from subsys/net/lib/app/net_app.c:27:
subsys/net/lib/app/net_app.c: In function ‘_net_app_ssl_mainloop’:
include/logging/sys_log.h:96:20: warning: format ‘%zu’ expects
...
subsys/net/lib/app/net_app.c:2132:6: note: in expansion of macro
‘NET_ERR’
      NET_ERR("could not skip %zu bytes",
      ^~~~~~~

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
2018-05-16 09:16:35 +03:00
Stanislav Poboril
6871057e31 ext: Modified lpc54114 startup code from mcux for use with Zephyr.
The instructions performed by standard Zephyr startup files are removed
from the file startup_LPC54114_cm4.S. Introduced the section
_PlatformInit which will be called when platform specific initialization
is needed.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2018-05-15 15:49:15 -05:00
Stanislav Poboril
4dd8d68433 ext: Add dual core startup code for lpc54114 based on mcux 2.3.0
The new file startup_LPC54114_cm4.S is a copy of the file
devices/LPC54114/gcc/startup_LPC54114_cm4.S from mcux 2.3.0.
It contains platform specific initialization code for both cores.

Origin: NXP MCUXpresso SDK 2.3.0
URL: mcux.nxp.com
Maintained-by: External

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2018-05-15 15:49:15 -05:00
Kumar Gala
0f4a2b75ff board: lpcxpresso54114: Rename to lpcxpresso54114_m4
As part of the prep to support the M0+ core on lpcxpresso54114, we
rename the lpcxpresso54114 board port to lpcxpresso54114_m4 to be
explicit.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-05-15 15:49:15 -05:00
Stanislav Poboril
fd4759b5d7 arch: nxp: lpc54xxx: Rename SoC bits from LPC54114 to LPC54114_M4
Rename various SoC related defines and files from just being LPC54114
to LPC54114_M4.  This is in prep for supporting a build for the second
core on the LPC54114 (the Cortex-M0+).

* Renamed Kconfig SOC_LPC54114 to SOC_LPC54114_M4
* Renamed Kconfig.defconfig.lpc54114 to Kconfig.defconfig.lpc54114_m4
* Introduced nxp_lpc54xxx_m4.dtsi based on nxp_lpc54xxx.dtsi
* Moved some pinmux related defines into SoC code.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-05-15 15:49:15 -05:00
Stanislav Poboril
0b7e22bdb6 arch: arm: Add platform init hook at __start
Add the ability to call platform specific code as the first thing we do.
This is needed because on some platforms we might have to figure out how
to deal with starting up secondary cores and need to do that as the
first thing we do.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2018-05-15 15:49:15 -05:00
Stanislav Poboril
45cfea6f4a board: lpcxpresso54114: Move led and button definitions to dts
Moves the led and button definitions for the lpcxpresso54114 board from
board.h to dts.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2018-05-15 15:49:15 -05:00
Erwan Gouriou
49d820866c drivers/dma: dma_stm32f4x: check stream id boundaries
Check that stream Id passed to stm32 DMA API is within
possible stream values and return -EINVAL is invalid stream
id is passed.

fixes: #7380


Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-05-15 15:48:55 -05:00
Yannis Damigos
d3ea910293 boards/96b_carbon: Update doc with USB support
Add USB support in rst file.

Signed-off-by: Yannis Damigos <giannis.damigos@gmail.com>
2018-05-15 15:12:09 -05:00