Commit graph

41120 commits

Author SHA1 Message Date
Piotr Zięcik
28576260c3 power: Remove sys_is_valid_power_state() interface
Each platform is now specifying list of supported power states
as a Kconfig options. Some of the specified states could be
disabled in runtime. As result there is no need for the removed
interface.

Signed-off-by: Piotr Zięcik <piotr.ziecik@nordicsemi.no>
2019-02-04 18:08:47 +01:00
Nicolas LANTZ
766101cf09 usb: netusb: Align NETUSB_MTU & wMaxSegmentSize and increase it to 1522
As rx_buf & tx_buf are defined with a NETUSB_MTU size, this cause
that the frames over 1500 bytes can not be received and are discarded.

Secondly, as fragmentation is not supported (for UDP and TCP datagram),
increase NETUSB_MTU to the maximum possible ethernet frame size :1522

Signed-off-by: Nicolas LANTZ <nicolas.lantz@ubicore.net>
2019-02-04 17:52:35 +01:00
Tomasz Bursztyka
968d423a44 net/pkt: Allocate relevant size on AF_UNSPEC
In case of Ethernet, if the requested size is larger than MTU and if
AF_UNSPEC is provided, the allocator will need to take into account
the ethernet header size which is not accounted in the MTU.

Other current L2 do not follow that rule as their MTU is based on IP
one (IPv6 most of the time). What they declare as MTU is the full frame
size they handle (minus the FCS for instance in 15.4). So with
AF_UNSPEC, such assumption on L2 header size is unrelevant.
(On 15.4 the header size is variable anyway and cannot be known until
the frame is parsed).

Fixes #12982

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2019-02-04 17:15:52 +02:00
Tomasz Bursztyka
522a4e86f3 net/context: Fix mutex unlock issues
2 unlock were missing, one in tcp and one in net_context.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2019-02-04 17:13:45 +02:00
Tomasz Bursztyka
212bcfb202 net/context: Lock/unlock mutex on new send/sendto functions
This was forgotten modification as commit 93e5181fbd came in master
though commit 0d519f7bcf was already written.

Thus fixing the missing lock/unlock.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2019-02-04 17:13:45 +02:00
Kumar Gala
2d90772244 sensor: lis2ds12: Fixup SPI CS handling
Replace undefined Kconfig SPI CS defines with DTS based defines.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-02-04 08:17:08 -06:00
Michael Scott
d646eff3d3 logging: introduce LOG_DISABLE_FANCY_OUTPUT_FORMATTING to save flash
The new Logger subsys uses a very robust formatter function in minimal
libc: _prf().  This adds up to ~3K flash.  For resource constrained
devices running samples that don't use the extra formatting options,
allow them to select LOG_DISABLE_FANCY_OUTPUT_FORMATTING to revert
back to vprintk.

MCUBOOT is one such sample that has a very limited amount of output
and benefits from the flash savings due to small bootloader partition
sizes.

Signed-off-by: Michael Scott <mike@foundries.io>
2019-02-04 08:04:38 -05:00
Anas Nashif
70e4c8346c flash_map: fix SPI_NOR DT label define
Label coming from DTS changed recently.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-02-04 08:00:30 -05:00
Anas Nashif
aecf90844c tests: intel_s1000: fixed test to use new DT defines
The label of this driver has changed recently.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-02-04 08:00:30 -05:00
Piotr Zięcik
fdb62f7565 power: Make power_state enum global
Currently each SoC has to define own list of power states.
However all these definitions have to be the same, as common power
management code uses them.

This commit replaces per-soc power state list by global definition.

Signed-off-by: Piotr Zięcik <piotr.ziecik@nordicsemi.no>
2019-02-04 13:36:29 +01:00
Kumar Gala
dee63e200c disk: sdhc: Convert to new DT_<COMPAT>_<INSTANCE> defines
Convert disk_access_sdhc  driver to use new defines so we can remove
the dts_fixup.h code for it.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-02-04 00:52:32 -05:00
Sathish Kuttan
b72f5fd033 drivers: i2s_cavs: fix for I2S start after stop
Fixed an issue I2S wouldn't resume when started after a stop
Added code to empty the TX/RX FIFOs upon stop
TX stop is achieved by letting FIFO underrun, then changing state in ISR
RX FIFO is read until empty when RX is stopped

Signed-off-by: Sathish Kuttan <sathish.k.kuttan@intel.com>
2019-02-04 00:52:15 -05:00
Sathish Kuttan
d835714de3 drivers: i2s_cavs: macros for object instantiation
Add macros to define and instantiate driver objects
for multiple instances

Signed-off-by: Sathish Kuttan <sathish.k.kuttan@intel.com>
2019-02-04 00:52:15 -05:00
Sathish Kuttan
6ff32c7877 drivers: i2s_cavs: reduce buffer queue length
Reduce the length of internal buffer queue from 4 down to 2.

Signed-off-by: Sathish Kuttan <sathish.k.kuttan@intel.com>
2019-02-04 00:52:15 -05:00
Sathish Kuttan
3ea0bf06f5 drivers: i2s_cavs: add transmit underrun status
Add the definition for transmit underrun indicator bit in
I2S status register.

Signed-off-by: Sathish Kuttan <sathish.k.kuttan@intel.com>
2019-02-04 00:52:15 -05:00
Sathish Kuttan
04e72b7dae soc: intel_s1000: Encoded IRQ definitions for I2S
Use IRQ encoding macro to define the IRQ identifiers for I2S

Signed-off-by: Sathish Kuttan <sathish.k.kuttan@intel.com>
2019-02-04 00:52:15 -05:00
Sathish Kuttan
22c217b7ba soc: intel_s1000: Macro to encode multi-level IRQ
Add Macro to encode multi-level aggregation of interrupts
into an encoded IRQ value

Signed-off-by: Sathish Kuttan <sathish.k.kuttan@intel.com>
2019-02-04 00:52:15 -05:00
Alberto Escolar Piedras
834b86f8d7 sanitycheck: coverage: Tolerate missing source files
When calling genhtml to generate a coverage report directly from
sanitycheck (-C option), call it with the "--ignore-errors source"
option, so it does not exit when it meets a missing file, but
instead it warns the user and continues.

Fixes #13014

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-02-03 15:28:53 -05:00
Alberto Escolar Piedras
c2699dd52d misc: assert_post_action: Treat POSIX arch like others
After #12732, 6904501173
asserts call k_panic.

Before this, the POSIX arch had its own hack in the
__ASSERT_POST implementation to terminate the process instead
of spining forever.

But the POSIX arch does implement k_panic properly, so there
is no need anymore for this hack.
=> Remove the special treatment for POSIX ARCH

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-02-03 10:28:51 -08:00
Alberto Escolar Piedras
1305a9eb35 arch: posix: Bugfix in POSIX cheats header
In 8dc69e09da (#10280)
the POSIX API main kconfig option was replaced from
PTHREAD_IPC to POSIX_API.
But the posix_cheats.h header was left using the old option.
This means that some applications/tests which were not
selecting the PTHREAD_IPC API, but using some other Zephyr
POSIX compatible APIs could have trouble when compiled for the
POSIX architecture.

Fixes #13011

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-02-03 13:16:30 -05:00
Alexander Wachter
be1c18d02c tests: drivers: Add basic tests for hwinfo_get_device_id API
This commit adds basic tests for device_uid_get API

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00
Alexander Wachter
841f72f81e drivers: hwinfo: add driver support for Nordic NRF device ID
Add driver support for Nordic NRF ID device.
This device has an ID of 8 bytes.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00
Alexander Wachter
8f3e6ab5d2 drivers: hwinfo: add driver support for STM32 device ID
Add driver support for STM32 ID device.
This device has an ID of 12 bytes.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00
Alexander Wachter
5b59c10fc4 drivers: Add hwinfo API
This commit adds a new hardware info API.
With this API it is possible to read out the device ID.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00
Alberto Escolar Piedras
73aaad3f36 doc: native_posix: Fix minor typo
Fix a minor typo in the documentation of native_posix

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-02-03 10:43:38 -05:00
Peter A. Bigot
2856d1e997 dts: intel_s1000_crb: put back block sizes
Somehow these were getting generated as `FLASH_foo_BLOCK_SIZE` even
though there's no specification for them in the original yaml.  Put them
back until we can figure out what's going on.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
2019-02-03 10:42:37 -05:00
Alberto Escolar Piedras
2cd70e6f1b coverage: Bugfix: Missing coverage in nrf52_bsim
In #9717, 777407b9ea
coverage support was broken for all NATIVE_APPLICATION except
native_posix
This includes the nrf52_bsim board
Fix it.

Fixes: #13009

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-02-03 10:42:24 -05:00
Krzysztof Chruscinski
6904501173 misc: Add k_panic on assert
Replaced forever loop in assert with call to a function.
In post_assert_action() function, k_panic is called.

Forever loop was preventing logs to be printed and had behavior
ependent on the context (low prioriy thread - system continue to
ork, irq - system is blocked).

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2019-02-02 15:58:33 -08:00
Vinayak Kariappa Chettimada
ff88b7f255 Bluetooth: controller: ULL/LLL: Fix compile error with PA/LNA
During regression testing of PA/LNA feature it was noticed
that compilation failed due to missing port of the code
conditionally compiled for PA/LNA feature.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2019-02-02 10:35:40 -05:00
Maureen Helm
987313e102 scripts: west: Update pyocd runner to use unified tool subcommands
pyocd 0.14.0 merged its command-line tools into a unified pyocd tool
with subcommands. The separate command-line tools still remain, but are
deprecated. Update the pyocd runner to use the new unified pyocd tool
with subcommands.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2019-02-02 10:32:30 -05:00
Erwan Gouriou
57889c6dab boards: disco_l475_iot1: Remove PA9 setting for USB
PA9 was set as OTG_5V_VBUS. This definition is not available
and not required so removing it.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-02 10:29:22 -05:00
Kumar Gala
06f5175760 boards: stm32: Cleanup/Fix USB Kconfig option
The disco_l475_iot1 board should be using CONFIG_USB_DC_STM32 as the
Kconfig sybmol.

Also fix a minor typo in a comment in nucleo_f207zg with regards to
CONFIG_USB_DC_STM32

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-02-02 10:29:22 -05:00
Andrzej Puzdrowski
563e9f6d0d doc: subsystem: nvs Added troubleshooting paragraph
Troubleshooting paragraph explains case when either
nvs API returns -ETIMEDOUT or MPU faults happens.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2019-02-02 10:28:46 -05:00
Aurelien Jarno
0b7e790250 display: ssd1673: add support for ssd16xx monochrome controllers
From the driver point of view, monochrome controllers from the ssd16xx
family mostly differ by the amount of row and columns that are
supported. If they support more than 256 rows and/or columns the
corresponding size or position is sent using 2 bytes instead of 1 byte.

This patch therefore adds the width-bits and height-bits DT properties
to make this configurable.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2019-02-02 10:28:11 -05:00
Aurelien Jarno
9f54c06eac display: ssd1673: replace hardcoded display dimensions by DT values
Instead of hardcoding multiple times the display dimensions, use the
values from DT. This still assume 8 rows per page and 8 pixels per
bytes, but that should always be the case for this controller and a
monochrome display.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2019-02-02 10:28:11 -05:00
Aurelien Jarno
0a0c5adde5 display: ssd1673: drop unused constants
Drop constants that are unused and hardcoded to the display dimensions.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2019-02-02 10:28:11 -05:00
Johann Fischer
9d0d5710d8 cfb: increase maximum resolution of the framebuffer
The maximum resolution of the character framebuffer
is far too low, use u16_t and increase it.

Signed-off-by: Johann Fischer <j.fischer@phytec.de>
2019-02-02 09:04:05 -05:00
Dominik Rekawek
499feaf50e lib: posix: fix build break due to size comparsion
In limits.h PATH_MAX is defined to same value as in nffs

Signed-off-by: Dominik Rekawek <dominik@itetech.pl>
2019-02-01 23:41:09 -05:00
Andy Ross
54dd1a3cf1 tests/threads/thread_apis: Add test for CPU mask API
Very simple test for thread CPU masks.  While this is a SMP feature,
the implementation doesn't actually depend on SMP so we can test it
right here in the thread_apis test.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-02-01 21:37:24 -05:00
Andy Ross
ab46b1b3c5 kernel/sched: CPU mask affinity/pinning API
This adds a simple implementation of SMP CPU affinity to Zephyr.  The
API is simple and doesn't try to invent abstractions like "cpu sets".
Each thread has an enable/disable flag associated with each CPU in the
system, and the bits can be turned on and off (for threads that are
not currently runnable, of course) using an easy three-function API.

Because the implementation picked requires enumerating runnable
threads in priority order looking for one that match the current CPU,
this is not a good fit for the SCALABLE or MULTIQ scheduler backends,
so it currently can be enabled only for SCHED_DUMB (which is the
default anyway).  Fancier algorithms do exist, but even the best of
them scale as O(N_CPUS), so aren't quite constant time and often
require significant memory overhead to keep separate lists for
different cpus/sets.

The intended use here is for apps that want to "pin" threads to
specific CPUs for latency control, or conversely to prevent certain
threads from taking time on specific CPUs to leave them free for fast
response.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-02-01 21:37:24 -05:00
Erwan Gouriou
54d27263fc tests: watchdog: Update test to support drivers with no callback
STM32 watchdog driver does not support callback which is not expected
by the test. Update to make test able to run on STM32 drivers.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-01 19:16:59 -05:00
Erwan Gouriou
8ce7921451 drivers/watchdog: stm32: Disable IWDG_STM32_START_AT_BOOT by default
STM32 specific behavior "IWDG_STM32_START_AT_BOOT" is enabled
by default. As all vendor specific behavior, this is preferred
to be disabled by default and activated at application level,
so application can have better control of the driver.
For instance watchdog test can't run with this setting.
Disable by default.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-01 19:16:59 -05:00
Erwan Gouriou
f3e5b6f5c8 boards: stm32: watchdog enable watchdog support with dt
Now that stm32 watchdog should be configured by device tree,
update dts file of boards declaring watchdog support.
Additionally update doc and yaml files.
Add support on some boards that were used to validate the driver
update:
- disco_l475_iot1
- nucleo_f207zg
- nucleo_f429zi
- nucleo_f746zg
- nucleo_f073rz


Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-01 19:16:59 -05:00
Erwan Gouriou
7ae381a808 drivers/watchdog: stm32: move driver to dts based configuration
STM32 watchdog driver is now configured from device tree settings.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-01 19:16:59 -05:00
Erwan Gouriou
12166b61ee dts: stm32: Add watchdog nodes to STM32 dtsi files
Provide watchdog node definition to stm32 dtsi files to enable
watchdog configuration by device tree.
Add matching st,stm32-watchdog binding.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-01 19:16:59 -05:00
Erwan Gouriou
1a05f2fae3 soc: stm32: Extended watchdog support to all series
STM32F2, STM32F7 and STM32L0 were missing wtachdog API support.
Fix this.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-01 19:16:59 -05:00
qianfan Zhao
634e482fe1 samples: watchdog: Remove stm32 iwdg sample
STM32 iwdg driver are convented to new API now, the old sample
are doesn't need again.

Signed-off-by: qianfan Zhao <qianfanguijin@163.com>
2019-02-01 19:16:59 -05:00
qianfan Zhao
107375da8d drivers: iwdg_stm32: Convent STM32 watchdong driver to new API
Fixes: #10917

Signed-off-by: qianfan Zhao <qianfanguijin@163.com>
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.com>
2019-02-01 19:16:59 -05:00
Maureen Helm
7801221868 boards: Add missing sdram dts compatible to mimxrt10{20,60,64} boards
The sdram memory node was missing a dts compatible on several imx rt
boards.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2019-02-01 19:16:04 -05:00
Daniel Leung
659c892b29 soc/intel_s1000: update DTS fixup due to CONFIG_SRAM_* changes
Commit ce7ed18989 moved CONFIG_SRAM_*
so dts_fixup.h needs to be updated for properly generated linker
script.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2019-02-01 19:14:29 -05:00