diff mbox

[U-Boot,4/8] GEN: Add a poll function to monitor events

Message ID 1352197125-32321-5-git-send-email-hatim.rv@samsung.com
State Superseded
Headers show

Commit Message

Hatim RV Nov. 6, 2012, 10:18 a.m. UTC
From: Akshay Saraswat <akshay.s@samsung.com>

Add a generic polling function to continuously monitor events and
trigger actions corresponding to them.

Signed-off-by: Akshay Saraswat <akshay.s@samsung.com>

Comments

Simon Glass Nov. 7, 2012, 12:05 a.m. UTC | #1
Hi,

On Tue, Nov 6, 2012 at 2:18 AM, Hatim Ali <hatim.rv@samsung.com> wrote:
> From: Akshay Saraswat <akshay.s@samsung.com>
>
> Add a generic polling function to continuously monitor events and
> trigger actions corresponding to them.
>
> Signed-off-by: Akshay Saraswat <akshay.s@samsung.com>

For mainline I think the GEN tag should be removed.

>
> diff --git a/README b/README
> index 2572add..72b3b67 100644
> --- a/README
> +++ b/README
> @@ -2814,6 +2814,13 @@ Configuration Settings:
>                 the application (usually a Linux kernel) when it is
>                 booted
>
> +- CONFIG_BOARD_POLL
> +       There are various scenarios in which parallel-thread like
> +       polling is required to monitor status of variety of devices.
> +       For such situations CONFIG_BOARD_POLL shall be enabled
> +       and funtion call board_poll_devices() from console_tstc()
> +       will then poll for the device status as defined inside function.
> +
>  - CONFIG_SYS_BAUDRATE_TABLE:
>                 List of legal baudrate settings for this board.
>
> diff --git a/common/console.c b/common/console.c
> index 1177f7d..d320b9b 100644
> --- a/common/console.c
> +++ b/common/console.c
> @@ -117,6 +117,11 @@ static int console_tstc(int file)
>         int i, ret;
>         struct stdio_dev *dev;
>
> +#if defined CONFIG_BOARD_POLL
> +       /* Generic polling function */
> +       board_poll_devices();
> +#endif
> +
>         disable_ctrlc(1);
>         for (i = 0; i < cd_count[file]; i++) {
>                 dev = console_devices[file][i];
> diff --git a/include/common.h b/include/common.h
> index b23e90b..cba2e3b 100644
> --- a/include/common.h
> +++ b/include/common.h
> @@ -782,6 +782,14 @@ void       clear_ctrlc (void);     /* clear the Control-C condition */
>  int    disable_ctrlc (int);    /* 1 to disable, 0 to enable Control-C detect */
>
>  /*
> + * A generic polling function
> + * This will be called to poll for some events,
> + * In this case this will be called form console_tstc() to monitor

typo: form

> + * temperatur of the SOC
> + */
> +void board_poll_devices(void);
> +
> +/*
>   * STDIO based functions (can always be used)
>   */
>  /* serial stuff */
> --
> 1.7.2.3
>

Regards,
Simon
diff mbox

Patch

diff --git a/README b/README
index 2572add..72b3b67 100644
--- a/README
+++ b/README
@@ -2814,6 +2814,13 @@  Configuration Settings:
 		the application (usually a Linux kernel) when it is
 		booted
 
+- CONFIG_BOARD_POLL
+	There are various scenarios in which parallel-thread like
+	polling is required to monitor status of variety of devices.
+	For such situations CONFIG_BOARD_POLL shall be enabled
+	and funtion call board_poll_devices() from console_tstc()
+	will then poll for the device status as defined inside function.
+
 - CONFIG_SYS_BAUDRATE_TABLE:
 		List of legal baudrate settings for this board.
 
diff --git a/common/console.c b/common/console.c
index 1177f7d..d320b9b 100644
--- a/common/console.c
+++ b/common/console.c
@@ -117,6 +117,11 @@  static int console_tstc(int file)
 	int i, ret;
 	struct stdio_dev *dev;
 
+#if defined CONFIG_BOARD_POLL
+	/* Generic polling function */
+	board_poll_devices();
+#endif
+
 	disable_ctrlc(1);
 	for (i = 0; i < cd_count[file]; i++) {
 		dev = console_devices[file][i];
diff --git a/include/common.h b/include/common.h
index b23e90b..cba2e3b 100644
--- a/include/common.h
+++ b/include/common.h
@@ -782,6 +782,14 @@  void	clear_ctrlc (void);	/* clear the Control-C condition */
 int	disable_ctrlc (int);	/* 1 to disable, 0 to enable Control-C detect */
 
 /*
+ * A generic polling function
+ * This will be called to poll for some events,
+ * In this case this will be called form console_tstc() to monitor
+ * temperatur of the SOC
+ */
+void board_poll_devices(void);
+
+/*
  * STDIO based functions (can always be used)
  */
 /* serial stuff */