On 04/20/2015 01:13 PM, Sascha Hauer wrote: > On Mon, Apr 20, 2015 at 10:43:37AM +0200, Marc Kleine-Budde wrote: >> This patch factors out the wait-for-key-press loop from the shell command >> "timeout" into a sparate file, so that it can be used from C, too. >> >> Signed-off-by: Marc Kleine-Budde >> --- >> commands/Kconfig | 1 + >> commands/timeout.c | 62 ++++++++++----------------------------------- >> common/Kconfig | 3 +++ >> common/Makefile | 1 + >> common/simple_timeout.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++ >> include/simple_timeout.h | 11 ++++++++ >> 6 files changed, 95 insertions(+), 49 deletions(-) >> create mode 100644 common/simple_timeout.c >> create mode 100644 include/simple_timeout.h >> >> diff --git a/commands/Kconfig b/commands/Kconfig >> index 847ff76d1d8b..1c9083381fac 100644 >> --- a/commands/Kconfig >> +++ b/commands/Kconfig >> @@ -1487,6 +1487,7 @@ config CMD_READLINE >> config CMD_TIMEOUT >> tristate >> prompt "timeout" >> + select SIMPLE_TIMEOUT > > Since the linker throws away unused functions anyway I think we don't > need an option for this. > >> +#include >> +#include >> +#include >> +#include >> +#include >> + >> +int is_simple_timeout(int timeout_s, unsigned flags, char *out_key) > > I don't like the name very much since we already have a is_timeout > function which does something completely different. Also is_xxx_timeout > seems to imply that this function doesn't wait but only returns a > status. > > How about console_countdown() or similar? What about the return value? Return -EINTR + set out_key on interruption by user, return 0 otherwise? Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |