From f8542c86b607e9bcc8bb7aac32edaceb876f8e30 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 14 Jan 2018 17:25:23 +1100 Subject: [PATCH] AP_Terrain: added support for AP_Terrain for ChibiOS --- libraries/AP_Terrain/AP_Terrain.cpp | 4 +++- libraries/AP_Terrain/AP_Terrain.h | 2 +- libraries/AP_Terrain/TerrainIO.cpp | 8 +++++++- libraries/AP_Terrain/TerrainUtil.cpp | 4 +++- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/libraries/AP_Terrain/AP_Terrain.cpp b/libraries/AP_Terrain/AP_Terrain.cpp index e4231b08d6..28760df9cc 100644 --- a/libraries/AP_Terrain/AP_Terrain.cpp +++ b/libraries/AP_Terrain/AP_Terrain.cpp @@ -25,10 +25,12 @@ #include #include +#if HAL_OS_POSIX_IO #include -#include #include #include +#endif +#include #include extern const AP_HAL::HAL& hal; diff --git a/libraries/AP_Terrain/AP_Terrain.h b/libraries/AP_Terrain/AP_Terrain.h index 72315a56a2..a5608c69b6 100644 --- a/libraries/AP_Terrain/AP_Terrain.h +++ b/libraries/AP_Terrain/AP_Terrain.h @@ -18,7 +18,7 @@ #include #include -#if HAL_OS_POSIX_IO && defined(HAL_BOARD_TERRAIN_DIRECTORY) +#if (HAL_OS_POSIX_IO || HAL_OS_FATFS_IO) && defined(HAL_BOARD_TERRAIN_DIRECTORY) #define AP_TERRAIN_AVAILABLE 1 #else #define AP_TERRAIN_AVAILABLE 0 diff --git a/libraries/AP_Terrain/TerrainIO.cpp b/libraries/AP_Terrain/TerrainIO.cpp index 0ab4245b8b..c1e684bf28 100644 --- a/libraries/AP_Terrain/TerrainIO.cpp +++ b/libraries/AP_Terrain/TerrainIO.cpp @@ -27,11 +27,13 @@ #include #include +#if HAL_OS_POSIX_IO #include -#include #include #include #include +#endif +#include extern const AP_HAL::HAL& hal; @@ -196,7 +198,11 @@ void AP_Terrain::open_file(void) if (fd != -1) { ::close(fd); } +#if HAL_OS_POSIX_IO fd = ::open(file_path, O_RDWR|O_CREAT|O_CLOEXEC, 0644); +#else + fd = ::open(file_path, O_RDWR|O_CREAT|O_CLOEXEC); +#endif if (fd == -1) { #if TERRAIN_DEBUG hal.console->printf("Open %s failed - %s\n", diff --git a/libraries/AP_Terrain/TerrainUtil.cpp b/libraries/AP_Terrain/TerrainUtil.cpp index e006448288..24d64ab3d9 100644 --- a/libraries/AP_Terrain/TerrainUtil.cpp +++ b/libraries/AP_Terrain/TerrainUtil.cpp @@ -27,10 +27,12 @@ #include #include +#if HAL_OS_POSIX_IO #include -#include #include #include +#endif +#include #include extern const AP_HAL::HAL& hal;