From 9d43d74ee3fb1b8be8150e9b44c0e7cee1a3cf5c Mon Sep 17 00:00:00 2001 From: jifl Date: Thu, 12 Apr 2007 01:30:53 +0000 Subject: [PATCH] Document new sys_arch_mbox_tryfetch requirement for ports --- doc/sys_arch.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/doc/sys_arch.txt b/doc/sys_arch.txt index b2c45e03..b6103ac3 100644 --- a/doc/sys_arch.txt +++ b/doc/sys_arch.txt @@ -98,6 +98,19 @@ The following functions must be implemented by the sys_arch: Note that a function with a similar name, sys_mbox_fetch(), is implemented by lwIP. + +- u32_t sys_arch_mbox_tryfetch(sys_mbox_t mbox, void **msg) + + This is similar to sys_arch_mbox_fetch, however if a message is not + present in the mailbox, it immediately returns with the code + SYS_MBOX_EMPTY. + + To allow for efficient implementations, this can be defined as a + function-like macro in sys_arch.h instead of a normal function. For + example, a naive implementation could be: + #define sys_arch_mbox_tryfetch(mbox,msg) \ + sys_arch_mbox_fetch(mbox,msg,1) + although this would introduce unnecessary delays. - struct sys_timeouts *sys_arch_timeouts(void)