When the exact scheduling context is not known it's convenient not to
have to spell out the context in the name of the *_fiber_start()
function. All of the fiber starting APIs map to the same _FiberStart()
implementation, so all we have to do is to declare another alias for
it.
Change-Id: Ic6862383422f89ad7dc4f401e76d610826163bb9
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
When the exact scheduling context is not known it's convenient to have
a wrapper API that uses context_type_get() to call the right function
at runtime.
Change-Id: I02b2ac9039519468f5501571243426a6a57ffc4d
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
When the exact scheduling context is not known it's convenient to have
a wrapper API that uses context_type_get() to call the right function
at runtime.
Change-Id: Ie72a4b78d53f664575c1d9dfeace52b53d018850
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Now terminates process with an error message if there is a mismatch
between a keyword and the expected number of arguments that follow it.
Change-Id: Ib1902161937cae482e52be449c89789f8ff816a5
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
System generator now terminates with a non-zero exit code when
it detects an error, allowing the build system to detect the failure
and terminate the build.
Note: Sysgen only detects invalid keywords at this time. It would be
nice if it also detected other syntax and semantic errors.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Adds blank lines to kernel_main.c output file in places where
unrelated variables were juxtaposed. Also suppresses an unwanted
blank line that occurred when no project-specific events were
defined.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Makes the generation of kernel_main.c more consistent with the
generation of the other two output files.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
The routine that appends data to kernel_main.c no longer adds
a newline character, similar to what is done during the generation
of microkernel_objs.h and vxmicro.h.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Reworks output directory name processing so that it is invoked
at the bottom of the file, just like the rest of the program's
mainline. (It's previous location wasn't incorrect, but it could
be easily overlooked.)
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Relocates a handful of functions and global variables that were
located in places that were logically inconsistent with most other
functions and variables.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Adds, removes, and revises various comments to make it easier
to figure out what is going on.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Makes cosmetic changes to address all issues reported by
the pep8 Python programming style tool.
Note: All future changes to sysgen should be run against pep8
to ensure no new issues are introduced.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
The helper function _nano_start() is no longer required (due to the
recent relocation of boot banner and kernel build timestamp code),
so the kernel's initialization code calls _nano_fiber_swap() directly.
Change-Id: I06b9f473715afbfbdd4105b0def3445f1b2e3583
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Moves boot banner and kernel build timestamp code to the kernel's
main initialization routine, since it doesn't really belong in a
generic fiber-processing file.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
The K_memcpyrpl() routine is not applicable to a single node system.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: Ia778a6fc43e390a6c0478d641c206d2423a93c27
The K_memcpyreq() routine is not applicable to a single node system.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: I6cdc056f4575099a8838f0bcf32e87479295452d
The K_remreply() routine is not applicable to a single node system.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: I0e99a9db077d5625c981ed219461efa7c955072e
Boot ports are not applicable to single node systems.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: I3512a5a0e2a2ba35d4e73a00d8329d301f2bd637
The header file k_boot.h does not need everything that "k_types.h" drags in.
It only needs "stdint.h" for the uint32_t type. This has an immediate impact
on "flashboot.c" as it was improperly relying upon the extra items that
"k_boot.h" dragged in.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: Ib8bfbec52a1198846295d549091dc30bf041d97a
The file netload.c is for multi-node systems only.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: I612ccb5552d7781f9a06e1b4db3dce97cf99f91a
"NODEx.c" is no longer used. The correct file is "kernel_main.c".
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: I62523b9181a446097ef3bd278553e097183ed307
Rename local variables to provide more clarity and improve readability:
- X -> task_ptr
- f_old -> old_state_bits
- f_new -> new_state_bits
- H -> task_queue
- Y -> cur_task
Add comments to clarify what this function actually does without needing
to open two additional files (include/microkernel/k_struct.h and
kernel/microkernel/core/global.c).
This function is called when a task needs to be marked as not runnable.
A task can be not runnable for a variety of reasons, which are tracked
in a bitmask defined in kernel/microkernel/include/minik.h.
Tasks that are runnable are stored in a global array, K_PrioList, that
contains a list for each task priority level. Tasks that have
transitioned to not being runnable will be removed from their priority
list by this function.
Change-Id: I07a1180e75e30cdef472c5f77638fc5971ddbaeb
Signed-off-by: Sarah Sharp <sarah.a.sharp@intel.com>
The file NODEx.c is obsolete; it has been replaced with kernel_main.c.
Even if it the comment contents were fixed, it would offer no value.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
There is no point to having a comment reference the old hard-coded
maximum number of events. The maximum number of events is by
definition 'K_max_eventnr'.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
"Unsupported stdlib" functionality is not relevant to the current "minimal"
libc implementation.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Several sample project tasks that are not to be automatically
started now indicate this by simply specifying an empty task
group list, rather than by defining and using a new task group.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Instances of the custom OFFSET() macro are replaced with the standard
offsetof() macro from stddef.h to reduce code duplication.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Makes the _NANO_ERR_xxx error code values continuous.
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Change-Id: Iec0a5d0d6c54a94511a20608ba59626148baaca4
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>
Add endian conversion functions needed for network protocols.
Currently Bluetooth needs sys_le16_to_cpu and sys_cpu_to_le16
to implement endian safe stack. Note that the OS is not guaranteed
to be endian safe generally.
Change-Id: If7faf9568e0f2b1817139a76d9b00888d5b7d76c
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Adding a line after variable declaration in order to comply with
the defined coding style.
Change-Id: Id41af88404bd37227bfd59a2d71ce08d0d6ce005
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
This commit modifies the function declaration to have the arguments
in the same line to the identifier of the function.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@linux.intel.com>
Change-Id: Ic7a2f19e353e4f3fa42dded09fa1c8f23bde2b2b
This commit changes the pointer's location in order to comply with
the defined coding style.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@linux.intel.com>
Change-Id: Ibcf1ef0e4fc53b0cb5286b36119e76d017f24cd9
This commit adds the parameter to the reference of the extern function in order to
avoid the checkpatch issue ERROR:FUNCTION_WITHOUT_ARGS.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@linux.intel.com>
Change-Id: I42c53314232622a8e2e615420584601ce9b85404
This commit fixes the coding style of the 'if', 'do', 'while' and 'for'
statements in order to comply with the defined coding style.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@linux.intel.com>
Change-Id: I70d002462db48f36b9589cdb229ba928f3f424b4
This commit fix the return statement in a void function due to this is not useful.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@linux.intel.com>
Change-Id: Icae7892853ed1c6c56c18e0c0c8f8fd1610491ee
This commit deletes the exceeded spaces after #ifdef declaration on the line that
the checkpatch script mark as having the SPACING error in order to complay with
the defined coding style.
The script used to perform this fixes was:
checkpatch_script="$VXMICRO_BASE/scripts/checkpatch.pl --mailback --no-tree -f --emacs --summary-file --show-types --ignore BRACES,PRINTK_WITHOUT_KERN_LEVEL,SPLIT_STRING --max-line-length=100 "
cd $VXMICRO_BASE;
for file in $(find ./ -name "*.[ch]" ! -path "./scripts/*" ! -path "./host/src/wrsconfig/*");
do
for line in $(eval $checkpatch_script $file | grep "ERROR:SPACING: exactly one space required after that #ifdef" | cut -d":" -f2)
do
sed -i -r -e ''$line' { s/^#ifdef[ \t]*/#ifdef /g }' $file;
done;
done;
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
Change-Id: Ic9bb67243f91fa3b5aca6288b306f9b4e8c816fe
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit deletes spaces after open parentheses '(' and spaces before
close paratheses ')'.
This modification were done with the following script:
checkpatch_script="$VXMICRO_BASE/scripts/checkpatch.pl --mailback --no-tree -f --emacs --summary-file --show-types --ignore BRACES,PRINTK_WITHOUT_KERN_LEVEL,SPLIT_STRING --max-line-length=100 "
cd $VXMICRO_BASE;
for file in $(find ./ -name "*.[ch]" ! -path "./scripts/*" ! -path "./host/src/wrsconfig/*");
do
# fixing spaces after open parethesis
for line in $(eval $checkpatch_script $file | grep "ERROR:SPACING: space prohibited after that open parenthesis '('" | cut -d":" -f2)
do
sed -i -r -e ''$line' { s/\([ \t]*/\(/g }' $file;
done;
# fixing spaces before close parethesis
for line in $(eval $checkpatch_script $file | grep "ERROR:SPACING: space prohibited before that close parenthesis ')'" | cut -d":" -f2)
do
sed -i -r -e ''$line' { s/[ \t]*\)/\)/g }' $file;
done;
done;
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
Change-Id: I4482fc50ec45542afa2e60c5f2fef4e75fb24dd3
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit fixes the coding style of the function declarations and aligning
the open and close brackets and change the style of parameter's documentation.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
Change-Id: I648d36eb29dafc7fcd87b8db01e682bea993e5d2
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Assignment in if condition should be avoided. The source code is
restructured to have the assignment outside the if condition.
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
Change-Id: I9e3e1d069657d3ce9f54e1f4b4b74163c724a733
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
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 \*.kconf \) \
-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>
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 \*.kconf \) \
-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>
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 \*.kconf \) \
-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>