Commit graph

41120 commits

Author SHA1 Message Date
Ilya Tagunov
967c31bc07 drivers: serial: stm32: enable LBD only for UARTs with LIN support
LBD interrupt manupulation makes sense for UART with LIN support only.
Otherwise this bit should not be touched.

Signed-off-by: Ilya Tagunov <tagunil@gmail.com>
2018-05-25 11:54:42 -05:00
Ilya Tagunov
fd26514a4d drivers: serial: stm32: rework macros and fixups
STM32Lx LPUART peripherals do not fit well into existing U(S)ART
port numbering scheme, so there will be two separate namespaces
in Kconfig: one for U(S)ARTs and one for LPUARTs.

Signed-off-by: Ilya Tagunov <tagunil@gmail.com>
2018-05-25 11:54:42 -05:00
Ilya Tagunov
6632ffa60f drivers: serial: stm32: remove HAL driver legacy
Remove UART_HandleTypeDef instance, which is used
only to store baudrate value.

Signed-off-by: Ilya Tagunov <tagunil@gmail.com>
2018-05-25 11:54:42 -05:00
Ioannis Glaropoulos
24fcba44d3 arch: arm: remove redundant ifdef check
This commit removes a redundant #ifdef check for
CONFIG_CPU_CORTEX_M_HAS_BASEPRI, which is covered
CONFIG_CPU_CORTEX_M_HAS_PROGRAMMABLE_FAULT_PRIOS, present
in the same ifdef check.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-05-25 09:42:42 -07:00
Andy Ross
86b5364335 tests/kernel: Add preemption priority test
This test exaustively tests preemption points between threads of all
priority classes (cooperative, preemptible, and metairq), done both
from a synchronous reschedule (via k_sem_give() and from interrupt
context (via irq_offload()), and with and without the sched_lock()
held.  It then detects the next thread that runs and validates vs. the
documented priority rules.

Note that there is a whitelisted case on ARM, where irq_offload()
seems not to be working like a true interrupt (it always returns to
the interrupted context and doesn't seem to hit the normal exception
return path which can context switch).  And native_posix is excluded
because of failures and the fact that it's actually never possible to
truly preempt a thread there (they run to completion inside _Swap()
et. al. and then block themselves).  Both of these should be fixable
in the future but don't (seem to) directly relate to this test.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-05-25 09:40:55 -07:00
Andy Ross
3a0cb2d35d kernel: Remove legacy preemption checking
The metairq feature exposed the fact that all of our arch code (and a
few mistaken spots in the scheduler too) was trying to interpret
"preemptible" threads independently.

As of the scheduler rewrite, that logic is entirely within sched.c and
doing it externally is redundant.  And now that "cooperative" threads
can be preempted, it's wrong and produces test failures when used with
metairq threads.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-05-25 09:40:55 -07:00
Spoorthi K
21792fa020 tests: posix: timer: Fix integer handling issues
Fixes coverity issue and some cosmetic issues through uncrustify.

Fixes: GH-6667

Signed-off-by: Spoorthi K <spoorthi.k@intel.com>
2018-05-25 09:30:20 -07:00
Bobby Noelte
58967c7d3c scripts: extract_dts_includes.py: fix multiple include in bindings
Correctly process multiple include files given to the
!include command of the YAML loader.

The fix only targets the sequential definition of include files.

Fixes #7067

Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
2018-05-25 10:59:12 -05:00
Ulf Magnusson
b028a51542 boards: cc2650_sensortag: Remove TRNG and PINMUX prio Kconfig settings
As mentioned in
https://github.com/zephyrproject-rtos/zephyr/issues/7873, these Kconfig
symbols never existed. Remove the assignments to them.

Keep the dead code that's guarded by them for a while. I don't know if
this board is used.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 10:54:48 -05:00
Maureen Helm
7f4608cc61 gpio: Fix imx driver edge selection when configuring by port
Fixes a copy-paste error found by Coverity.

Coverity-CID: 186028

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2018-05-25 10:54:14 -05:00
Carles Cufi
a59f544fb4 bluetooth: controller: Handle non-priority events correctly
In certain cases the response to a command can come in the form of a
non-priority event. This is the case of LE Create Connection Cancel,
which generates a Command Complete and then an LE (Enh) Connection
Complete. Take this case (and other future ones) into account by calling
the correct Host recv function.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-25 17:25:41 +02:00
Ulf Magnusson
3c8e033e69 tests: net: all: Remove CONFIG_HTTP_HEADER_FIELD_ITEMS assignment
This symbol was removed by commit d1675bf3e6 ("net: http: Remove the
old legacy API").

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:21:01 -04:00
Ulf Magnusson
f6bdcb71ea tests: net: all: Fix assignments to old nbuf API Kconfig symbols
These symbols were renamed by commit bf964cdd4c ("net: Renaming net
nbuf API to net pkt API").

Update the assignments to use the new names.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:21:01 -04:00
Ulf Magnusson
7765813787 tests: net: all: Fix assignments to old TIME_WAIT Kconfig symbols
CONFIG_NET_TCP_{TIME_WAIT,2MSL_TIME} were replaced by
CONFIG_NET_TCP_TIME_WAIT_DELAY in commit 89f57c225a ("net:tcp: Define
single condig option for TIME_WAIT delay"), which also switched from
seconds to milliseconds for specifying the delay.

Remove the old assignments and set the new symbol to give the same
behavior as before.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:21:01 -04:00
Ulf Magnusson
637ad4cc49 tests: net: all: Remove redundant/misspelled NET_RPL assignments
CONFIG_NET_RPL_MC_ETX was misspelled as "..._EXT".

CONFIG_NET_RPL_MC_{NONE,EXT,ENERGY} are choice symbols. Setting a choice
symbol to 'y' implies that none of the other choice symbols are
selected, so remove the 'n' assignments and keep just the
CONFIG_NET_RPL_MC_ENERGY=y assignment.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:21:01 -04:00
Ulf Magnusson
2facf33f28 net: ieee802154: Remove old cc2520 AUTO_ACK assignments
CONFIG_IEEE802154_CC2520_AUTO_ACK started out as
CONFIG_TI_CC2520_AUTO_ACK, which was removed in commit 6b43821f20
("net: Remove legacy Contiki based uIP stack"). The assignments were
later renamed in commit 573774a9bf ("drivers/net/ieee802154: Change
configuration prefix").

Remove them.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:20:37 -04:00
Ulf Magnusson
31c5a83e7f samples: hci_uart: Remove NRF5 Kconfig baud rate setting
The UART_NRF5_BAUD_RATE Kconfig symbol was removed in commit
748f724d82 ("serial: dts: remove !HAS_DTS related Kconfig"). Looks
like this has been moved to DTS.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:19:59 -04:00
Ulf Magnusson
d96dbadd75 tests: adc_simple: Change ADC_DEBUG=y to SYS_LOG_ADC_LEVEL=4
The ADC_DEBUG Kconfig symbol was removed in commit a679f32920
("sys_log: replace old debug macros at ADC driver"), which introduced
SYS_LOG_ADC_LEVEL and switched to using SYS_LOG_DBG() for debug
messages.

Remove the ADC_DEBUG=y assignment and set SYS_LOG_ADC_LEVEL=4 so that
the debug messages still show up.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 11:19:34 -04:00
ruuddw
8364b223e4 Fix struct offsets (DWARF v2 compatibility)
For DWARF v2, DW_AT_data_member_location is encoded as a set of operations. The member_offset is in that case a list that starts with an operation (typically DW_OP_plus_uconst), so member_offset[0] is not the offset.

This solves the kernel/poll test (issue #7885)
2018-05-25 16:49:42 +02:00
Ioannis Glaropoulos
49f0dabfcc arch: arm: refactor default _FaultDump to provide fatal error code
Refactor the _FaultDump of the default debug-level (2) to
provide the error code that indicates the fatal error reason.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-05-25 09:46:24 -05:00
Ioannis Glaropoulos
d54dc42af9 arch: arm: refactor FAULT_DUMP to retrieve the fatal error reason
Refactor FAULT_DUMP macro to obtain and store the fatal error
reason. Make non-default version of FAULT_DUMP (i.e. with
CONFIG_FAULT_DUMP level 1) to retrieve the default reason
for fatal errors (_NANO_ERR_HW_EXCEPTION).

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-05-25 09:46:24 -05:00
Ioannis Glaropoulos
d2c8a20560 arch: arm: document non-returning fatal handlers
Document that execution does not return from
_NanoFatalErrorHandler and _SysFatalErrorHandler.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-05-25 09:46:24 -05:00
Ioannis Glaropoulos
e8182fa03d test: kernel: remove workaround for arm_mpu (keep for nxp_mpu)
The generation of Stack Corruptions reports is, now, supported
in ARM SOCs with the ARM MPU (CONFIG_ARM_MPU). Therefore, this
commit removes the workaround for ARM architecture in
tests/kernel/fatal/ and keeps it only for SOCs with the NXP MPU
(CONFIG_MXU_MPU).

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2018-05-25 09:46:24 -05:00
Ulf Magnusson
65e79fd5c2 boards: exp432p401r_launchxl: Remove Flash base address Kconfig setting
Supposed to come from DTS. The Kconfig symbol was removed in commit
311e6b9e3e ("arch: arc: Use DTS for all ARC SoCs").

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 09:45:18 -05:00
Ulf Magnusson
f3f767a2ae tests: power: multicore: Remove CONFIG_UART_{0,1}=n assignments
No such generic UART symbols ever existed, afaict. Maybe some
board-specific UART was meant to be disabled.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-25 09:13:20 -05:00
Wayne Ren
876a9af9d5 arch: arc: fix the bug in register clear for USER_SPACE
* blink, fp should not be always cleared
* clean up code format
* use a better way to save and restore ER_SEC_STAT

Signed-off-by: Wayne Ren <wei.ren@synopsys.com>
2018-05-25 15:56:15 +02:00
Wayne Ren
77eb883ab0 arch: arc: fix the bug in exception return for secure mode
* current codes use a faked interrupt return to do a thread switch
  in exception return.
* so the different between exception return and interrupt return
  should be carefully considered.
* when secure is enabled, the sec_stat should also be pushed in
  exception entry.
* when secure is enabled, SEC_STAT.IRM must be configured corrrectly
  for interrupt return.
* For the case of faked interrupt return in exception return, the
  correct value of SEC_STAT.IRM comes from ER_SEC_STAT.ERM.

Signed-off-by: Wayne Ren <wei.ren@synopsys.com>
2018-05-25 15:56:15 +02:00
Kumar Gala
f245ef2aeb drivers: i2s: i2s_cavs: Fix typo in IRQ priority
The driver was using CONFIG_I2S_1_IRQ_PRI which doesn't exist.  It
should use CONFIG_I2S_CAVS_1_IRQ_PRI.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-05-25 08:04:47 -05:00
Kumar Gala
b0e697cc43 subsys: usb: Remove undefined CONFIG_USB_DEVICE_HID_BOOTP
The Kconfig symbol CONFIG_USB_DEVICE_HID_BOOTP isn't defined anywhere,
so remove dead code associated with it.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-05-25 08:04:36 -05:00
Kumar Gala
23bf9426ad drivers: serial: uart_fe310: Match Kconfig defines in comment
The trailing #endif comments used CONFIG_FE310_UART_{0,1} and they
should be CONFIG_UART_FE310_PORT_{0,1}.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-05-25 08:04:16 -05:00
Johann Fischer
c5cfb462f9 net: rpl: fix null pointer dereference
This patch fixes possible null pointer dereference in
net_stats_update_rpl_resets(...).

net_rpl_set_root_with_version(...) does not initialize instance->iface
and calls net_rpl_reset_dio_timer(...), which then calls
net_stats_update_rpl_resets(instance->iface).

fixes: #7862

Signed-off-by: Johann Fischer <j.fischer@phytec.de>
2018-05-25 09:03:34 -04:00
Johan Hedberg
c4b0f1c5b4 Bluetooth: Mesh: Fix build error when LPN is not enabled
Some versions of gcc do not seem to compile out the inaccessible code
in this case and instead give the following error:

subsys/bluetooth/host/mesh/transport.c:419: undefined reference to
`bt_mesh_lpn_poll'

This happens at least when building samples/bluetooth/mesh for
native_posix on Fedora 28.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2018-05-25 10:53:46 +03:00
Kumar Gala
8e41572774 drivers: spi: remove dead references to CONFIG_SPI_QMSI{_SS}
During the spi rework we removed the qmsi spi drivers so we no longer
have Kconfig symbols or drivers related to CONFIG_SPI_QMSI{_SS}.  There
are a few references still around that we should remove

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-05-24 21:09:32 -04:00
Andrew Boie
6f6acb4667 arm_mpu: reduce boot MPU regions for various soc
The PPB, Peripheral, and any other I/O regions have been
removed, the Shareable options are only important with
unlocked dual cores. Just use the background mapping,
which is RWX for supervisor and no access for user mode.

The flash region needs to be kept to indicate read-only
policy. The RAM regions need to be kept to disable execution.

Fixes #6896

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-24 19:19:07 -04:00
Andrew Boie
d9a227c19c arm: st_stm32: reduce boot MPU regions
The PPB and Peripheral regions have been removed,
the Shareable options are only important with unlocked
dual cores. Just use the background mapping.

The flash region needs to be kept to indicate read-only
policy. The RAM regions need to be kept to disable execution.

Related to #6896 and #7877

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-24 15:31:00 -07:00
Carles Cufi
6f534e4551 drivers: entropy: nrf5: Implement standard ISR-specific call
Implement the new entropy_get_entropy_isr() function to allow the kernel
to collect entropy before the scheduler and kernel data structures are
ready. Switch to an nrf-specific version for high-performance
requirements in the BLE Link Layer.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-24 15:13:13 -07:00
Carles Cufi
b54644913d kernel: Use IS-specific entropy function when available
During the early boot process, in prepare_multithreading(), the kernel
structures and scheduler are not ready yet. In order to obtain entropy
for early works such as stack randomization, optionally use when present
the ISR-specific function that some drivers will provide.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-24 15:13:13 -07:00
Carles Cufi
668e31f7db drivers: entropy: Introduce ISR-specific entropy function
In order to address the requirements of the kernel boot process, an
optional ISR-specific function is declared to allow entropy collection
outside of thread mode and without using any kernel primitives. It also
includes a parameter to optionally busy-wait for hardware entropy
generation.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-24 15:13:13 -07:00
Andrew Boie
29599f6d80 sanitycheck: deprecate assertion options
This is now done directly in Kconfig for tests.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-24 15:12:56 -07:00
Andrew Boie
bc40f9340d debug: enable assertions for all tests
This keeps biting us; sanitycheck turns on assertions by
default for tests, but standalone builds, or builds done
for other test infrastructure do not. Put all builds in
the same state.

Specific tests (such as benchmarks) can override this with
CONFIG_FORCE_NO_ASSERT.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-24 15:12:56 -07:00
Andrew Boie
411686f02b build: suppress asserts warning if forced off
This was being incorrectly printed.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-24 15:12:56 -07:00
Andrew Boie
dda7befdba tests: benchmarks: force assertions off
These would interfere with size/footprint data.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-05-24 15:12:56 -07:00
Punit Vara
843ad8b07e tests: semaphore: Check return value
Check return value for pthread_create()

issue: #6701

Signed-off-by: Punit Vara <punit.vara@intel.com>
2018-05-24 14:25:25 -07:00
Carles Cufi
a06b14f29b scripts: check-compliance: Allow to run from any path
Allow check-compliance.py to be run from any path with a valid Git tree,
removing the unnecessary and artificial limitation imposed in the case
of gitlint.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-05-24 16:57:24 -04:00
Anas Nashif
333a315f7b sanitycheck: improve help message
Aply some feedback to the help messages of sanitycheck.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-24 16:55:55 -04:00
Anas Nashif
1c7ba097b5 sanitycheck: document --device-testing feature
Document testing on hardware using sanitycheck.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-24 16:55:55 -04:00
Anas Nashif
0a9a505e73 sanitycheck: update script arguments
Update sanitycheck script arguments with latest commands.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-24 16:55:55 -04:00
David B. Kinder
11c6306f76 doc: tweak CSS for option table display
Noticed in docs.zephyrproject.org/subsystems/test/sanitycheck.html that
the first column of the option table display is too narrow (for short
option names that are shown on the same line as the description).  This
PR tweaks the CSS to widen the first column enough to stop wrapping in
most cases.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-05-24 16:15:24 -04:00
Ulf Magnusson
45221a9706 serial: nsim: Fix impossible-to-enable CONFIG_UART_NSIM
CONFIG_UART_NSIM depends on CONFIG_NSIM, which was removed in commit
9bc69a46fa ("boards: Update arc em_starterkit support from 2.2 to
2.3"). Remove the dependency, and also remove the CONFIG_NSIM=y setting
from the test_nsim test (which should now work).

Also change the condition for EXTERN()ing _VectorTable in
include/arch/arc/v2/linker.ld to check CONFIG_UART_NSIM instead of
CONFIG_NSIM. I'm guessing the EXTERN() is there to make the symbol
visible to nSIM, though I don't know anything about it.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-05-24 13:09:28 -04:00
Leandro Pereira
a85c546203 boards: x86: minnowboard: Unset CONFIG_X86_NO_SPECTRE_V4 by default
According to INTEL-SA-00115[1], Intel(r) Atom(tm) Processor E Series
are affected.  All Minnowboards sports one of these processors.

[1]: https://goo.gl/CKyLQy

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2018-05-24 13:07:12 -04:00