
Hi Wolfgang, Heinrich, Heiko,
On 20/03/2020 09:08, Wolfgang Denk wrote:
Dear Heinrich,
In messagea1b7a877-e950-b09a-a0f6-2c9c9cb7e1fb@gmx.de you wrote:
To me this sounds very much like what you are adding here (plus a few features more). Does it make sense to unify such code?
It seems you are relating to https://lore.kernel.org/lkml/844oyrqvvb.fsf@sauna.l.org/t/
No, I'm not. I was talking of my own code from many, many years ago.
ramoops in Linux is exactly doing what was suggested in 2009. You can find the Documentation/admin-guide/ramoops.rst
We had this in U-Boot long before that time. It was a key requirement when we added POST support in 2002.
git grep -GHrn 'shared log' finds nothing in U-Boot. So if any part of the old implementation in U-Boot exists, could you, please, point us to the coding.
The shared log buffer support was added by commit 56f94be3ef63:
commit 56f94be3ef63732384063e110277ed89701b6471 (tag: LABEL_2002_11_05_1735) Author: Wolfgang Denk <wdenk> Date: Tue Nov 5 16:35:14 2002 +0000
* Add support for log buffer which can be passed to Linux kernel's syslog mechanism; used especially for POST results. * Patch by Klaus Heydeck, 31 Oct 2002: Add initial support for kup4k board
The code was mainly in common/cmd_log.c, but this got heahily rewritten and is now in cmd/log.c ; apparently this got lost (like the original copyright, sic!) when Simon modified / rewrote this driver.
For history, try: git log --follow -- common/cmd_log.c
If the original design never made it into Linux and there is an established Linux interface since 2011, I would plead to eliminate any remaining non-compliant coding from U-Boot should it exist.
I understand what Linus has is one-way, only focussing on crash dump, i. e. it does not allow to pass information from U-Boot to Linux?
Yes, currently it is not possible to pass information from U-Boot to Linux. But, PStore does not only store crash dump, but also console, ftrace and user space logs.
It may be possible to add a "bootloader" storage space to PStore.
Best regards,
Frédéric Danis