GCC requires a declaration of a static inline function prior to its
definition when strict-prototypes warning is enabled.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Removed unused code. Reset reschedule interval for sampling when the
sampling rate is changed.
The rate is always 1000Hz as it is set to the default value.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
QuRT needs to use the builtin version of isfinite so for the qurt
build PX4_ISFINITE(x) is defined as __builtin_isfinite(x).
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
QuRT's pthread_cancel implementation is lacking, and causes px4_poll to
always wait for the maximumn timeout. A cleaner implementation is provided
that uses the HRT work queue for posix targets.
In the future the posix code should be rtefactiored so that qurt (and other)
implementations that are duplicated, use the posix implementation.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Used a do_nothing() function for px4_omit() that will satisfy the
compiler so it will not report unused variables when a debug
message is compiled out.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The gpssim code was named gps_sim vs being consistent with other
simulators (gpssim). It also used warnx and errx and had lots of
commeted out code.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
If __px4_log_level_current is unsigned then the runtime filter
comparison warns because an unsigned value can't be less than zero.
Changed typed to signed so compiler will not issue a warning.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Added __attribute__ ((unused)) for variables used only for log
output and flagged as unused if the message log level is compiled out.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The device level debug will have to be removed and the debugging
can be based on this new logging structure which can tell where
an error (or debug output) occured whch the current implmentation
cannot.
The one limitation is the new macros cannot take a char* for the
format parameter. It must be an actual string literal because it
is concatenated with other strings.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The SITL build is now the default posix build.
The linker script for posix was moved to makefiles/posix.
The rc.S file was moved to posix-configs/SITL/init/
The POSIXTEST board definition is now SITL
To run the SITL test run:
make sitlrun
This replaces the make posixrun target.
The build directory is now Build/posix_sitl.build/
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Since the PX4 code uses both px4_task and pthread APIs,
px4_getpid() must be save to call from either context.
On posix, this means we have to always return the pthread ID.
Reverted simulator change of pthread to px4_task
There may have been side effects if this was build for a target that
has process/task scoped file descriptors. It is now safe to call
px4_getpid() from this pthread context with this change for the
posix build for px4_getpid().
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
In nuttx the mode parameter to open is not required but in Linux,
and per the POSIX spec, mode is required if the O_CREAT flag is
passed.
The mode flags are different for NuttX and Linux so a new set of
PX4 defines was added:
PX4_O_MODE_777 - read, write, execute for user, group and other
PX4_O_MODE_666 - read, and write for user, group and other
PX4_O_MODE_600 - read, and write for user
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Set a default path relative to current dir for the posix target.
Running make posixrun will create the required directoroes and then run
mainapp from its build location.
PX4_ROOTFSDIR is set to nothing for nuttx.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The addition of the hrt workqueue required adding some additional files to
unittests/CMakeLists.txt
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The tone_alarm simulator was added to rc.S and the warning output for a
hrt_timer with a 0 expiry times was disabled.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>