From 0f8c6b90f7c4e43beaa83ce2e694980952a79b9f Mon Sep 17 00:00:00 2001 From: Giovanni Di Sirio Date: Sun, 2 Dec 2018 15:09:24 +0000 Subject: New buffers performance tuning option added. git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@12456 110e8d01-0319-4d1e-a829-52ad28d1bb01 --- os/hal/include/hal_buffers.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'os/hal/include/hal_buffers.h') diff --git a/os/hal/include/hal_buffers.h b/os/hal/include/hal_buffers.h index 164ab82bc..9c5ea42d6 100644 --- a/os/hal/include/hal_buffers.h +++ b/os/hal/include/hal_buffers.h @@ -33,10 +33,24 @@ /* Driver pre-compile time settings. */ /*===========================================================================*/ +/** + * @brief Maximum size of blocks copied in critical sections. + * @note Increasing this value increases performance at expense of + * IRQ servicing efficiency. + * @note It must be a power of two. + */ +#if !defined(BUFFERS_CHUNKS_SIZE) || defined(__DOXYGEN__) +#define BUFFERS_CHUNKS_SIZE 64 +#endif + /*===========================================================================*/ /* Derived constants and error checks. */ /*===========================================================================*/ +#if (BUFFERS_CHUNKS_SIZE & (BUFFERS_CHUNKS_SIZE - 1)) != 0 +#error "BUFFERS_CHUNKS_SIZE must be a power of two" +#endif + /*===========================================================================*/ /* Driver data structures and types. */ /*===========================================================================*/ -- cgit v1.2.3