From: Graeme Russ <graeme.russ@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH V4] console: Implement pre-console buffer
Date: Tue, 27 Sep 2011 21:22:36 +1000 [thread overview]
Message-ID: <4E81B1FC.8020607@gmail.com> (raw)
In-Reply-To: <CANy1bu+CbmcBhuyxJsFaRujBFy3B2QVPR6Aw=g1vQ0_mSmEcOQ@mail.gmail.com>
Hi Vadim,
On 27/09/11 08:50, Vadim Bendebury wrote:
> On Wed, Aug 31, 2011 at 5:58 AM, Graeme Russ <graeme.russ@gmail.com> wrote:
>> Allow redirection of console output prior to console initialisation to a
>> temporary buffer.
>>
>> To enable this functionality, the board configuration file must define:
>> - CONFIG_PRE_CONSOLE_BUFFER - Enable pre-console buffer
>> - CONFIG_PRE_CON_BUF_ADDR - Base address of pre-console buffer
>> - CONFIG_PRE_CON_BUF_SZ - Size of pre-console buffer (in bytes)
>>
>> The pre-console buffer will buffer the last CONFIG_PRE_CON_BUF_SZ bytes
>> Any earlier characters are silently dropped.
>>
>> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
[snip]
>
> I know I am late to the party here, but all of a sudden I need to
> implement something similar, albeit slightly different:
better late than never :)
> - the memory could be allocated by the "cold bootprom" which starts u-boot;
Typically, the pre-console buffer would exist in the CPU cache (or similar
non-(S)DRAM location)
> - all console output needs to be saved, not just until the moment when
> the console hardware is initialized.
That could be a _huge_ amount of info and highly variable. Remember, the
available space for a pre-console buffer could be tiny. If this is needed,
then maybe look at forking stdio instead (one branch to console, one branch
to you console buffer)
> I could work on top of this patch and send another one once this one
> has been accepted. May I suggest an improvement though:
>
> is it really necessary to store the index in the global data
> structure. This requires editing all these .h files adding another
> unsighty conditionally compiled field. Why not to store the index as
> the first word in the buffer allocated for this temp storage?
I like this - but instead:
struct pre_con_buff {
int idx;
char *buffer[CONFIG_PRE_CON_BUF_SZ];
}
struct pre_con_buff *pre_con_buffer;
pre_con_buffer = (struct pre_con_buff *)CONFIG_PRE_CON_BUF_ADDR;
Regards,
Graeme
next prev parent reply other threads:[~2011-09-27 11:22 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-29 12:14 [U-Boot] [PATCH 0/2] console: Squelch and pre-console buffer Graeme Russ
2011-08-29 12:14 ` [U-Boot] [PATCH 1/2] console: Squelch pre-console output in console functions Graeme Russ
2011-08-30 17:16 ` Mike Frysinger
2011-08-30 19:01 ` Wolfgang Denk
2011-09-21 23:21 ` Simon Glass
2011-10-01 19:54 ` Wolfgang Denk
2011-08-29 12:14 ` [U-Boot] [PATCH 2/2] console: Implement pre-console buffer Graeme Russ
2011-08-30 12:49 ` [U-Boot] [PATCH V2] " Graeme Russ
2011-08-30 17:19 ` Mike Frysinger
2011-08-30 19:45 ` Simon Glass
2011-08-30 19:52 ` Wolfgang Denk
2011-08-30 19:58 ` Mike Frysinger
2011-08-30 20:08 ` Wolfgang Denk
2011-08-30 20:18 ` Simon Glass
2011-08-30 20:57 ` Wolfgang Denk
2011-08-30 21:02 ` Simon Glass
2011-08-30 23:00 ` Graeme Russ
2011-08-30 23:39 ` Graeme Russ
2011-08-31 2:46 ` Mike Frysinger
2011-08-30 20:07 ` Simon Glass
2011-08-31 12:35 ` [U-Boot] (no subject) Graeme Russ
2011-08-31 12:38 ` Graeme Russ
2011-08-31 12:58 ` [U-Boot] [PATCH V4] console: Implement pre-console buffer Graeme Russ
2011-08-31 15:09 ` Mike Frysinger
2011-08-31 21:15 ` Graeme Russ
2011-08-31 21:33 ` Mike Frysinger
2011-08-31 21:59 ` Graeme Russ
2011-08-31 22:44 ` Mike Frysinger
2011-08-31 22:51 ` Graeme Russ
2011-08-31 16:58 ` Simon Glass
2011-08-31 19:18 ` Wolfgang Denk
2011-08-31 20:05 ` Simon Glass
2011-08-31 20:22 ` Mike Frysinger
2011-08-31 20:26 ` Simon Glass
2011-09-01 10:48 ` [U-Boot] [PATCH V5] " Graeme Russ
2011-09-01 10:52 ` Graeme Russ
2011-09-01 14:02 ` Mike Frysinger
2011-09-01 18:51 ` Simon Glass
2011-09-01 23:34 ` Graeme Russ
2011-09-02 2:41 ` Mike Frysinger
2011-09-02 2:58 ` Simon Glass
2011-09-21 23:18 ` Simon Glass
2011-10-04 5:30 ` Simon Glass
2011-10-05 18:50 ` Wolfgang Denk
2011-09-26 22:50 ` [U-Boot] [PATCH V4] " Vadim Bendebury
2011-09-27 11:22 ` Graeme Russ [this message]
2011-09-27 14:55 ` Vadim Bendebury
2011-09-29 23:15 ` Graeme Russ
2011-09-29 23:39 ` Vadim Bendebury
2011-09-29 23:47 ` Graeme Russ
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E81B1FC.8020607@gmail.com \
--to=graeme.russ@gmail.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox