Commit Graph

30 Commits

Author SHA1 Message Date
Allan Stephens 07646ce038 Revise dependencies for timer-related configuration options
Revises the relationships between several configuration options
to support a tickless kernel capabilty. Specifically:

1) SYS_CLOCK_TICKS_PER_SEC is now always defined, so that it can
be referenced by TICKLESS_KERNEL. However, SYS_CLOCK_TICKS_PER_SEC
is forced to 0 when there is no timer interrupt support.

2) NUM_TIMER_PACKETS is now forced to 0 in a microkernel system
when TICKLESS_KERNEL is enabled.

3) TIMESLICING is now disabled when TICKLESS_KERNEL is enabled.

Change-Id: Ie8bf58e7828069afe68ae9451ffbf9bc220ea35f
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:49 -05:00
Allan Stephens 9a8b13974e Define TICKLESS_KERNEL configuration option
Introduces the TICKLESS_KERNEL configuration option, which indicates
that the kernel does not support timing capabilities. This option is
enabled automatically if the system tick rate is set to zero ticks
per second.

Change-Id: I20e6eb23465baf5f79055c7ff8979537b85dcc06
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:49 -05:00
Allan Stephens bb9e641da0 Remove VXLITE references from build system
Not related to the LITE support in the kernel, that VXLITE
variable was provisioned for a potential other name for
VxMicro, and was never used.

Change-Id: I23ce1fda1064141ab7e7e75fa2b2a12b9361d624
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:49 -05:00
Peter Mitsis bf2e1d3017 Remove remaining references to NLI
NLI files are not supported.

Change-Id: Id9bb1b083051e8ed65b854b4293f2848a46b1589
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Peter Mitsis 07384d63d8 build: Do not generate the nli/config1p.nli file
NLI files are not needed anymore since a) the new sysgen does not make
use of them and b) what NLI files were providing is now kconfig-driven.

Change-Id: I8520b6214a7d47e5bc41e9a108d4786c8f2f6f04
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Peter Mitsis ce387b738e build: remove leftover commands for invoking host server
iWINECONSOLE and iWINEHOSTSERVER were used to point to the Wine commands
used to start the host server and the host server console: both Wine and
host server are now irrelevant.

Change-Id: Ia8e3e240553fcde11d0b6e46cfee51913a6f5d1a
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Peter Mitsis 2010da4176 build: Remove SECTION_GARBAGE_COLLECTION kconfig option
The SECTION_GARBAGE_COLLECTION kconfig option is no longer used.

Change-Id: Ie45694b4fbe9e6b5491ffd9eb102c4a5e9717e69
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Peter Mitsis 743ff6a74e build: Always enable section garbage collection flags
Enables the section garbage collection compiler flags regardless of the
state of the SECTION_GARBAGE_COLLECTION kconfig option.

Change-Id: Iad488b3ca4ee0a80898f83809e4c615efcdbd03f
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Allan Stephens c8c5ae8f7f Reduce default number of task priorities to 16
Lowers the default value for the NUM_TASK_PRIORITIES configuration
option to 16, as typical system are unlikely to need 64 different
task priorities.

Change-Id: I6d7baa5671628815ab1953dcb0b8266f28df3014
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:48 -05:00
Allan Stephens 1c32b5d720 Introduce NUM_TASK_PRIORITIES configuration option
Allows the number of task priority levels supported by the micro-
kernel to be configured, rather than fixing this value at 64.
Setting NUM_TASK_PRIORITIES to N provides support for task
priorities 0 (highest priority) through N-1 (lowest priority).
The lowest priority is reserved for the kernel's idle task.

This enhancement allows system designers to significantly reduce
the size of the microkernel's task priority queues by eliminating
unneeded queues. In systems requiring only a few task priorities
over 500 bytes can be saved.

Change-Id: I497aac608a3d548fb1b024068c08a5f494c3d524
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:48 -05:00
Peter Mitsis 59cc26eb84 Remove Simics references from build system
Simics is not supported.

Change-Id: I73e791a75f6f6086669841dca2e8cf40e36dbbd2
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Peter Mitsis e46562016e Cosmetic: Fixed leading spaces in kconf file
Makes the leading spaces in the 'help' section of CPU_CLOCK_FREQ_MHZ
consistent with that of other kconfig options.

Change-Id: I5e6dcc710cb8e2099f986dc1ce2a4d72a4350466
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:13:48 -05:00
Dan Kalowsky bae67b2b58 Renaming _SysPowerSaveIdle to _sys_power_save_idle
Updating micro kernel functions to follow a consistent naming convention.
Part of that process is the removal of camelCase naming conventions for the
preferred_underscore_method.

Change accomplished with the following script:

#!/bin/bash
echo "Checking C, CPP, H, HPP, and s files..."
find . -type f \( -iname \*.[ch] -o -iname \*.[ch]pp -o -iname \*.s \) \
       -not \( -path host/src/genIdt -prune \) \
       -not \( -path host/src/gen_tables -prune \) \
       -print | xargs sed -i "s/"${1}"/"${2}"/g"


echo "Checking KCONF, LST, and PY files..."
find . -type f \( -iname \*.lst -o -iname \*.kconf -o -iname \*.py \) \
       -not \( -path host/src/genIdt -prune \) \
       -not \( -path host/src/gen_tables -prune \) \
       -print | xargs sed -i "s/"${1}"/"${2}"/g"

Change-Id: I2cf754540cdca1b107898241d8016613711f677b
Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-05 20:13:47 -05:00
Benjamin Walsh e1308ebd37 arm: enable SW_ISR_TABLE/DYNAMIC by default
Enable by default the easy usage of connecting interrupts. If someone
wants to connect interrupts by hardcoding the ISR in the vector table,
they now have to disable these two options.

Change-Id: I5fd14784596e7c52d3c43fddc4fcb51bc8850db3
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-05 20:13:45 -05:00
Allan Stephens 069ff41d01 Cleanup of GDB_INFO configuration option
1) Relocates the GDB_INFO configuration option so that it appears
in the same menu as other debugging options.

2) Revises the prompt and help text to better describe the option's
purpose and impacts.

3) Corrects an inverted depency relationship; selecting this option
now automatically enables CONTEXT_MONITOR, rather than being dependent
upon it.

Change-Id: Ib5e7e3a594e7190972fa22fd0287694ae5acd917
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:45 -05:00
Allan Stephens c7661eb981 Transform HOST_TOOLS_SUPPORT config option to CONTEXT_MONITOR
Revises this option to make its purpose clearer, and to align it
with other experimantal monitoring-type configuration options.

Change-Id: I593bb7560b5a0544eb05affaa07b59dd78ea907e
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:45 -05:00
Johan Hedberg 2581ad9313 Bluetooth: Add HCI UART (H4) driver
This patch adds a simple HCI UART (H4) driver that currently maps to
the second UART in the system. The main intention is to use this
together with qemu for accessing the Bluetooth controller available on
the host OS side.

The H4 HCI transport protocol is perhaps the simplest of the standard
HCI transports. It consists of a single byte in the beginning of each
packet which indicates the type of the packet: HCI event, HCI command,
ACL data, or SCO data (which we don't use at the moment).

Change-Id: I225a2a2361fbd7cd4ba82ea1f81ddc1271e9e7c2
Co-authored-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-05 20:13:44 -05:00
Johan Hedberg ac63429177 Bluetooth: Add skeleton for HCI core
To introduce the Bluetooth stack to the tree we need some additions to
the configuration options, as well as the very basic header files. The
patch also adds a skeleton for a bt_init() function that applications
will need to call to initialize Bluetooth functionality.

Change-Id: Ideb24dfea584b71f514e05eb47654b659776133e
Co-authored-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-05 20:13:44 -05:00
Inaky Perez-Gonzalez 9343cc7ca0 qemu: use a pidfile to avoid killing all and thus enabling parallel runs
When killing QEMU, we defaulted to either killall or find the first
qemu process. This intefered with parallel builds, as we might kill
some other build's qemu process.

This makes QEMU write a pidfile in the local outdir directory and kill
only that when done.

Change-Id: I498b1e0833fcda9a7bd50111616dfba015e566bd
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2016-02-05 20:13:42 -05:00
Peter Mitsis bd969c97cc Remove k_boot.h and flashboot.c
The files k_boot.h and flashboot.c are obsolete.

Change-Id: Ieab69e714462079c2a836dacb7c5bab53d2e3b2b
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-05 20:13:41 -05:00
Andrei Emeltchenko 0f86fd19f2 uart: Rename INTERRUPT_DRIVEN configuration option
Rename UART_HOSTDRV_INTERRUPT_DRIVEN option to
UART_INTERRUPT_DRIVEN removing old definition.

Change-Id: Id48288db42e97a1ecbd809e259f33359d5a7c9d7
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:13:41 -05:00
Andrei Emeltchenko 139c856403 Add serial console input handler
Serial console handler when registered allows to interact with serial
line. It can either execute callback from ISR or defer execution to
fiber or task. This will be used in Bluetooth development for tests and
simple interaction with Bluetooth stack.

Change-Id: Ia960b456a75062d614baea324608058d979aa11b
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:13:41 -05:00
Andrei Emeltchenko cb764c5bc1 Add UART_HOSTDRV_INTERRUPT_DRIVEN configure option
Configure option UART_HOSTDRV_INTERRUPT_DRIVEN enables ISR support
making it possible to use interrupt driven input for UARTs. The option
would be selected by serial console and Bluetooth UART drivers.

Change-Id: Ie249275bb4bb2138f9d6b17e938bb1bbfe566f0c
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:13:41 -05:00
Andrei Emeltchenko cee6aaeff7 build: Add QEMU extra flag to be defined in apps
We want to provide to Qemu extra flags such as extra '-serial'
parameter. If we extend vQEMU_FLAGS then serial device goes to wrong
UART since first '-serial ${iQEMU_CONSOLE}' is already defined. The
order of UARTs does matter.

Change-Id: I6cd9cc84898a858e73d13297c27eeeac28010d9e
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:13:39 -05:00
Dan Kalowsky ff0641fac6 Renamign intLatencyShow to int_latency_show
Updating nano kernel functions to follow a consistent naming convention.
Part of that process is the removal of camelCase naming conventions for the
preferred_underscore_method.

Change accomplished with the following script:

#!/bin/bash
echo "Searching for ${1} to replace with ${2}"
find . -type f \( -iname \*.c -o -iname \*.h -o -iname \*.s -o -iname \*.conf \) \
       -not \( -path host/src/genIdt -prune \) \   \
       -not \( -path host/src/gen_tables -prune \) \
       -print | xargs sed -i "s/"${1}"/"${2}"/g"

Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-05 19:45:35 -05:00
Dan Kalowsky ff00dbecce Renaming intLatencyInit with int_latency_init
Updating nano kernel functions to follow a consistent naming convention.
Part of that process is the removal of camelCase naming conventions for the
preferred_underscore_method.

Change accomplished with the following script:

#!/bin/bash
echo "Searching for ${1} to replace with ${2}"
find . -type f \( -iname \*.c -o -iname \*.h -o -iname \*.s \) \
       -not \( -path host/src/genIdt -prune \) \   \
       -not \( -path host/src/gen_tables -prune \) \
       -print | xargs sed -i "s/"${1}"/"${2}"/g"

Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-05 19:45:35 -05:00
Anas Nashif bade45d374 make iTC_AUX_LIB_DIR overridable
Allow GCC variants to set the value themselves.

Change-Id: I9799a284e37fa5f8a4b254888e5f6de5e0612587
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 19:45:35 -05:00
Juro Bystricky 235243a805 defs.exec.variant_yocto: add support for Yocto ARM toolchain
Add support for ARM toolchain, assumed to be installed same from
the same SDK as x86 toolchain.

Change-Id: I755e020221480bc78d9420adb0db410eab21e1db
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 19:45:35 -05:00
Todor Minchev d50b7e22ab toolchain:x86: add yocto toolchain support
Change-Id: I68c403f2ee7aeadba28b2e18ba9c8a1be0eb4ba1
Signed-off-by: Todor Minchev <todor.minchev@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 19:45:35 -05:00
Inaky Perez-Gonzalez 8ddf82cf70 First commit
Signed-off-by:  <inaky.perez-gonzalez@intel.com>
2015-04-10 16:44:37 -07:00