[PATCH 3/5] timeout: factor out wait-for-key-press loop into separate file
Sascha Hauer
s.hauer at pengutronix.de
Wed Apr 22 01:23:14 PDT 2015
On Wed, Apr 22, 2015 at 09:49:53AM +0200, Marc Kleine-Budde wrote:
> 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 <mkl at pengutronix.de>
> >> ---
> >> 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 <clock.h>
> >> +#include <command.h>
> >> +#include <errno.h>
> >> +#include <simple_timeout.h>
> >> +#include <stdio.h>
> >> +
> >> +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?
Sounds good.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list