Commit graph

42559 commits

Author SHA1 Message Date
Peter Mitsis
519351ee92 Use PLATFORM_CONFIG to specify configuration
Uses PLATFORM_CONFIG to specify the configuration file instead of
KBUILD_DEFCONFIG.  This name is more intuitive to Zephyr users and
it is not tied to kbuild.

Example usage:
    make PLATFORM_CONFIG=generic_pc_atom_n28xx
    make PLATFORM_CONFIG=generic_pc_minuteia
    make PLATFORM_CONFIG=quark
    make PLATFORM_CONFIG=ti_lm3s6965
    make PLATFORM_CONFIG=fsl_frdm_k64f

Change-Id: I177608942c3e77c2f152743c862aad1d460c0e33
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
c141aaae37 arch/x86: Remove pentium4 Kconfig options
Removes CONFIG_CPU_PENTIUM4 and CONFIG_PLATFORM_PENTIUM4 as Zephyr does not
support the Pentium4.

Change-Id: Ieb1970894eda184f4c33d03e3563fb08f861ec6c
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
42f8ae553f arch/x86: Remove unsupported platform configuration files
Removes the generic_pc and generic_pc_pentium4 platform configuration files
as Zephyr will not support them.

Change-Id: Iffa917d8e31702e6280eca3cbc9cdaf3f8ed9c98
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
9690835e32 sample projects: Remove generic_pc and pentium4 support
The generic_pc and generic_pc_pentium4 platform configurations are not
essential configurations to Zephyr.

Change-Id: Idd384bc7f180c035b1467e8b56fbfe206604658f
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
3b33a3b437 sample projects: change default KBUILD_DEFCONFIG
Changes default KBUILD_DEFCONFIG to xxx_generic_pc_atom_n28xx_defconfig as
the xxx_generic_pc_defconfig configuration will not be supported in the future.
Note that like generic_pc, atom_n28xx runs on QEMU.

Change-Id: I49c5708e4b24dbf723eefc1efddfea4174d9cb1c
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
e147071219 sanity: out-of-tree_chk: minuteia -> atom_n28xx
Replaces the default executable target (generic_pc_minuteia) with
generic_pc_atom_n28xx.  This ensures that sanity testing can evaluate
two different x86 processors just as it did before generic_pc_pentium4
was removed.

Change-Id: Iad439d8465811e9e45f02e9516ce3e6d65d7c1ed
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
4f1cc4e168 sanity: Mark atom_n28xx as an executable target
Marks the generic_pc_atom_28xx platform configuration as a default executable
target.  This is desirable as the removal of generic_pc_pentium4 removed an
executable target from the sanity test suite.

Change-Id: Ic990a003ff23367199164dfcc434c033d78abaac
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
7b363ebe70 sanity: Remove generic_pc_pentium4
Removes the generic_pc_pentium4 platform configuration from the sanity tests
as the pentium4 is not considered an essential target for Zephyr.

Change-Id: I804ad44c4157f40a501ae56b928b57b2003d2415
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
5890d1fbb4 kbuild: remove BSP+variant to defconfig mapping
Removes the BSP+BSP_VARIANT to KBUILD_DEFCONFIG mapping.  Consquently,
KBUILD_DEFCONFIG must be defined (via Makefile, or command line, or environment
variable, ...) when building any project.

Change-Id: I0a416977bc0d37419c4a6bcf40560b3b32f19f8d
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
47808955ac Network sample projects no longer use BSP
Network sample projects no use KBUILD_DEFCONFIG instead of BSP.  This
is a necessary step in transitioning from BSPs to platforms.

Change-Id: Ia1ebb697d9e68974f71faa467f1f946f0d1afbd1
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
98862b3c83 Nanokernel sample projects no longer use BSP
Nanokernel smaple projects now use KBUILD_DEFCONFIG instead of BSP.  This
is a necessary step in transitioning from BSPs to platforms.

Change-Id: I47f75742b663edd7c4b1858425d4583f0bc74ae7
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
85d9f0c827 Microkernel sample projects no longer use BSP
Microkernel sample projects now use KBUILD_DEFCONFIG instead of BSP.  This
is a necessary step in transitioning from BSPs to platforms.

Change-Id: I916819262cabf70296e15d9b1321fc383b88a805
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
bb2e5daacd Bluetooth sample projects no longer use BSP
Bluetooth sample projects now use KBUILD_DEFCONFIG instead of BSP.  This is
a necessary step in transitioning from BSPs to platforms.

Change-Id: I42c89d0b5c3d7de7ea62297950bb00f56ca97ed2
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Yonattan Louise
2a763a155a doxygen: memory_map: update in-code documentation
Adds documentation to the header files for memory map
adopting javadoc style.

Change-Id: I25ba2b938ea7dc490af97899b4eb10d16351739a
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
2016-02-05 20:14:38 -05:00
Rodrigo Caballero
b7def368ba Doxygen: Move the microkernel FIFO APIs comments to the .h file.
Moves the comments from the k_fifo.c to the fifo.h file. Only the
external API information was moved. Minor edits were performed to adapt
the comments to different parameters and aliases.

Change-Id: I69d2d009f7ec6390e0a2fc9d6a346ddc0111f9f1
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:38 -05:00
Rodrigo Caballero
71f8c6578a Doxygen: Move nanokernel FIFO comments from .c to .h file.
Moves the comments of the nanokernel FIFO external APIs from nano_fifo.c
to nanokernel.h.

Change-Id: Ic31e6da8a2f7a4099adc2e847d237b5a73787a23
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:38 -05:00
Carol Lee
271838b21e doc: Update to objects list in architecture_microkernel.
Removed "most important microkernel objects" and changed to
"microkerel objects are" and listed all the microkernel objects.

Change-Id: I18c63952085cc91f6d86045a86a5ea3b59982ee2
Signed-off-by: Carol Lee <carol.lee@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
dfff7463d8 pipe: Fix stray reference to ChBuff
The ChBuff structure no longer exists; it was previously changed to pipe_desc.

Change-Id: Ife72db4a186db1d3af447141fefb47f2136b544f
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
77f1fee705 pipe: Fix stray reference to K_ProcWR()
The routine K_ProcWR() no longer exists; it was previously changed to
pipe_read_write().

Change-Id: If084a45a8593cfe988ee5db0507695ec2191b409
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
b037c692bb pipe: Rename CHECK_CHBUFF_POINTER() macro
Renames CHECK_CHBUFF_POINTER() macro to CHECK_BUFFER_POINTER() to remove
references to obsolete "channel" terminology.

Change-Id: I3154e7af04cc9afa8b935ddf61555c15c7d2659d
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:38 -05:00
Peter Mitsis
a7644b86a5 Rename CONFIG_BSP_xxx to CONFIG_PLATFORM_xxx
Updates Kconfig option names as part of transforming BSPs to platforms.

Change-Id: If397bcac8b058e5700e82c3cabbfe64588316d1d
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
07a587c8d6 arch/arm: Relocate 'bsp' Kconfig contents
As a step towards eliminating the ARM's bsp subdirectory (as has already been
done for the x86 arch), the contents of 'arch/arm/bsp/Kconfig' have been merged
into 'arch/arm/Kconfig'.

Change-Id: I813b5c9e19187347147875635deb851a3357dd55
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
4a36991e66 arch/arc: Move fatal_error.c into 'core'
One of many steps in the transform BSPs to platforms work item.  At the end
of this work item, there should not be any code in the 'arch/arc' directory.

Change-Id: If72a6a858eb4b0f1521191fca441bed4acc6d8ce
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
29092fe935 arch/x86: Move sys_fatal_error_handler.c to 'core'
One of many steps in the transforming BSPs to platforms work item.  At the end
of this work item, there should not be any code in the 'arch/x86' directory.

Change-Id: I78bf1738f4450faa078a8510ab342eb9d9277b91
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
d1955e06fb arch/arm: Move sysFatalErrorHandler.c from 'bsp' to 'core'
Moves (and renames) sysFatalErrorHandler.c out of the 'bsp' directory and
into 'core' as a step towards removing the directory 'arch/arm/bsp'.

Change-Id: Ie10aa2099f07380e4583dbbd32cdda917b4999ba
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Rodrigo Caballero
ccea9d3581 DOC: Split the microkernel object document into a file per object type.
Split the contents of microkernel.rst into several files. Each file
contains only the information of a specific object type. Labels have
been added to accomodate cross-references to each object type. Changed
the tables that did not comply with a 100 character line length.

Change-Id: I983bc76a89b1cf01442de53737de4f76a5262264
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-05 20:14:37 -05:00
Rodrigo Caballero
3fddad2eda DOC: Updated the overview modules to reflect the renaming of files.
The overview modules need to be updated after changing the file names.
The main overview module was not renamed. Therefore, no changes are
needed outside of the object folder.

Change-Id: I34590db3a680b2182aa86544820572a657b8e1ae
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-05 20:14:37 -05:00
Rodrigo Caballero
19551729eb DOC: Renames the Object Documentation files prior to restructure.
The object documentation files need to be renamed before they can be
split and restructured.

Change-Id: Ia3262885b801ed02b231ab14c6d4c0f4e2424cae
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-05 20:14:37 -05:00
Carol Lee
cb6f2eec67 doc: Memory Pool documentation
Adds new documentation for memory pools.

Change-Id: Icca2f24971891bb70bb866eba71c6f8271e31bff
Signed-off-by: Carol Lee <carol.lee@windriver.com>
2016-02-05 20:14:37 -05:00
Allan Stephens
04adb5fb79 samples: Revise example memory pool block sizes
Revises the memory pool test project so that the maximum block size
is a power of 4 multiple of the minimum block size, as a reminder
of the required relationship between minimum and maximum block sizes.

Change-Id: Iff5480b7870c261d43c5a857c71a44beffc6c7f0
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:37 -05:00
Allan Stephens
cca9dfea44 Remove references to defunct _ContextUsrEntryRtn()
This function no longer exists.

Change-Id: I8e4a41b0556e1178b96c64432147d6e1d1bfdcd0
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:37 -05:00
Allan Stephens
8486aae9d6 Revise misleading 'channel' references in sample projects
There is no need to refer to a data passing microkernel object
as a 'channel'.

Change-Id: I730f88d6e77ab075832e7ed48b20eb2ec46b5ed4
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:37 -05:00
Allan Stephens
80b109ae98 Revise misleading 'channel' references in microkernel server code
There is no need to refer to the server's command stack as a 'channel'.

Change-Id: I5c0fd599ba25478f1c4a9e96c015746b205df469
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:37 -05:00
Allan Stephens
319a648267 Revise 'channel' comments in microkernel's pipe code
These comments now use the newer 'pipe' nomenclature.

Change-Id: Id09b58d7174d7989eaae4dabe0086ab988c7746f
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:37 -05:00
Dirk Brandewie
fce979ef3e init: Change _InitHardware() to be called from init system
Change the function signature of _InitHarware() function and rename
the function to a platform specific name now that it will be called
via a function pointer and not by name.

Call the platform *_init() function at PURE_INIT time.

Change-Id: I5168dfea81f406da135d491a2b4a24e8255f418a
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
2016-02-05 20:14:37 -05:00
Dirk Brandewie
a88cd0fc34 init: Split pure_init into pure_init_{early,late} levels
Split the pure init level into two phases this allows for easier
migration of the nano kernel init process without resorting to naming
or link order to force the ordering of functions at pure init
time. The need for change was discovered while moving the system
timers to be initialized by the init system.  The base timer driver
(eg. HPET) must be initialised prior to the system clock being enabled
both of which need to happen before nano-kernel init.

Change-Id: I7a2994965e48a891a78268080113ac8fccceb261
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
03ab32a66a Microkernel timer uses new driver initialization
Update microkernel systems to use the new driver initialization model on the
timer driver.

Change-Id: Ida9ef2a395d0dddf4104d490d78b13b11ea3c347
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
b99194ee98 Remove obsolete SYS_PREKERNEL_INIT() macro
The SYS_PREKERNEL_INIT() macro was a temporary item until the new driver
initialization model was implemented.

Change-Id: I052db0c9f41f54bfd0b54b50aa0b18f018be640c
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
27e01a060a Nanokernel timer uses new driver initialization
Update nanokernel systems to use the new driver initialization model on the
timer driver.

Change-Id: I22d8619f56052f094482d73ab34c9d610492d8c0
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
6e95fe0356 Update _sys_clock_driver_init() interface
Prepares the _sys_clock_driver_init() routine to interface with the new driver
model.  To this end, it must accept a pointer to a device structure and return
an integer.

Change-Id: I3c600ce1efb49c0864aae7b09663ca40d6289372
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
2874311ca5 Remove reference to nano_time_init() in sample projects
The nanokernel routine nano_time_init() is automatically invoked by the
constructor initialization code, and should be invisible to the application.

Change-Id: Ic75f84856c333187a4f9fef8569698e056f6d936
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
6a09e0235d Remove trailing characters from macro defintion
Macro definitions must not have trailing semi-colons.  Depending upon the
compiler, trailing semi-colons may result in a warning when a user invokes
those macros AND adds their own trailing semi-colon.

Change-Id: I34e8da2b0ce7c21ce67e84fab75ea3edefe19cfe
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00
Daniel Leung
7f998a101b doxygen: mutex: update in-code documentation
() Adds documentation to the header files for mutex.
() Update whole @file documentation in the mutex source
   code to javadoc style, and adds some missing param fields.

Change-Id: Ic54d830ea3382aac94cf93e58cc9eb66e1a241b7
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:14:37 -05:00
Anas Nashif
fdce514ceb doxygen: scan all of include/ for docs
Also scan for .S files, not .s. All .s files have been renamed to
.S.

Change-Id: I73f8fccc0a3be950d47020e86cc6d24ee1ad37c4
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:37 -05:00
Anas Nashif
86446dab4e doxygen: move mailbox comments to header file
Move documentation comments to header file and prep
them for doxygen.

Change-Id: I3180cba7c86af97e3b4c0fceb0e1aa523ed4d219
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:37 -05:00
Anas Nashif
538cb82151 doxygen: make device and init comments doxygen friendly
Document structs and some typo fixes

Change-Id: Idf9df3f4f401d141a2332a83c2c60cb19c9fb8e3
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:37 -05:00
Anas Nashif
72cb707f20 kconfig: Let the application decide the name of the kernel bin
This introduces a new option

	CONFIG_KERNEL_BIN_NAME

that can be used in the kernel configuration (kconfig) to set
the final binary name, for example you can set:

CONFIG_KERNEL_BIN_NAME="test_app"

in the project.conf and this will result in

test_app.{elf,bin} in outdir.

The default is still using the type of the kernel being used, i.e.

microkernel.elf or nanokernel.elf

Change-Id: Id6c437af2ce4c02cb52d4e1e41b29e64d83f9aab
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:37 -05:00
Andrew Boie
4f9a95ff1e kbuild: remove BSP_VARIANT Makefile variable
This wasn't being used anywhere and seems to be a legcy of old sanity tests.
By removing this x86 is no longer a special case.

Change-Id: I78c668a7d9e6bc7c7f60d91712c4c21c0121b7e2
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-05 20:14:37 -05:00
Rodrigo Caballero
7650bc0daa doc: Adds step by step procedure to develop microkernel apps.
Includes the procedure and updates all needed cross-references. The
procedure will include examples of MDEF, Makefiles and .conf files.

Change-Id: If5b3e88843a9257036265668765e3ad012818ae9
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-05 20:14:37 -05:00
Peter Mitsis
e5700b46ab Rename ChRef union and its fields
Eliminates references to obsolete "channel" terminology and aligns
the names to Zephyr OS naming practices.

Change-Id: Ie4205bda5529a6f8aebfa63aa5a87eb6aef85bc9
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
2016-02-05 20:14:37 -05:00