Commit Graph

112 Commits

Author SHA1 Message Date
Allan Stephens
d6db256249 Add missing #includes required to reference non-kernel APIs
Several files were not explicitly including APIs that they reference,
which could eventually lead to trouble.

Change-Id: Ib33cadfa658280df3fcb4c670463d41b63097b31
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:14 -05:00
Allan Stephens
a27910091a Avoid use of "ukernel" terminology in some sample projects
Gets rid of this non-standard terminology, and spells out
"microkernel" in full (when needed at all).

Change-Id: Ibfae84225fdceb526d8732bc23a0885f2d3be462
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:14 -05:00
Allan Stephens
e3108813cc Revise misleading instructions in sample project README.txt files
Removes the instruction directing users to issue "make pristine"
before building a sample project, as this should be unnecessary
under normal circumstances and can cause the user to unexpectedly
lose their current configuration information. In its place, a section
on troubleshooting is added that describes how to rebuild a project
using the desired configuration.

Change-Id: I4eaace2888000c3ec5d101c27a38c74c2987312e
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:14 -05:00
Allan Stephens
a1bd59de35 Eliminate obsolete coding convention comments
Gets rid of single-line comments required by a previous set of
coding conventions. These comments provide no value to readers
and just clutter things up.

Change-Id: I2a08b12cf5026253de56979efdfc510e7e68defe
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:14 -05:00
Allan Stephens
5a4be58707 Eliminate non-standard boolean type support
Revises kernel so that it uses the standard boolean type library
defined for C99, rather than having its own custom boolean type.

Also revises sample projects that used the non-standard type.

Change-Id: Ib41b7f836da25352aa5ae9dfbbfdd29739017b6f
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:14 -05:00
Allan Stephens
4e74e65744 Delete obsolete file for testing secure string APIs
As a result of the conversion to the new build system, this file
was missed when the test project was eliminated.

Change-Id: Ie61d2549910cfeee2c0627451d05a5b1faff3deb
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:14 -05:00
Anas Nashif
bbe84f8ae5 Use ccflags-y and asflags-y instead of EXTRA_CFLAGS
According to section 3.7 of Documentation/kbuild/makefiles.txt, using
EXTRA_CFLAGS in Makefiles is "still supported but their usage is
deprecated." However, using make EXTRA_CFLAGS="-DSOMETHING" results in
EXTRA_CFLAGS from Makefiles being overwritten, obviously breaking the
build.  This patch converts to them to the newer ccflags-y which also
fixes the problem.

Change-Id: I6309439599d4c9cc184f9ecd941bde841982ef07
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:14 -05:00
Peter Mitsis
63d6a95738 Apply __stack tag to sample project fiber stacks
Updates sample projects to ensure that fiber stacks are properly aligned by
using the __stack tag.

Change-Id: I4f92033571d65aa87b6d46da5d7cb6d92eadc27a
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:13 -05:00
Peter Mitsis
e948817ee5 Reduce floating point test duration
The length of time it took for the microkernel's test_fp_sharing test to run
was occasionally causing issues with sanity_chk.  The test would take close
to five minutes to finish and sanity_chk has a five minute timeout for the
tests.  To resolve this, the number of iterations for which the test executes
has been cut in half (from 1000 to 500).

Change-Id: I171b96f6af81a8b08d0367beecab536f16d1ca7e
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:13 -05:00
Peter Mitsis
d209b880ab Rework testing of task_timer_alloc()
Future commits will prevent task_timer_alloc() from returning
INVALID_OBJECT.

Change-Id: Ib7ec2e0fafb625223d762d73f15c128f134169b3
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:13 -05:00
Peter Mitsis
ded4609cfa Use CONFIG_NUM_TIMER_PACKETS in microkernel test_timer project
The number of timers in the system is no longer configured via the VPF, but
rather through the kconfig option NUM_TIMER_PACKETS.

Change-Id: I58a4b3009e183a9d04e3618418baa73ed296d0af
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:13 -05:00
Allan Stephens
140d314336 Eliminate references to k_memset() and k_memcpy()
Since the kernel now provides a minimal string library, there is
no longer any reason not to use the standard memset() and memcpy()
APIs.

Change-Id: Iad587ace6f41fd94c9c961d13d9322495a7da1be
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:12 -05:00
Allan Stephens
4b105f459d Eliminate testing of secure string library code
Test project is no longer needed, since the associated library
is now scheduled for removal.

Change-Id: I843018e647c4bdc82c785ae21dbfa9de608c0d50
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:12 -05:00
Dan Kalowsky
c02dd34277 Renaming include/nanokernel to include/arch
Renaming the directory include/nanokernel to be include/arch, which
better reflects the real nature of the directory and the contents
inside.

Change-Id: I2bc33ebc6715e2f0403227a558279fdf52398ade
Signed-off-by: Dan Kalowsky <daniel.kalowsky@intel.com>
2016-02-05 20:14:12 -05:00
Dmitriy Korovkin
b08727ed2d Add random number API test
Change-Id: I810705c84609ca3497cc1d2dd7a2f7706f140815
Signed-off-by: Dmitriy Korovkin <dmitriy.korovkin@windriver.com>
2016-02-05 20:14:12 -05:00
Anas Nashif
8e9d8ebfd2 Remove nodes naming when using sysgen
Change-Id: I8914c25ad18d3c294f398f98efca04c3ac371f44
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:12 -05:00
Juan Manuel Cruz
988236f2b9 Kbuild: Output files at outdir directory.
This commit enables the outdir directory.
Kbuild output files will be generated at the outdir directory
inside the project directory.

Change-Id: Icec04aca1753326c9d50dea20c71850c1d8c3dd0
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:14:10 -05:00
Juan Manuel Cruz
dc5a457847 Kbuild: Changing build parameter CONF_OVERLAY to CONF_FILE
This commit changes the build parameter CONF_OVERLAY with the
name CONF_FILE.

Change-Id: I404a4aa87b167a9ca4e7b395d53c2f7794b232bc
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:14:09 -05:00
Anas Nashif
c4d7bcac5a Kbuild: remove obsolete *.mk files
Change-Id: I2d2f4bbe88ccb97a11cae08dd5f4b0618a60e3b8
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:09 -05:00
Juan Manuel Cruz
be64ff26a4 Kbuild: Removing TIMO_BASE setting from samples Makefiles.
This commit removes the TIMO_BASE setting from the sample
Makefiles.

Change-Id: Iff487ecb1e412e379528cca520470f87123cf4b4
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:14:09 -05:00
Anas Nashif
d2ca03270e Kbuild: Fix sanity checks for quark
Change-Id: Id142f337f715590fa63d9f7b957f51c203743566
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:08 -05:00
Juan Manuel Cruz
5fbb5f6420 Kbuild: Adding bluetooth sanity checks.
This commit adds the Makefiles to add sanity checks for
the bluetooth driver.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: Iadfe6eb2662347a981393ffeb3e343f32c5f67f0
2016-02-05 20:14:08 -05:00
Anas Nashif
432b30ce93 Kbuild: metrics config dependency resolved
It seems CONFIG_PERFORMANCE_METRICS is needed for this
test to build, so enabling it.

Change-Id: Iafc0be794f0931b33bcef2ba3ace56ee88f75258
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:08 -05:00
Anas Nashif
1aa5ee8188 Kbuild: include inc file at the end
Change-Id: Ib8023ea695c49b6cc3d7076a130da57dc5f81c52

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:08 -05:00
Anas Nashif
b8fd8e932f Kbuild: make test case build
Change-Id: I1bb91e584b978f686a668c9698f8cad7bb835bd2

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:08 -05:00
Juan Manuel Cruz
8fc9de7acb Kbuild: Update for the source Makefile of test_fp_sharing.
This commit updates the source Makefile for test_fp_sharing.

Change-Id: Iab70d6fb3b17b8e078549130b10c6c9c8a956b73
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
e808b2125b Kbuild: Updates to the microkernel config overlays.
This commit updates the dependency symbols needed in the
microkernel config overlay files.

Change-Id: I0a846956a7d0d6aaa93cd4bf11ba3853f6301220
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
5565712635 Kbuild: Root Makefiles for microkernel sanity tests.
This commit adds all the root Makefiles needed by the
microkernel sanity tests.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I7a267a180ba617ce95a499dcf2782630273e8566
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
ca8ac2d9bc Kbuild: Root Makefiles for nanokernel sanity tests.
This commit adds all the root Makefiles needed by the sanity tests.

Change-Id: I7ef21d0bcd2c383218d600d291111861fe307abd
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
20d0bad007 Kbuild: Update on benchmark-latency measure test
This commit updates the list of files that compose the
benchmark-latency measure test.

The raise_int.c files is copied from the test: test_task_irq
because there is no clean way to reference this source outside
of the project in Kbuild.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I20d5cdd042ba35945d213e49e80004e886bfdc6e
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
0e1d6a037c Kbuild: Microkernel benchmark test main Makefiles.
The following commits adds the main Makefiles for the microkernel
benchmark test, using parameters to be used by the sanity check.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I7601df92006ca81b3680f6c2b4e25de076512e41
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
dd26bf9446 Kbuild: EXPERIMENTAL ksymbol additions for benchmark conf snippets.
This commit adds the EXPERIMENTAL ksymbol to the configuration
snippets used by the benchmark tests.
Some configurations options in the snippets have dependencies
agains this ksymbol.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: Ia714e913777a697cc8b1eafa0fc097496b5972c5
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
4f076467fd Kbuild: Micro and nano kernel apps samples.
This commit adds the parameters to the Makefile.kbuild for
micro and nano kernel apps samples.
This prepares the sample apps to be used by the sanity check.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I7636f0375493e12b4604f6fb6c4b6100d2c6604c
2016-02-05 20:14:07 -05:00
Juan Manuel Cruz
f44f5e7b98 Kbuild: Makefiles for the benchmark tests.
This commit adds all the Makefiles needed to integrate the benchmark
testing in the Kbuild system.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I7b29cf7839e95b94acc27a45677a067ca5a0c00d
2016-02-05 20:14:07 -05:00
Anas Nashif
6eb4dbd3a4 philosophers: Use kbuild Makefile
Change-Id: I0bc2158e0b936a3e33674ffe0f4a45018a7be3ed

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:06 -05:00
Anas Nashif
7e04b5b6d3 hello_world: Use kbuild Makefile
Change-Id: I0365e9efcefa8698e4301f81036cb247c6e279c9

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:06 -05:00
Juan Manuel Cruz
732f1327d3 Kbuild: Philosophers makefile fix.
This commit fixes an issue with the Makefile describing the
philosophers demo.

Change-Id: I5502e207aa5d87c04e58daa2d391e2d89ba91a67
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
2016-02-05 20:14:06 -05:00
Juan Manuel Cruz
9846fb257a Kbuild: Test Makefiles
This commit adds Makefiles for each sample test in the project.
The Makefiles integrate the test samples into the Kbuild system.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I8d84756836c1f7d00dc823d7ff76334c75304d66
2016-02-05 20:14:05 -05:00
Juan Manuel Cruz
4ee8a8e042 Kbuild Makefile mechanism for samples and projects.
This commit adds the capability to the Kbuild system of adding
samples and projects to the build process.
This commits adds the hello_world and philosophers sample code
as an example of how to configure a project into the build
system.
The project can be hosted inside the kernel source tree or
outside the kernel source tree.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: Id980e959ac6e0061f8227d5d81191a169bfc8fc3
2016-02-05 20:14:05 -05:00
Johan Hedberg
06098aa73e Bluetooth: Remove CONFIG_BLUETOOTH_DEBUG_HCI_CORE from samples
There's no point in enabling BLUETOOTH_DEBUG_HCI_CORE for the samples
as the user/developer is unlikely to be interested in this specific
sub-module of the Bluetooth stack. The samples already have the
BLUETOOTH_DEBUG enabled, so leave it up to the user/developer to
decide if they want to add specific sub-module debug options.

Change-Id: I327086464561667a2462db0aab00d0ffcdd40d4c
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-05 20:14:03 -05:00
Allan Stephens
267753d967 Streamline public pipe APIs
1) Now invokes pipe routines directly, without the use of function
   pointers.
2) Eliminates unreferenced _DEVICE_CHANNEL symbol.

Change-Id: I6e26476265ed8f33febb5a06c9d03daf7147ee5e
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:00 -05:00
Allan Stephens
7a4be5abf1 Allow AppKernel benchmark to utilize non-public microkernel APIs
This project requires access to non-public kernel structures
for testing purposes.

Change-Id: Ibfa119b99bda170498503cdbbee6b98f5cf41f54
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:00 -05:00
Johan Hedberg
99dce8cf7b test_libs: Add memcmp test case
The initial memcmp implementation was buggy, so to have at least some
sort of sanity testing of the implementation add a test case for it to
test_libs.

Change-Id: I9e1a48e4b646e80258c1689dde2461a6134dddf8
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-02-05 20:14:00 -05:00
Yonattan Louise
8f08126af8 Change task_irq_object from global to local variable.
The variable task_irq_object is global because the test_task_irq project
needed to access it. That data should only be accessed through the API.
To make the variable local, break that dependency to the test project
and restrict the access to the variable.

Change-Id: I1ccb21625d456714a038e0374d124b42aa72e577
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:14:00 -05:00
Yonattan Louise
5f9042e6c1 Fix whitespace issues
Fixing the folling whitespace issues:

- SPACE_BEFORE_TAB : We should not use white spaces before tabs to alignment.
- TRAILING_WHITESPACE : Lines should not end with a white space.
- QUOTED_WHITESPACE_BEFORE_NEWLINE : Removing unnecessary whitespace before a quoted newline.

Change-Id: I024e8d39164c5e5e9d8370f3499d21b49147feee
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:13:59 -05:00
Yonattan Louise
63e3a4e772 Fix checkpatch issue - ERROR:ELSE_AFTER_BRACE
The 'else' statement should be in the same line that the
close brace of the 'if' statement. E.g.:

	if (condition) {
		do_this();
		do_that();
	} else {
		otherwise();
	}

This commit fixed this kind of error using the following script:

	#!/bin/bash

	for file in $(find ./ -name "*.[ch]" ! -path "./scripts/*" ! -path "./host/src/wrsconfig/*");
	do
		if [ ! -h $file ];
		then
			sed -i '/^[ \t]*}$/ {
	:review_next_one_too
	N
	s/^\(.*\)\n[ \t]*else/\1 else/
	/}$/ b review_next_one_too
	}' $file;

		fi;
	done

Change-Id: I7e811a572d735fa08e84850055ebbde29eb10e8d
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:13:59 -05:00
Yonattan Louise
918cf45f33 Fix coding style of control statements
There should be a whitespace between the 'if', 'for' and 'while' statements
and the open brace. this commit fix this kind of error.

Change-Id: I4bae17d98f8ec8b698d40253a9a4c873111a8904
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:13:59 -05:00
Allan Stephens
ed29b076ea Eliminate unneeded non-public APIs from generated vxmicro.h
There is no longer a reason to expose information about the
internels of the microkernel's event subsystem to application
files.

Note: The one sample project that tests event processing now
explicitly declares any non-public event APIs in requires.

Change-Id: I4c3f85a7b0bc485713c21424a923102b4f400ced
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:13:59 -05:00
Yonattan Louise
b0b11989df Fix checkpatch issue - WARNING:LONG_LINE
Line's length should be shorten than 100 characters. This commit
fixes these lines separating them into two parts.

Change-Id: Ic68c9086866cd778187aa1465470acc0485e2271
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:13:59 -05:00
Yonattan Louise
dbada63eee Fix coding style issues.
Some checkpatch issues were solved by scripts leaving other problems
such as alignment and indentation issues.  In order to comply with the
defined coding style the following fixes were made:

- Fixed the function declaration moving the parameters' comments above
  the function in accordance to the doxygen format.
- Fixed functions' opening and closing brackets. These brackets should
  not be indented.
- Fixed the 'if', 'for' and 'while' statements adding the brackets
  around the sentence.
- Fixed comments' alignment.
- Fixed indentation.

The work was done manually and submitted as one commit. I didn't
separate these changes in different commits because they were fixed all
at once. Basically, all errors were fixed in every file at once.

Change-Id: Icc94a10bfd2cff82007ce60df23b2ccd4c30268d
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:13:59 -05:00