Commit graph

41861 commits

Author SHA1 Message Date
Andreas Sandberg 69fac5c498 drivers: lora: Move board support to a separate file
The implementation of the board support routines is shared between all
LoRa drivers that use LoRaMAC-Node. Move them from the SX1276
implementation to a separate source file to facilitate reuse. Make
this source file conditional on CONFIG_HAS_SEMTECH_RADIO_DRIVERS since
it will be used by all LoRaMAC-Node-based drivers.

Signed-off-by: Andreas Sandberg <andreas@sandberg.pp.se>
2020-06-11 07:15:34 -04:00
Peter A. Bigot 4263276cd1 boards: particle_xenon: add support for second UART on feather header
Provide devicetree configuration for UART2 on the mesh feather header.
The peripheral must be enabled in an overlay, optionally including a
provided overlay with the hardware flow control signals.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
2020-06-11 07:14:10 -04:00
Jian Kang 445576c8a2 tests: kernel: Add a new test for providing time duration in milliseconds
Add a new test case to verify whether kernel allow proving time duration
in milliseconds.

Signed-off-by: Jian Kang <jianx.kang@intel.com>
2020-06-11 07:13:23 -04:00
Andy Liu 2175675199 drivers: serial: Fix "mcux_lpuart_irq_tx_complete" returns wrong result
Use "kLPUART_TransmissionCompleteFlag" instead of
"kLPUART_TxDataRegEmptyFlag" to check if the tx transmition is finished.

The "kLPUART_TxDataRegEmptyFlag" would give a wrong result
even if the transmition isn't over.

Signed-off-by: Andy Liu <andy@madmachine.io>
2020-06-11 11:00:53 +02:00
Dimitris Tassopoulos c2e9c1fa49 boards: nucleo_f401re: added pwm-led0
Added onboard led to the devicetree to be supported also with pwm-led0

Signed-off-by: Dimitris Tassopoulos <dimtass@gmail.com>
2020-06-11 10:58:58 +02:00
Robert Lubos 7f9b85e8c3 net: openthread: Fix u16_t usage
PR #25936 introduced u16_t type usage and was merged after the type
transition in Zephyr.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2020-06-10 19:24:20 -04:00
Andrew Boie 9ee56e7195 linker-defs: remove KEXEC_PGALIGN_PAD
This has been unused for ages, delete it.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2020-06-10 18:37:28 -04:00
Andrew Boie 038c9584b3 linker-defs: remove x86 code
This should never have been here. This is already specified
in x86's linker script anyway.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2020-06-10 18:37:28 -04:00
Andrew Boie 02df2a4f96 linker: un-abstract some definitions
These made sense before we had the common-rom/common-ram
files, as the same boilerplate was repeated for every arch's
linker script, but this is no longer necessary.

Move these inline for simplicity.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2020-06-10 18:37:28 -04:00
Andrew Boie bed6b6891d x86: report when thread re-use is detected
x86_64's __resume path 'poisons' the incoming thread's
saved RIP value with a special 0xB9 value, to catch
re-use of thread objects across CPUs in SMP. Add a check
and printout for this when handling fatal errors, and
treat as a kernel panic.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2020-06-10 18:36:06 -04:00
Maureen Helm 3dd3c6a393 drivers: i2c: Check non-null pointer before dereferencing in i2c shell
Fixes the i2c shell to check the device name pointer is non-null before
dereferencing it.

Coverity CID: 210558

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-06-10 18:33:42 -04:00
Jose Alberto Meza bd2a71f6da boards: arm: mchp: Configure VCI pins as GPIOs only when required
Default alternate function for the MEC15xx VCI pins makes them
HW-controlled.
Most common scenario is that pins are used as GPIOs, however
there are still some board designs where HW-controlled is desired.

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2020-06-10 18:32:57 -04:00
Jose Alberto Meza 65d93b4ed7 soc: arm: mchp: Allow to configure HW-controlled pins as GPIOs.
Introduce switch to allow board configuration for VCI pins to
remain HW-controled depending on the design.
Currently pins are always configured as GPIOs which is not always
desirable.

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2020-06-10 18:32:57 -04:00
Lukasz Majewski f8a9b5dac8 defconfig: Enable RMII_EXT_CLK on ip_k66f board
The embOS/IP switch board (ip_k66f) uses external clock (from KSZ8794
SoC) as a reference for its RMII.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 29696d5929 clk: ip_k66f: Fix ip_k66f to use 180MHz as a system clock
The ip_k66f board can run with clock frequency of 180 MHz. This requires
switching it to high speed mode (HSRUN).

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 27b4e63d4f clk: k6x: Enable High Speed RUN (HSRUN) mode for K66F SOC
The NXP's Kinetics K66F is able to run with max frequency of 180MHz.
To achieve this goal the SMC's PMPROT and PMCTRL registers need to be
adjusted.

On the contrary the K64F doesn't support HSRUN run mode.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski b25490d22b k6x: Kconfig: Add CONFIG_K6X_HSRUN option for K66F
This option enables support for High Speed RUN operation mode for
K66F. The K64F SoC doesn't support this mode.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski a341d4cd43 clk: k6x: Modify clock_init to enable external RMII clock source
This change enables the RMII external clock source at the clock
initialization function.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 43427c4d49 clk: eth: Add ETH_MCUX_RMII_EXT_CLK option to enable external RMII clock
This option will configure MCUX block (by setting RMIISRC [19] bit to 1
in SIM_SOPT2 register) to use external clock source for RMII from
ENET_1588_CLKIN).

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski a24f194a38 defconfig: ip_k66f: Set proper CONFIG_OSC_XTAL0_FREQ to 12MHz
The CONFIG_OSC_XTAL0_FREQ shall be defined only once, so remove
it from board specific defconfig.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 6016dad2e8 doc: Update ip_k66f documentation entry about serial console
This patch adds information regarding usage of serial console on
the ip_k66f board, as it only can use Segger's RTT console for
communication.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 2ce1d70be9 defconfig: Increase the size of RTT console "UP" buffer
This change allows usage of larger RTT "UP" buffers from target to host.
It is necessary to allow correct execution of ping command:

net ping 192.168.0.1

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 514ac98a81 Kconfig: Enable support for ETH on ip_k66f
Modify ip_k66f configuration files to support ETH.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 449c2f816b defconfig: Enable support for SPI on ip_k66f
Modify ip_k66f configuration files to support SPI.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 8fe5949eff ip_k66f: pinmux: Add support for PTE26 to work as clock source for RMII
Modify pinmux to properly configure ETH's clock source pin for RMII.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski e8daf767f7 ip_k66f: pinmux: Add pins configuration for SPI1
Modify pinmux to properly configure SPI1 pins.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 0c171306d3 ip_k66f: Kconfig: Enable PINMUX_MCUX_PORTB only when "spi1" label defined
The CONFIG_SPI_1 shall be replaced with condition based on presence of
device tree 'spi1' node label.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 4d7e386d4d ip_k66f: pinmux: eth: Add ETH support
Modify pinmux to properly configure ETH pins.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski f890a6d7fe dts: ip_k66f: Enable gpio{abe} on the ip_k66f board
Enable GPIOA, GPIOB and GPIOE in the device tree for ip_k66f.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski dd294873cb dts: ip_k66f: Enable spi1 on the ip_k66f board
Enable SPI1 in device tree for ip_k66f.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 0c9d92bcd1 dts: ip_k66f: Enable eth on the ip_k66f board
Enable ETH in device tree for ip_k66f.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Lukasz Majewski 3256005faf board: ip_k66f: Add support for RTT based console
The ip_k66f board (embOS/IP switch) from Segger doesn't have the serial
console pins connected to J-Link OB. As a result one needs to use RTT
to get the serial console.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-10 13:02:22 -05:00
Andreas Sandberg d5418d719e boards: arm: b_l072z_lrwan1: Fix incorrect EEPROM documentation
The documentation page in Zephyr states that the STM32L072CZ has 20KiB
of EEPROM. This is incorrect, the datasheet (and DTS) indicates that
it has 6KiB of EEPROM.

Signed-off-by: Andreas Sandberg <andreas@sandberg.pp.se>
2020-06-10 12:52:21 -05:00
Andreas Sandberg 3168d3aead boards: arm: b_l072z_lrwan1: Enable the EEPROM device
The STM32L072CZ has an EEPROM for user configuration. Enable this for
the B-L072Z-LRWAN1 Discovery kit.

Signed-off-by: Andreas Sandberg <andreas@sandberg.pp.se>
2020-06-10 12:52:21 -05:00
Ying ming 1b1d728a18 tests: atomic operation: add new test cases
add new test cases to illustrate the zephyr OS
support an array of atomic variables, each bit
of which can be modified.

Signed-off-by: Ying ming <mingx.ying@intel.com>
2020-06-10 10:46:28 -04:00
Francois Ramu 0856e99155 drivers: timer: stm32 lptim stops counting on timeout FOREVER
When setting a timeout K_TICKS_FOREVER,the lptimer clock is stopped
(no reset of the lptim).
Then is the lptim possibly re-started when another source asks for.
The lptim clock must then be re-started and continue counting.
This is the case when wakeup from sleep mode, for example.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2020-06-10 09:33:40 -05:00
Carles Cufi b9dcc9b283 doc: release: Clarifications to tagging
Clarify a few points in the tagging section of the release
documentation.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2020-06-10 16:23:23 +02:00
Carles Cufi 902633c545 doc: release: Fix the EXTRAVERSION setting
The EXTRAVERSION field needs to be set to an empty string, not to 0,
once the release is cut.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2020-06-10 16:23:23 +02:00
Marcin Niestroj 1502b9a648 lib: posix: eventfd: move intialization out of search loop
Search for unused eventfd object and just remember its instance in loop
body. Initialize object later, to make it distinct from "search
phase". This change is basically an improvement for readability.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2020-06-10 17:19:19 +03:00
Sturla Lange 31b19bf538 doc: contribution: Fix series-push-hook path
The script is located in the scripts directory, not root.

Signed-off-by: Sturla Lange <sturla22@gmail.com>
2020-06-10 05:20:54 -05:00
Peter Bigot d6a492d8f1 doc: guides: sanity_chk: add documentation on hardware map keyword
The probe_id keyword was added to support overriding the inferred id
when determining the board-id to use when flashing.  Document the
keyword.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-06-10 12:03:17 +02:00
Peter Bigot 3c36b42d03 sanitycheck: add notes key to schema
Prior to addition of schema validation running sanitycheck
--generate-hw-map would preserve the value of any field in an existing
map that it didn't update.  These fields now cause a parsing error.
Add notes as an optional key where information relevant to the board
can be added to provide useful context (such as which serial port
corresponds to the console, or why a non-standard runner is required).

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-06-10 12:03:17 +02:00
Peter Bigot 3cdd5b4be4 sanitycheck: add missing probe_id key to schema
probe_id is used as an optional key that overrides id as the source
of board_id when configured to use a runner that is not the default.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-06-10 12:03:17 +02:00
Peter Bigot fe74218956 sys: util.h: remove template implementation of ARRAY_SIZE
This was added because GNU G++ doesn't support the built-in function
used to produce a compile-time error when invalid parameters are
passed to the macro imlementation.  The template implementation does
not work on declarations like this:

  mytype array[] = { ... }

because it requires an explicit size for the template parameter.

Remove the template specialization, and support C++ with a version of
the macro that doesn't involve references to undefined builtins.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2020-06-10 12:02:45 +02:00
Krzysztof Chruscinski 727f8e0889 tests: unit: util: Add test for nested FOR_EACH call
Added test for case were FOR_EACH call is nested.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-06-10 11:58:13 +02:00
Krzysztof Chruscinski 1b4b9386e5 sys: util: Added separator to FOR_EACH_ macros
Added separator (e.g. comma or semicolon) parameter to FOR_EACH_ family.
Separator is added between macro execution for each argument and not at
the end.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-06-10 11:58:13 +02:00
Krzysztof Chruscinski 1089b91ba2 drivers: gpio: nrf: Add mask to track GPIOTE usage
So far, register state was used to determine if GPIOTE channel is busy.
This leads to issues if channel is used in more customized way after
allocation. In particular, if it temporarly disabled since disabled
channel is treated as available and can be allocated to another user.

Added additional mask which tracks allocated channels. After allocation
user can reconfigure the channel.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-06-10 11:57:45 +02:00
Krzysztof Chruscinski 77bc550746 tests: drivers: clock_control: nrf: increased LFCLK startup time
Fixed occasional test failures when clock was not ready after
specified time.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2020-06-10 11:57:04 +02:00
Francois Ramu 4a8fb854bb boards: arm: stm32f207 add rtc feature on the nucleo board
This patch enables the rtc so that the testcase
tests/drivers/counter/counter_basic_api
can run on this nucleo_stm32f207 board
also when running sanity check

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2020-06-10 09:40:21 +02:00
Francois Ramu 5debc6a94d soc: arm: stm32f2 add rtc feature on this serie
This patch enables the rtc on the stm32f2 soc series
from STMicroelectronics

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2020-06-10 09:40:21 +02:00