263 Commits

Author SHA1 Message Date
Lorenz Meier
e5fad077df Merge master into linux 2015-05-18 23:28:57 +02:00
Lorenz Meier
c06ba047e2 param lib: Fix index used routine 2015-05-18 23:15:20 +02:00
Lorenz Meier
635b7fa01d param API: Ensure info count method is called 2015-05-18 00:17:09 +02:00
Lorenz Meier
2f5e27c180 param lib: Fix code style 2015-05-17 23:08:10 +02:00
Lorenz Meier
ff4be81976 Param: do not set a param as used just because its value is non-default. 2015-05-17 23:05:32 +02:00
Lorenz Meier
e279e8bb2a Fix param changed count logic, speed up logic for unused params 2015-05-17 22:58:52 +02:00
Mark Charlebois
36f5d47ed9 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	src/modules/commander/gyro_calibration.cpp
	src/modules/mavlink/mavlink_ftp.cpp
2015-05-16 15:04:38 -07:00
David Sidrane
c6bc3153ef Reviewd - fixed indexing that was wrong, code clean up ran astyle 2015-05-15 03:58:04 -10:00
Lorenz Meier
535eb7dbd9 param lib: Fix use of array size 2015-05-15 09:11:28 +02:00
David Sidrane
a0af91d05c Missing Brace 2015-05-14 18:15:10 -10:00
David Sidrane
6667e6e078 Update param.c
Not used px4_macros.h anyway
2015-05-14 18:03:23 -10:00
David Sidrane
8e9fdc6147 Use stdlib's calloc for compaiblity 2015-05-14 17:03:10 -10:00
David Sidrane
dc4d5619ea Reduced the amount of memory used by params to only that that is needed
Conflicts:
	src/modules/systemlib/param/param.c
2015-05-14 17:02:45 -10:00
tumbili
b6441d2966 implemented new mixer strategy 2015-05-10 00:42:53 +02:00
Mark Charlebois
a0d548db9a Changed circuit_breaker to not use px4.h
The inclusion of px4.h requires C++ features not supported in the
Hexagon toolchain. The features are not required so the required
headers are used instead.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-07 11:35:01 -07:00
Mark Charlebois
6db77dc8bb Experimental virtual file support
QuRT does not have a filesystem, so creating a virtual filesystem
that could be implemented as an in-memory file or a remote file
over fastRPC.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 22:12:45 -07:00
Mark Charlebois
c5237f7f6f Removed extra abstracton layer in systemlib
The calls to task_spawn_cmd, kill_all, and systemreset  were wrappers
around the px4_{task_spawn_cmd|kill_all|systemreset} implementations.

Removed the wrappers and changed all calls to the px4_ equivalents.

NuttX specific code was moved into px4_tasks.h

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 14:43:11 -07:00
Mark Charlebois
3654aec3a5 POSIX: ported px4_daemon_app
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 14:34:23 -07:00
Mark Charlebois
190814bc97 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	src/drivers/rgbled/rgbled.cpp
	src/modules/commander/PreflightCheck.cpp
	src/modules/commander/airspeed_calibration.cpp
	src/modules/commander/calibration_routines.cpp
	src/modules/commander/gyro_calibration.cpp
	src/modules/commander/mag_calibration.cpp
	src/modules/mc_att_control/mc_att_control_main.cpp
2015-04-28 11:48:26 -07:00
Lorenz Meier
ed12d9c733 systemlib: Fix param used counting 2015-04-27 09:03:35 +02:00
Lorenz Meier
36ca62ece9 param lib: Provide used index lookup 2015-04-26 14:01:42 +02:00
Mark Charlebois
a1332e699c QuRT and POSIX changes - part 5
Last part of the main QuRT related changes

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 01:39:25 -07:00
Mark Charlebois
187f13cd70 QuRT and POSIX changes - part 4
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 01:24:31 -07:00
Mark Charlebois
f63ab3d5e3 Merge branch 'master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	makefiles/firmware.mk
2015-04-22 10:38:46 -07:00
Don Gagne
08123df83a Remove PX4_PARAM_DEFINE_* usage to get better meta data 2015-04-21 12:32:01 -07:00
Mark Charlebois
f3b5076d70 Linux to posix conversion
Changed "linux" target to "posix". Most of the changes are shared with
QuRT and with OSX. The Linux specific parts are in for i2c which uses
<linux/i2c.h> and <linux/i2c-dev.h>.

There is also a check for __PX4_LINUX in mavlink for a tty ioctl that is
not supported.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-21 09:53:09 -07:00
Mark Charlebois
bba26c3430 Linux: enabled commander module
The commander module now compiles for Linux.

state_machine_helper_linux.cpp iterates over the virtual devices vs
all devices under /dev as per NuttX when disabling publishing.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:37:50 -07:00
Mark Charlebois
ec1b77c9e1 Linux: GCC static data is 16byte aligned, messes up param
GCC 4.8 and higher implement 16 byte static data alignment on 64-bit.
This means that the 24-byte param_info_s variables are 16 byte aligned
by GCC and that messes up the assumption that the address of the second
parameter is at &param[0]+sizeof(param[0]).
When compiled with clang it is true, with gcc is is not true.

See https://llvm.org/bugs/show_bug.cgi?format=multiple&id=18006

The fix is needed for GCC >=4.8 only. Clang works fine without this.

Added __attribute__((aligned(16))) to first member of param_info_s.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:35:48 -07:00
Mark Charlebois
2cd44a24ea Linux: Added linker script support for param and added mc_att_control
Added linker script to resolve __param_start and __param_end.

Added mc_att_control to list of supported builtins.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:16:26 -07:00
Mark Charlebois
7b0783a070 Added MuORB based on virtual CDev implementation
uORB module now compiles and runs for Linux using the
virtual CDev implementation.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:18 -07:00
Mark Charlebois
5084a61f0e Abstractions to compile systemlib for Linux and Nuttx
Modified uint32_t casts of pointers to unsigned long for portability.
It otherwise breaks on x86_64.

Added _PX4_IOC to handle the conflice between _IOC on Linux and NuttX.

Removed use of px4::ok() because it cannot be used in a thread based
implementation. Changed to use px4::AppMgr which uses ok() on ROS.

Removed up_cxxinitialize.c from Linux build.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois
e3f152b5c1 Changed main_t to px4_main_t in systemlib.h
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:55:41 -07:00
Mark Charlebois
9758112e31 Use px4_config.h instead of nuttx/config.h
Modified code to use OS independent header file for config settings.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:55:41 -07:00
Lorenz Meier
5264eb23b4 Revert "Removed usage of PX4_PARAM_DEFINE_* macros"
This reverts commit 5fe7f76691b80a1ea488d7ad740be5e6b4520643.
2015-04-18 11:39:13 +02:00
Don Gagne
5fe7f76691 Removed usage of PX4_PARAM_DEFINE_* macros
This way the meta data parser can pick up default values. There was no
usage of the default value defines in any of the code.
2015-04-18 11:13:04 +02:00
Roman Bapst
555e96a37a fixed publication of mixer limit flags 2015-04-10 20:26:38 +02:00
Lorenz Meier
d6f7c9b8b4 systemlib: Implement active param list fully 2015-03-28 13:07:01 -07:00
Lorenz Meier
fe12bffefa param subsystem: Only send the instantiated parameters via telemetry 2015-03-28 13:07:01 -07:00
Daniel Agar
8aae66b893 trivial code style cleanup round 2 2015-03-27 23:38:58 -04:00
Anton Babushkin
95be7c2289 Fix limiting in mc mixer 2015-03-21 16:12:33 +01:00
Daniel Agar
c2abb0f82a fix code style if trivial one line difference 2015-03-19 23:49:36 +01:00
Lorenz Meier
daab64f9e4 Param system: Introduce global parameter version param 2015-03-08 19:17:56 +01:00
Lorenz Meier
aef041e032 Syslib: Add support for setting parameters without global notification 2015-02-15 19:52:01 +01:00
Andreas Antener
a7580a1eae added actual tests and fixed reset-exclude funtction 2015-02-10 08:39:46 +01:00
Andreas Antener
5cccc01cd4 added unit test directive to switch out parameter storage 2015-02-10 08:39:46 +01:00
Andreas Antener
13039f9e69 hard-code parameter array for verification 2015-02-10 08:39:46 +01:00
Andreas Antener
a73a095c1d added test and stub 2015-02-10 08:39:46 +01:00
Andreas Antener
f8ff5b617b updated comparison 2015-02-10 08:39:46 +01:00
Andreas Antener
f2c1d6d66d implemented reset excludes in systemcmd "param", updated autoconfig parameter doc 2015-02-10 08:39:46 +01:00
Andreas Antener
7c63be7450 implemented reset with excludes 2015-02-10 08:38:13 +01:00