aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2017-08-29 08:46:09 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2017-08-29 08:46:09 +0000
commit8375f4c4e7c460a30e20f7d5b1bb1d39667100f8 (patch)
tree474e1408cee97077f0bca11d3ff539e933879f00
parent7006611bdc3ff9113cccb10b8f6e2102563f9ac3 (diff)
downloadChibiOS-8375f4c4e7c460a30e20f7d5b1bb1d39667100f8.tar.gz
ChibiOS-8375f4c4e7c460a30e20f7d5b1bb1d39667100f8.tar.bz2
ChibiOS-8375f4c4e7c460a30e20f7d5b1bb1d39667100f8.zip
Added an argument to PAL event callbacks.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10504 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r--os/hal/include/hal.h4
-rw-r--r--os/hal/include/hal_pal.h18
-rw-r--r--readme.txt2
3 files changed, 14 insertions, 10 deletions
diff --git a/os/hal/include/hal.h b/os/hal/include/hal.h
index d1a5f111e..f57bfa5b0 100644
--- a/os/hal/include/hal.h
+++ b/os/hal/include/hal.h
@@ -181,12 +181,12 @@
/**
* @brief HAL version string.
*/
-#define HAL_VERSION "5.0.0"
+#define HAL_VERSION "6.0.0"
/**
* @brief HAL version major number.
*/
-#define CH_HAL_MAJOR 5
+#define CH_HAL_MAJOR 6
/**
* @brief HAL version minor number.
diff --git a/os/hal/include/hal_pal.h b/os/hal/include/hal_pal.h
index 8162ecf11..4369305c4 100644
--- a/os/hal/include/hal_pal.h
+++ b/os/hal/include/hal_pal.h
@@ -124,7 +124,7 @@
/**
* @brief Type of a PAL event callback.
*/
-typedef void (*palcallback_t)(void);
+typedef void (*palcallback_t)(void *arg);
#include "hal_pal_lld.h"
@@ -526,14 +526,15 @@ typedef struct {
* @param[in] pad pad number within the port
* @param[in] mode pad event mode
* @param[in] callback event callback function
+ * @param[in] arg callback argument
*
* @iclass
*/
#if !defined(pal_lld_enablepadevent) || defined(__DOXYGEN__)
-#define palPadEnableEventI(port, pad, mode, callback)
+#define palPadEnableEventI(port, pad, mode, callback, arg)
#else
-#define palPadEnableEventI(port, pad, mode, callback) \
- pal_lld_enablepadevent(port, pad, mode, callback)
+#define palPadEnableEventI(port, pad, mode, callback, arg) \
+ pal_lld_enablepadevent(port, pad, mode, callback, arg)
#endif
/**
@@ -669,15 +670,16 @@ typedef struct {
* @param[in] line line identifier
* @param[in] mode line event mode
* @param[in] callback event callback function
+ * @param[in] arg callback argument
*
* @iclass
*/
#if !defined(pal_lld_lineenableevent) || defined(__DOXYGEN__)
-#define palLineEnableEventI(line, mode, callback) \
- palPadEnableEventI(PAL_PORT(line), PAL_PAD(line), mode, callback)
+#define palLineEnableEventI(line, mode, callback, arg) \
+ palPadEnableEventI(PAL_PORT(line), PAL_PAD(line), mode, callback, arg)
#else
-#define palLineEnableEventI(line, mode, callback) \
- pal_lld_lineenableevent(line, mode, callback)
+#define palLineEnableEventI(line, mode, callback, arg) \
+ pal_lld_lineenableevent(line, mode, callback, arg)
#endif
/**
diff --git a/readme.txt b/readme.txt
index fa87282d2..95eb196b1 100644
--- a/readme.txt
+++ b/readme.txt
@@ -89,6 +89,8 @@
*****************************************************************************
*** Next ***
+- NEW: Added an argument to PAL events callback. API changed thus this
+ causes a major number change in HAL.
- NEW: Added shared Eclipse debug configurations for OpenOCD under
./tools/eclipse/debug. Now it is no more required to re-create
those each time a new workspace is created, just import the global