[U-Boot] [PATCH 4/8] Add a poll function to monitor events
Wolfgang Denk
wd at denx.de
Tue Dec 11 13:39:14 CET 2012
Dear Hatim Ali,
In message <1355223289-15685-5-git-send-email-hatim.rv at samsung.com> you wrote:
> From: Akshay Saraswat <akshay.s at samsung.com>
>
> Adding a generic polling function to continuously monitor events and
> trigger actions corresponding to them.
>
> Signed-off-by: Akshay Saraswat <akshay.s at samsung.com>
> Acked-by: Simon Glass <sjg at chromium.org>
>
> diff --git a/README b/README
> index 037513a..0e4083c 100644
> --- a/README
> +++ b/README
> @@ -2841,6 +2841,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.
Sorry, but I dislike this, for a number of reasons.
1) There is, and has always been, a very basic design decision, that
U-Boot is strictly single-tasking, i. e. we don't have any kind of
"background activities" goind on. Your introduction of a device
polling mechanism violates this principle.
I don't say that this is unacceptable, but we have to be aware that
this is a far-reaching decision, so we should consider it very
carefully.
If anything like this gets implemented, it has to be done in a way
that will be general enough to be useful to others as well.
2) U-Boot is a boot loader, not an OS. Do we really need continuous
temperature management in U-Boot? I think not. After all, our
main purpose is to boot an OS, and do that as fast as possible.
The majority of users will see U-Boot running only for a few
milliseconds, and only when they boot the device - which may be
very seldom.
So what exactly do we need this for?
3) Your hooking of a device polling into console_tstc() is broken by
design. It may be sufficient for the specific use case you have
in mind here, but it is totally useless for any other purpose.
This needs a lot of additional thought, and major changes to the
implementation.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Without facts, the decision cannot be made logically. You must rely
on your human intuition.
-- Spock, "Assignment: Earth", stardate unknown
More information about the U-Boot
mailing list