- 13 Nov, 2016 2 commits
-
-
Johan Hedberg authored
These should help to make it easier to understand code passing specific durations to the kernel APIs. Change-Id: I8682fafc291e8af56fd0289d0cab8c736b88da59 Signed-off-by:
Johan Hedberg <johan.hedberg@intel.com>
-
Anas Nashif authored
prio is member of base, not k_thread struct. Change-Id: I77de52497e196eb058bf8850e25eabe42cb2ab14 Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
- 12 Nov, 2016 14 commits
-
-
Benjamin Walsh authored
SYS_DLIST_FOR_EACH_NODE() is marked as non-safe when an item is removed from the list while looping over it. This is not true per-se, since the item, when removed, keeps its next and prev pointers intact; however, it is true if the item is then put into a list, be it a different one or the same one. To prevent this, SYS_DLIST_FOR_EACH_NODE_SAFE() must be used. _mbox_message_put() can remove items from the rx queue and then put them in the ready queue: this would cause the loop to start processing other ready threads as item in the rx queue. k_mbox_get() also removes items, from the tx queue, but does not seem to add them to another list; however, it now uses the safe version as well, since that is the proper usage. Change-Id: Ieccbff238fc8a036c0d53d873eaaf55f4f5a14af Signed-off-by:
Benjamin Walsh <benjamin.walsh@windriver.com> Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
Johan Hedberg authored
Switch left-over usage of TICKS_NONE and TICKS_UNLIMITED to the new unified kernel counterparts K_NO_WAIT and K_FOREVER. Change-Id: I2f2a16360e816f9f8791eb216deb3c70b8cc87df Signed-off-by:
Johan Hedberg <johan.hedberg@intel.com>
-
Johan Hedberg authored
The NBLE driver is now deprecated and will be removed in a future Zephyr version. Change-Id: I50753f8cf8566ac1e4e73df480c96253c199e6a7 Signed-off-by:
Johan Hedberg <johan.hedberg@intel.com>
-
Benjamin Walsh authored
There was a lot of duplication between architectures for the definition of threads and the "nanokernel" guts. These have been consolidated. Now, a common file kernel/unified/include/kernel_structs.h holds the common definitions. Architectures provide two files to complement it: kernel_arch_data.h and kernel_arch_func.h. The first one contains at least the struct _thread_arch and struct _kernel_arch data structures, as well as the struct _callee_saved and struct _caller_saved register layouts. The second file contains anything that needs what is provided by the common stuff in kernel_structs.h. Those two files are only meant to be included in kernel_structs.h in very specific locations. The thread data structure has been separated into three major parts: common struct _thread_base and struct k_thread, and arch-specific struct _thread_arch. The first and third ones are included in the second. The struct s_NANO data structure has been split into two: common struct _kernel and arch-specific struct _kernel_arch. The latter is included in the former. Offsets files have also changed: nano_offsets.h has been renamed kernel_offsets.h and is still included by the arch-specific offsets.c. Also, since the thread and kernel data structures are now made of sub-structures, offsets have to be added to make up the full offset. Some of these additions have been consolidated in shorter symbols, available from kernel/unified/include/offsets_short.h, which includes an arch-specific offsets_arch_short.h. Most of the code include offsets_short.h now instead of offsets.h. Change-Id: I084645cb7e6db8db69aeaaf162963fe157045d5a Signed-off-by:
Benjamin Walsh <benjamin.walsh@windriver.com>
-
Benjamin Walsh authored
This will allow making some arch-specfic parts arch-agnostic. Some definitions that are currently in arch/<arch>/include will end up in kernel/unified/include. Change-Id: I4df71090e20a5599e70fb578b36f9211411b56ad Signed-off-by:
Benjamin Walsh <benjamin.walsh@windriver.com>
-
Allan Stephens authored
The unified kernel is now the only supported kernel, so this option is unnessary. Eliminating this option also enables the removal of some legacy code that is no longer required. Change-Id: Ibfc339d643c8de16a2ed2009c9b468848b8b4972 Signed-off-by:
Allan Stephens <allan.stephens@windriver.com>
-
Johan Hedberg authored
Use k_current_get() instead of the deprecated sys_thread_self_get() API. Change-Id: I4ddb45f299373237690b2f4ca614e7fd3b6c0c36 Signed-off-by:
Johan Hedberg <johan.hedberg@intel.com>
-
Johan Hedberg authored
Fix compilation error when CONFIG_USB_UART_CONSOLE is not enabled: drivers/console/uart_console.c: In function 'uart_console_init': drivers/console/uart_console.c:497:12: error: unused variable 'dtr' [-Werror=unused-variable] uint32_t dtr = 0; Change-Id: I592724150f86199f6a57354c3246197db2ac7a01 Signed-off-by:
Johan Hedberg <johan.hedberg@intel.com>
-
Daniel Thompson authored
In addition to providing documentaton, we also modify the static_lib example to use outputexports instead of the double-include Makefile.toolchain trick. For this to work well we need to fix a tiny bug in the dependency handling in Makefile.inc. Change-Id: I6571bc681bc34155f37cff1eccc2ea12ed52ef07 Signed-off-by:
Daniel Thompson <daniel.thompson@linaro.org>
-
Jithu Joseph authored
Sample to show the USB UART console output. Jira : ZEP-775 Change-Id: I70220daf8e63a0847b10cc094665ef6a4bc38907 Signed-off-by:
Jithu Joseph <jithu.joseph@intel.com>
-
Jithu Joseph authored
Add support for console output via the USB UART. Note that console input via the USB UART doesnt work. Adds a simulated poll method for UART interface exposed by USB. Jira : ZEP-775 Change-Id: I357827ea52c027eb000baed80225f422df1f3358 Signed-off-by:
Jithu Joseph <jithu.joseph@intel.com>
-
Baohong Liu authored
Add spi flash erase boundary check. The erase boundary must be 4K-aligned. So, the flash chip will round down an non-4K aligned address to the nearest 4K boundary automatically. As a result of this, the erase area will start from a different address (if the API caller specifies an non-4K alighed address), even though the size of the erased area is the same as what is specified by the API caller. Let's add a boundary check to make sure the starting address (from the API caller) is 4K aligned. Correct an error in the highest address check. Because of the error, the erase api call will fail if the flash's highest address byte is involved. Jira: ZEP-1277 ZEP-1278 Change-Id: I8b6be57cc8f636f94e5fe67d5a492841a8555005 Signed-off-by:
Baohong Liu <baohong.liu@intel.com>
-
Jon Moeller authored
tests: power_states app updated to support SoCWatch collection Add CONFIG_SOC_WATCH option for enabling the SoCWatch QMSI driver and associated instrumentation hooks. Bug fix for soc_watch.c to use local irq_lock/unlock This will be put into QMSI as well. JIRA: ZEP-1121 Change-Id: I0514324e81ca02c1d01ffc2d6cf4d31aee491544 Signed-off-by:
Jon Moeller <jon.moeller@intel.com>
-
Anas Nashif authored
Right now the build system builds the host tools over and over again, in some environments especially when running in an IDE on windows for example, this is not desired and a set of pre-built host tools should be used. Provide an option to use pre-built tools instead of building them from source. To use, set PREBUILT_HOST_TOOLS to the path where all pre-built host tools are hosted. To get a prebuilt version of the host tools, build without the variable set and copy the generated host binaries from outdir. The following tools are supported: * conf * fixdep * gen_idt * gen_offset_header Jira: ZEP-237 Change-Id: Iea505bfd0b50f851ee2781b5117bb6085ab20157 Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
- 11 Nov, 2016 24 commits
-
-
Iván Briano authored
Add the device_ctrl hook to the ADC driver of the Sensor Subsystem, using the QMSI APIs to save and restore the driver's context. Jira: ZEP-667 Change-Id: I8b89a875d8185cc4db3c4bfc30ef0f39c6589df1 Signed-off-by:
Iván Briano <ivan.briano@intel.com>
-
JuanX Solano Menacho authored
This commit updates the spi_qmsi_ss driver by adding save/restore context functionality for power management, using the corresponsing QMSI APIs. Jira: ZEP-664 Change-Id: I9e62729f91c4808eb557d8a64c0f10955f5456f3 Signed-off-by:
JuanX Solano Menacho <juanx.solano.menacho@intel.com>
-
JuanX Solano Menacho authored
This commit updates the i2c_qmsi_ss driver by adding save/restore context functionality for power management, using the corresponsing QMSI APIs. Jira: ZEP-666 Change-Id: I36fb18b52edd4dac4c4b6cb98162adbca74800cb Signed-off-by:
JuanX Solano Menacho <juanx.solano.menacho@intel.com>
-
JuanX Solano Menacho authored
This commit updates the gpio_qmsi_ss driver by adding save/restore context functionality for power management, using the corresponsing QMSI APIs. Jira: ZEP-665 Change-Id: I5d8b6050f5b099678b7e6d9144907ea2ce2dda4b Signed-off-by:
JuanX Solano Menacho <juanx.solano.menacho@intel.com>
-
Allan Stephens authored
Addresses a range of issues affecting the Kernel Primer or the API Guide generated from doxygen tags. * Ensures mailbox examples use kernel APIs correctly. (Fix for ZEP-1262, as well as other errors). * Ensures memory alignment limitations for memory slabs are correctly described. (Fix for ZEP-1265.) * Ensures memory alignment limitations for memory pools are more clearly described. Also fixes a typo in a memory pool example. * Ensures memory alignment limitations for message queues are more clearly described. * Fixes references to a number of kernel configuration options that were omitted or incorrectly formatted. * Fixes a typo in an example of thread spawning. Change-Id: I395186f333490b1e0c4223b87c0fe7136548770f Signed-off-by:
Allan Stephens <allan.stephens@windriver.com>
-
Allan Stephens authored
Change-Id: I1e694dafc11f55ea4f944571ec960eee8189c703 Signed-off-by:
Allan Stephens <allan.stephens@windriver.com>
-
Allan Stephens authored
k_alert_init() needs to set the "flags" field of its associated work item to zero, indicating that the work item has not yet been submitted to the system workqueue. Using the standard work item initializer macro ensures this is done correctly. Change-Id: I0001a5920f20fb1d8dc182191e6a549c5bf89be5 Signed-off-by:
Allan Stephens <allan.stephens@windriver.com>
-
Anas Nashif authored
Ignore for now and until we make this feature of checkpatch work with zephyr in a more optimal way. Change-Id: I9d08980994416a291f3143e3a22f8a2036ff2f8a Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
Adam Podogrocki authored
Change-Id: I5c2de9d5814644855ed4a691fa1712ebd294ca64 Signed-off-by:
Adam Podogrocki <adam.podogrocki@rndity.com> Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
Anas Nashif authored
This test does not work for cortex-m0+ yet, so make it run only on m3/m4 for now. Change-Id: I0a90335d264cf88f3a62057860d6f129085c558f Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
Chuck Jordan authored
Regardless of the number of interrupt priorities supported, the exit of the trap handler can check AUX_IRQ_ACT to see if it interrupted a FIRQ or IRQ. Change-Id: I0b84d8298d3e6e437c934c01db4535fa8fe29458 Signed-off-by:
Chuck Jordan <cjordan@synopsys.com>
-
Anas Nashif authored
convert all sensor drivers to use threads and the unified kernel API and remove all legacy APIs. Change-Id: Ica43ea74ecbbf85273f718f182c413a9dcd8abc6 Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
Anas Nashif authored
move both semaphores and nano_work objects to unified kernel APIs. Change-Id: Icca8a091063544c451e47201cd8e956b95010513 Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-
Ramesh Thomas authored
Some arduino 101 boards have old boot loader without context restore boot flow feature. This handler will allow doing deep sleep in those boards by jumping to the context restore code. This will be disabled by default and can be optionally enabled by user. Jira: ZEP-1258 Change-Id: I92e70550fd92c1cac42b3039d667fb0be8cf5bce Signed-off-by:
Ramesh Thomas <ramesh.thomas@intel.com>
-
Ramesh Thomas authored
The API to disable _sys_soc_resume notification is currently called _sys_soc_disable_wake_event_notification. This is misleading because it is possible that the ISR from which _sys_soc_resume is called could be from a different interrupt with higher priority that happened before interrupts were enabled. More accurately, it is a notification of exit from kernel idling after pm operations. Jira: ZEP-1271 Change-Id: I83747f2cacac1bc17f135d12f4aa4478970fc02d Signed-off-by:
Ramesh Thomas <ramesh.thomas@intel.com>
-
Ramesh Thomas authored
Some bootloaders have power management support to restoer context upon resume from deep sleep. In such cases, the OS startup code should call the notification hook. Create Kconfig flags to configure this option. Jira: 1257 Change-Id: I9f40c5fa077c2f17dc8e9f11604c3ed17e549ed5 Signed-off-by:
Ramesh Thomas <ramesh.thomas@intel.com>
-
Ramesh Thomas authored
_sys_soc_resume hook is over loaded to handle to different scenarios. It is primarily called to notify exit of kernel idling after PM operations. It is also used to notify exit from deep sleep. This is very confusing and also makes the implementation of the hook function very difficult because of very different conditions involved in the 2 different use cases. Further, users may not require either or both use cases depending of their custom boot flow and power state handling. To simplify, create a separate hook for the purpose of deep sleep exit notification. Use the existing one to only notify kernel idling exit after PM operations. Jira: ZEP-1256 Change-Id: I96350199a0fd37f16590c8ee5302a94a3d71b8ba Signed-off-by:
Ramesh Thomas <ramesh.thomas@intel.com>
-
Vincenzo Frascino authored
Add board support for ARM V2M Beetle platform. ARM V2M Beetle board is build around the ARM Beetle Cortex-M3 based processor. The support has been tested in nanokernel mode with the bringup application that will be pushed with a future patch. Jira: ZEP-1245 Change-Id: Ib05a40c072f10149e692283177387cf2cfe32f66 Signed-off-by:
Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by:
Kumar Gala <kumar.gala@linaro.org>
-
Vincenzo Frascino authored
Add driver for CMSDK APB UART ports. The driver implements RX and TX functionalities. Data transmission is implemented using polling and interrupts. The driver default configuration for the port is to use 8bit data transmission, 1 stop bit, no parity control. The driver exposes a public uart driver API and allows to register up to five UART devices: from 'UART_0' to 'UART_4'. The driver performs the required pinmux, the clock control configuration is left to the platform. The driver has been verified to work with the Hello World sample application on a Beetle Board. Jira: ZEP-1245 Change-Id: I5baf78b7659aae2a574d8e66205e6fd5eb579133 Signed-off-by:
Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by:
Kumar Gala <kumar.gala@linaro.org>
-
Vincenzo Frascino authored
This patch adds the support for "runtime" pinmux on ARM V2M Beetle. The GPIO controllers 2 and 3 are reserved and therefore not exposed by this driver. Jira: ZEP-1245 Change-Id: I9637f1a0d2bf6a757e1942160fb170165ffe6a0c Signed-off-by:
Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by:
Kumar Gala <kumar.gala@linaro.org>
-
Vincenzo Frascino authored
This patch adds the support for the board pinmux initialization on ARM V2M Beetle. The GPIO controllers 2 and 3 are reserved and therefore neither exposed nor configured by this driver. Jira: ZEP-1245 Change-Id: Id5499c5dd887c319730408eeb30f02eeed1c3699 Signed-off-by:
Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by:
Kumar Gala <kumar.gala@linaro.org>
-
Vincenzo Frascino authored
The driver is currently used only by the ARM Beetle platform. Jira: ZEP-1245 Change-Id: I6611edd7486a3c6d82d66a9a96c5d4860dad1539 Signed-off-by:
Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by:
Kumar Gala <kumar.gala@linaro.org>
-
Vincenzo Frascino authored
Add SoC support for ARM Beetle platform. Beetle is an ARM Cortex-M3 based SoC used on ARM V2M Beetle Boards. https://www.arm.com/products/tools/development-boards/versatile-express/beetle_iot_evaluation_platform.php This patch contains: * The base SoC platform. * The clock_init functionality. * The system wide pin definitions. * The configuarion for the drivers at SoC level (IRQs, PINs and Base Addr). Jira: ZEP-1245 Change-Id: If15675935890711983e5ce37d49732b0462c3ec7 Signed-off-by:
Vincenzo Frascino <vincenzo.frascino@linaro.org> Signed-off-by:
Kumar Gala <kumar.gala@linaro.org>
-
Anas Nashif authored
This test is not a kernel object test and does not use any legacy kernel APIs, so declare it non-legacy. Change-Id: I430ac296334dbb8ff2b2d6576f7007a5dcc6f546 Signed-off-by:
Anas Nashif <anas.nashif@intel.com>
-