Commit graph

18576 commits

Author SHA1 Message Date
Gustavo Lima Chaves
1a8e72c913 loapic_intr: factor (out) APIC accesses in static functions
This will accomodate newer access models later, with variations of those
functions' contents.

Signed-off-by: Gustavo Lima Chaves <gustavo.lima.chaves@intel.com>
2017-11-07 08:58:49 -05:00
Gustavo Lima Chaves
c94760045f build: make kernel entry symbol a config option
This might change for different ports, so make it configurable.

Signed-off-by: Gustavo Lima Chaves <gustavo.lima.chaves@intel.com>
2017-11-07 08:58:49 -05:00
Gustavo Lima Chaves
ca3d51b5fa build: Only have MMU_BOOT_REGION decl. for HPET if the latter is on
This would impact builds with no CONFIG_HPET_TIMER=y set.

Signed-off-by: Gustavo Lima Chaves <gustavo.lima.chaves@intel.com>
2017-11-07 08:58:49 -05:00
Sahaj Sarup
b6c70fd331 samples: Basic Thread Demo
A basic demo to showcase multi-threading using K_THREAD_DEFINE

Signed-off-by: Sahaj Sarup <sahaj.sarup@linaro.org>
2017-11-07 08:28:32 -05:00
Andrew Boie
2d2a97b3f6 docs: initial user mode documentation
This initial batch of documentation describes policies and
mechanism related to kernel objects and system calls.

Some details on porting user mode to a new arch have been
provided in the architecture porting guide.

Thread documentation updated with some user mode consideration.

This is not the final documentation, more to come in subsequent
patches.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-11-07 08:18:48 -05:00
Jukka Rissanen
517caef5a4 net: pkt: Remove unnecessary error print in adjust_offset
The commit 971da9d0 ("net: pkt: adjust_offset: Simplify and optimize
code") changed the adjust_offset() function but left the error print
intact. This print is now invoked even if there is no error which
looks bad in debug prints.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-07 15:18:02 +02:00
Youvedeep Singh
833025dd94 timer: xtensa_sys_timer: Tickless Kernel Implementation for Xtensa
Implement Tickless Kernel support for Xtensa Architecture.

Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
2017-11-07 08:17:40 -05:00
Johan Hedberg
86c32aac1c Bluetooth: Kconfig: Introduce new BT_SCAN_WITH_IDENTITY option
Even with the privacy feature disabled, the stack has so far defaulted
to using an NRPA for active scanning, in order to protect privacy.
This is mainly because it is not always clear that scanning for other
devices may risk revealing the local identity.

There may however be use cases where such revealing is actively
desired, so introduce a new option for this (which defaults to
disabled).

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-07 14:14:17 +03:00
Loic Poulain
35d0592a39 usb: netusb: Change 'conf' to 'configured'
conf member represents the configuration state of the device.
Change its type from u8 to bool and clean related functions.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
3fc83fd180 usb: netusb: ecm: Make in_pkt static
This reassembly buffer is local.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
41891849c9 usb: netusb: remove ecm struct
Remove unused iface member and move out skip variable.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
c82d1446bd usb: netusb: Remove ecm_register_function
The only access to the function is now the function interface.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
5f1c6d0999 usb: netusb: Move endpoint specific config to function interface
netusb endpoint config is specific to the function (ECM, RNDIS, EEM..).
Move this config to the function interface.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
3c47817a98 usb: netusb: Abstract netusb function specific methods
Move class_handler and send_pkt to netusb function interface.
This makes netusb 'function' agnostic.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
3870fc5928 usb: netusb: Remove multi-function array
Today, we support/use only one USB configuration descriptor.
Moreover I assume multi-config support should be managed at
usb core level and not by each class driver.
Let's track one netusb function per netusb instance for now.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
0188881599 usb: netusb: Add netusb_recv method
This method can be use by netusb functions on pkt reception.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Loic Poulain
53d8389a6c usb: netusb: Remove eth_emu
Move network device creation/mgmt to netusb.
Add iface reference to netusb instance.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2017-11-07 11:17:16 +02:00
Tomasz Bursztyka
c968e102e6 net/ieee802154: Add a choice on which packet to print-out
All, RX only or TX only

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-11-06 21:01:35 +02:00
Tomasz Bursztyka
b181dc6791 net/ieee802154: Isolate packet display debugging option
Let's enable packet hex dump display without requiring the whole 15.4
stack debug option.

Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-11-06 21:01:35 +02:00
Aska Wu
a9b2d57664 tests: sockets: Check the value-result argument
The addrlen of accept() and recvfrom() should be updated to the actual
value of source address.

Signed-off-by: Aska Wu <aska.wu@linaro.org>
2017-11-06 20:59:05 +02:00
Aska Wu
62e5f8d7a1 net: socket: Handle the value-result argument
The addrlen of accept() and recvfrom() is a value-result argument. It
should be updated to the actual size of the source address after
calling accept() and recvfrom().

Signed-off-by: Aska Wu <aska.wu@linaro.org>
2017-11-06 20:59:05 +02:00
Robert Chou
3ad6719fbf net: lwm2m: response to peer with correct error code when write fail
Update the firmware update_result accordingly by checking return
value of the firmware data write callback registered by application.
Also, set response code according.

Signed-off-by: Robert Chou <robert.ch.chou@acer.com>
2017-11-06 20:49:59 +02:00
Robert Chou
d36b3251fa net: lwm2m: check engine context before accessing it
Signed-off-by: Robert Chou <robert.ch.chou@acer.com>
2017-11-06 20:49:31 +02:00
Ramakrishna Pallala
6ca3cc6fc4 lib: remove TinyCrypt Kconfig menu
Remove the TinyCrypt Kconfig menu as it is moved
under /ext/lib/crypto/

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
2017-11-06 13:38:58 -05:00
Johan Hedberg
a022e950b5 Revert "tests: mesh: Convert legacy test to use ztest"
This reverts commit b66a6acad7.

The mesh test app is (at least for now) only supposed to be manually
run. It e.g. contains special configurations for feature-specific
testing using the Bluetooth PTS.

The ztest conversion that was done to the app doesn't really make any
sense since nothing of essence is tested by the ztest hooks and
everything that the app intends to be tested need manual action either
way.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-06 13:22:24 -05:00
Bobby Noelte
007a6b0201 boards: arm: add support for NUCLEO-F091RC
Support the ST STM32 Nucleo-64 development board with
STM32F091RC SoC.

Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
2017-11-06 11:39:16 -06:00
Bobby Noelte
2ce56e0100 drivers: serial: provide support for stm32f091
Support the USARTs of the ST STM32F091xx SoC.

Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
2017-11-06 11:39:16 -06:00
Bobby Noelte
3849b36f09 arch: arm: soc: provide support for stm32f091
Support the ST STM32F091xC SoC.

Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
2017-11-06 11:39:16 -06:00
Jukka Rissanen
dd7b4bae28 net: tcp: Do not run expire function in ISR context
The expire function can call net_context_unref() which tries to
get a semaphore with K_FOREVER. This is not allowed in interrupt
context. To overcome this, run the expire functionality from
system work queue instead.

Fixes #4683

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 17:16:46 +02:00
Erwan Gouriou
a8fc84b7bb boards: add documentation for nucleo_f103rb
This commit provides the missing documentation for board
nucleo_f103rb

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2017-11-06 09:11:11 -06:00
Erwan Gouriou
84d2ba80f3 board: rename doc file for nucleo_f030r8
Due to copy paste issue, doc file for board nucleo_f030r8
had wrong file name.
Fix it with correct doc name

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2017-11-06 09:11:11 -06:00
Paul Sokolovsky
971da9d011 net: pkt: adjust_offset: Simplify and optimize code
An edge condition was handled in a special way, even though the main
condition covered it well. More code, more jumps == slower code,
bigger binaries.

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2017-11-06 17:03:48 +02:00
Jukka Rissanen
ae0f3d7224 net: https: mbedtls buffer length needs to be bigger for https
Mysterious TLS errors are printed if we try to work with too
small crypto buffer when https is enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 09:33:00 -05:00
Jukka Rissanen
6ddc85d522 samples: net: HTTP client sample using net-app
This is a sample HTTP client application that uses new http API
instead of legacy one.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 09:33:00 -05:00
Jukka Rissanen
5c9de9035d samples: net: HTTP server sample using net-app
This is a sample HTTP server application that uses new http API
instead of legacy one.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 09:33:00 -05:00
Jukka Rissanen
770de2c69a samples: net: http: Remove deprecated HTTP client/server samples
As the old HTTP API is deprecated, the old samples can be removed.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 09:33:00 -05:00
Jukka Rissanen
0a9ed4e12b net: http: Deprecate old HTTP library
The old HTTP server and client library code is deprecated. The
new HTTP library will be based on net-app API code which requires
changes to function names and parameters that are not compatible
with old library.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 09:33:00 -05:00
Jukka Rissanen
2486694eb9 net: http: Create HTTP library that uses net-app
Create http library that uses net-app instead of net_context
directly. The old HTTP API is deprecated.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2017-11-06 09:33:00 -05:00
Youvedeep Singh
3a179e29b0 samples: boards: nrf52: test demo for nrf52 power management
This sample tesecase provides sample code :-
1. Triggers Low Power tasks into nrf52 SOC (CONST LAT and LOW PWR)
2. Triggers System Off state.
3. Wake up device through port Event by GPIO (Button 1).

Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
2017-11-06 09:29:10 -05:00
Youvedeep Singh
fc78ddf7d3 ARM: nrf52: Power Management for nrf52 series SOC
Add support for nrf52 series SOC. This patch Adds :-
1. Architecture specific Power Management APIs.
2. APIs for invoking various Power Management tasks into nrf52.

Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
2017-11-06 09:29:10 -05:00
Youvedeep Singh
26de2ec1cb gpio: Add APIs for enabling/Disabling GPIOTE interrupts for nrf52 SOC.
Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
2017-11-06 09:29:10 -05:00
Youvedeep Singh
affbea7caf gpio: Add support for SENSE configuration for nrf SOC GPIO.
nrf SOCs are capable of waking from Low power state or
Deep Sleep state using sense configuration.
So adding support for this in nrf GPIO driver.

Jira: ZEP-2623

Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
2017-11-06 09:29:10 -05:00
Johan Hedberg
018198cedc net: buf: Add slist helpers
Now that net_buf has "native" support for sys_slist_t in the form of
the sys_snode_t member, there's a danger people will forget to clear
out buf->frags when getting buffers from a list directly with
sys_slist_get(). This is analogous to the reason why we have
net_buf_get/put APIs instead of using k_fifo_get/put.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-06 14:20:40 +02:00
Aska Wu
6bbb5f2094 net: tests: Add tests for net pkt address parsing
Add IPv6/TCP, IPv6/UDP, IPv4/TCP, IPv4/UDP address parsing test cases.

Signed-off-by: Aska Wu <aska.wu@linaro.org>
2017-11-06 14:09:46 +02:00
Aska Wu
1bdd80f8db net: context: Replace net pkt parsing by helper functions
The code parsing received net pkt to get source or destination
sockaddr repeats multiple times in net_context.c.

Eliminate the duplication by net_pkt_get_src_addr() and
net_pkt_get_dst_addr() which can handle different internet protocol
(i.e. ipv4 or ipv6) and transport protocol (i.e. tcp or udp)

Fixes: #4421

Signed-off-by: Aska Wu <aska.wu@linaro.org>
2017-11-06 14:09:46 +02:00
Aska Wu
2d7ff75f60 net: pkt: Add net_pkt_get_dst_addr()
Rename net_pkt_get_src_addr() to net_pkt_get_addr() and make it able to
handle source or destination address.

Signed-off-by: Aska Wu <aska.wu@linaro.org>
2017-11-06 14:09:46 +02:00
Johan Hedberg
e25d925242 Bluetooth: Defer RL update if there's an ongoing connection
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-06 12:50:40 +02:00
Johan Hedberg
56f79f817e Bluetooth: Add support for Link Layer Privacy
Add support for loading IRKs into the controller as well as the LE
Enhanced Connection Complete HCI event. To simplify things, the old LE
Connection Complete handler translates its event into the new enhanced
one which is then the single place of processing new connection
events.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-06 12:50:40 +02:00
Johan Hedberg
a74feaaf55 Bluetooth: Add missing HCI defines for LL privacy
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-06 12:50:40 +02:00
Johan Hedberg
7762578de4 Bluetooth: Simplify and clean up LE scan handling
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2017-11-06 12:50:40 +02:00