From: "Pali Rohár" <pali.rohar@gmail.com> To: "Jean-Christophe PLAGNIOL-VILLARD" <plagnioj@jcrosoft.com> Cc: Rob Herring <robherring2@gmail.com>, Nicolas Pitre <nico@fluxnic.net>, Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>, "Russell King - ARM Linux" <linux@arm.linux.org.uk>, Tony Lindgren <tony@atomide.com>, Sebastian Reichel <sre@debian.org>, Will Deacon <will.deacon@arm.com>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Pavel Machek <pavel@ucw.cz>, "linux-arm-kernel@lists.infradead.org" <linux-arm-kernel@lists.infradead.org> Subject: Re: [PATCH] ARM: /proc/atags: Export also for DT Date: Wed, 28 Jan 2015 20:33:53 +0100 [thread overview] Message-ID: <201501282033.53144@pali> (raw) In-Reply-To: <0ED606B9-34EB-4FEC-BCC1-19BC60BCF768@jcrosoft.com> [-- Attachment #1: Type: Text/Plain, Size: 3109 bytes --] On Wednesday 28 January 2015 19:00:25 Jean-Christophe PLAGNIOL- VILLARD wrote: > > On Jan 28, 2015, at 11:57 PM, Rob Herring > > <robherring2@gmail.com> wrote: > > > > On Wed, Jan 28, 2015 at 8:33 AM, Nicolas Pitre <nico@fluxnic.net> wrote: > >> On Wed, 28 Jan 2015, Pali Rohár wrote: > >>> On Wednesday 28 January 2015 01:50:33 Tony Lindgren wrote: > >>>> On omaps, the bootrom passes the bootreason in r1 to the > >>>> bootloader that can do whatever it wants with it. We > >>>> could maybe pass it in the kernel cmdline to the > >>>> watchdog driver for user space? > >>> > >>> Not truth for N900. Bootreason depends on PRM_RSTST omap > >>> register, state of vbat charger pins, time how long was > >>> power key pressed, R&D data stored in CAL partition and > >>> other undocumented registers for omap HS devices. I > >>> already tried to implement at least some subset of it in > >>> userspace (or kernel), but it is impossible because NOLO > >>> bootloader clear status of PRM_RSTST register. > >>> > >>> There is also copy of PRM_RSTST register stored at address > >>> 0x4020FFB8 (tracing data) but that address is rewritten > >>> (probably by kernel), so we really cannot implement > >>> reading bootreason in kernel. > >>> > >>> But in early stage in uboot it is possible to read > >>> 0x4020FFB8 address and get some part of bootreason. But > >>> still PRM_RSTST is not enough! > >>> > >>> I would be happy if DT kernel can export /proc/atags file > >>> with ATAGs passed by bootloader. It would be enough for > >>> me. In userspace I can parse content and do what is > >>> needed. > >> > >> What about defining a DT boot reason property instead? > >> Maybe it already exists? If not, it's something that could > >> certainly be generically used on other platforms too. > > > > I'm fine with that, but we just need to have a standard > > kernel userspace interface in addition to something like > > /proc/device-tree/bootreason. Perhaps this can be the > > default implementation for the watchdog dev. Someday when > > we decide DT is crap and have a new boot interface, we'll > > have people relying on /proc/device-tree. I hope to be > > retired when that happens… > > but if we try to do this generic, where will you store the > boot mode > > I mean where the SoC boot from > > useful to for the Userspace to known where is the bootloader > in case of multi boot mode > > Best Regards, > J. > > > Rob > > I think in this discussion we are mixing two parts which should be designed & solved separately. 1) How should bootloader tell to kernel what is bootreason 2) How should kernel export bootreason to userspace In modern x86 laptop world bootreason can be requested from BIOS/WMI/firmware by special proprietary vendor specific command. So we should not lock bootreason to DT or ATAG only. Or only bootloader --> kernel transition. For other platforms, board or even architectures (x86) there can runtime way (for kernel) how to read bootreason... -- Pali Rohár pali.rohar@gmail.com [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 198 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: pali.rohar@gmail.com (Pali Rohár) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH] ARM: /proc/atags: Export also for DT Date: Wed, 28 Jan 2015 20:33:53 +0100 [thread overview] Message-ID: <201501282033.53144@pali> (raw) In-Reply-To: <0ED606B9-34EB-4FEC-BCC1-19BC60BCF768@jcrosoft.com> On Wednesday 28 January 2015 19:00:25 Jean-Christophe PLAGNIOL- VILLARD wrote: > > On Jan 28, 2015, at 11:57 PM, Rob Herring > > <robherring2@gmail.com> wrote: > > > > On Wed, Jan 28, 2015 at 8:33 AM, Nicolas Pitre <nico@fluxnic.net> wrote: > >> On Wed, 28 Jan 2015, Pali Roh?r wrote: > >>> On Wednesday 28 January 2015 01:50:33 Tony Lindgren wrote: > >>>> On omaps, the bootrom passes the bootreason in r1 to the > >>>> bootloader that can do whatever it wants with it. We > >>>> could maybe pass it in the kernel cmdline to the > >>>> watchdog driver for user space? > >>> > >>> Not truth for N900. Bootreason depends on PRM_RSTST omap > >>> register, state of vbat charger pins, time how long was > >>> power key pressed, R&D data stored in CAL partition and > >>> other undocumented registers for omap HS devices. I > >>> already tried to implement at least some subset of it in > >>> userspace (or kernel), but it is impossible because NOLO > >>> bootloader clear status of PRM_RSTST register. > >>> > >>> There is also copy of PRM_RSTST register stored at address > >>> 0x4020FFB8 (tracing data) but that address is rewritten > >>> (probably by kernel), so we really cannot implement > >>> reading bootreason in kernel. > >>> > >>> But in early stage in uboot it is possible to read > >>> 0x4020FFB8 address and get some part of bootreason. But > >>> still PRM_RSTST is not enough! > >>> > >>> I would be happy if DT kernel can export /proc/atags file > >>> with ATAGs passed by bootloader. It would be enough for > >>> me. In userspace I can parse content and do what is > >>> needed. > >> > >> What about defining a DT boot reason property instead? > >> Maybe it already exists? If not, it's something that could > >> certainly be generically used on other platforms too. > > > > I'm fine with that, but we just need to have a standard > > kernel userspace interface in addition to something like > > /proc/device-tree/bootreason. Perhaps this can be the > > default implementation for the watchdog dev. Someday when > > we decide DT is crap and have a new boot interface, we'll > > have people relying on /proc/device-tree. I hope to be > > retired when that happens? > > but if we try to do this generic, where will you store the > boot mode > > I mean where the SoC boot from > > useful to for the Userspace to known where is the bootloader > in case of multi boot mode > > Best Regards, > J. > > > Rob > > I think in this discussion we are mixing two parts which should be designed & solved separately. 1) How should bootloader tell to kernel what is bootreason 2) How should kernel export bootreason to userspace In modern x86 laptop world bootreason can be requested from BIOS/WMI/firmware by special proprietary vendor specific command. So we should not lock bootreason to DT or ATAG only. Or only bootloader --> kernel transition. For other platforms, board or even architectures (x86) there can runtime way (for kernel) how to read bootreason... -- Pali Roh?r pali.rohar at gmail.com -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part. URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150128/cc59673e/attachment-0001.sig>
next prev parent reply other threads:[~2015-01-28 20:27 UTC|newest] Thread overview: 197+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-06-18 16:54 [PATCH] ARM: /proc/cpuinfo: Use DT machine name when possible Pali Rohár 2014-06-18 16:54 ` Pali Rohár 2014-06-18 19:01 ` Russell King - ARM Linux 2014-06-18 19:01 ` Russell King - ARM Linux 2014-06-18 19:09 ` Pali Rohár 2014-06-18 19:09 ` Pali Rohár 2014-06-18 19:59 ` Russell King - ARM Linux 2014-06-18 19:59 ` Russell King - ARM Linux 2014-06-19 8:21 ` Pavel Machek 2014-06-19 8:21 ` Pavel Machek 2014-07-11 19:31 ` Pavel Machek 2014-07-11 19:31 ` Pavel Machek 2014-06-18 19:07 ` Rob Herring 2014-06-18 19:07 ` Rob Herring 2014-06-18 19:22 ` Pali Rohár 2014-06-18 19:22 ` Pali Rohár 2014-06-18 20:00 ` Russell King - ARM Linux 2014-06-18 20:00 ` Russell King - ARM Linux 2014-06-18 20:20 ` Pali Rohár 2014-06-18 20:20 ` Pali Rohár 2014-06-18 21:53 ` Fabio Estevam 2014-06-18 21:53 ` Fabio Estevam 2014-11-24 22:16 ` Pali Rohár 2014-11-24 22:16 ` Pali Rohár 2014-06-18 20:46 ` Rob Herring 2014-06-18 20:46 ` Rob Herring 2014-06-18 21:47 ` Russell King - ARM Linux 2014-06-18 21:47 ` Russell King - ARM Linux 2014-06-18 22:27 ` Rob Herring 2014-06-18 22:27 ` Rob Herring 2014-06-18 23:07 ` Russell King - ARM Linux 2014-06-18 23:07 ` Russell King - ARM Linux 2014-11-24 22:19 ` Pali Rohár 2014-11-24 22:19 ` Pali Rohár 2014-12-04 0:33 ` Rob Herring 2014-12-04 0:33 ` Rob Herring 2014-12-04 0:48 ` Pali Rohár 2014-12-04 0:48 ` Pali Rohár 2014-12-04 16:49 ` Rob Herring 2014-12-04 16:49 ` Rob Herring 2014-12-04 17:57 ` Pali Rohár 2014-12-04 17:57 ` Pali Rohár 2014-12-04 18:10 ` Rob Herring 2014-12-04 18:10 ` Rob Herring 2015-01-26 19:09 ` [PATCH] ARM: /proc/cpuinfo: DT: Add support for Revision Pali Rohár 2015-01-26 19:09 ` Pali Rohár 2015-01-26 20:22 ` Rob Herring 2015-01-26 20:22 ` Rob Herring 2015-01-30 14:14 ` Pali Rohár 2015-01-30 14:14 ` Pali Rohár 2015-01-30 21:03 ` Rob Herring 2015-01-30 21:03 ` Rob Herring 2015-02-27 15:45 ` Pali Rohár 2015-02-27 15:45 ` Pali Rohár 2015-02-27 15:55 ` [PATCH v2 0/2] " Pali Rohár 2015-02-27 15:55 ` Pali Rohár 2015-02-27 15:55 ` [PATCH v2 1/2] arm: devtree: Set system_rev from DT revision Pali Rohár 2015-02-27 15:55 ` Pali Rohár 2015-02-27 15:55 ` [PATCH v2 2/2] arm: boot: convert ATAG_REVISION to DT revision field Pali Rohár 2015-02-27 15:55 ` Pali Rohár 2015-03-02 11:28 ` [PATCH v2 0/2] ARM: /proc/cpuinfo: DT: Add support for Revision Pavel Machek 2015-03-02 11:28 ` Pavel Machek 2015-03-16 15:44 ` Tony Lindgren 2015-03-16 15:44 ` Tony Lindgren 2015-03-16 16:14 ` Russell King - ARM Linux 2015-03-16 16:14 ` Russell King - ARM Linux 2015-03-16 16:43 ` Nicolas Pitre 2015-03-16 16:43 ` Nicolas Pitre 2015-03-16 19:21 ` Russell King - ARM Linux 2015-03-16 19:21 ` Russell King - ARM Linux 2015-03-16 18:10 ` Tony Lindgren 2015-03-16 18:10 ` Tony Lindgren 2015-03-16 19:59 ` Russell King - ARM Linux 2015-03-16 19:59 ` Russell King - ARM Linux 2015-03-16 20:54 ` Pali Rohár 2015-03-16 20:54 ` Pali Rohár 2015-03-16 20:59 ` Tony Lindgren 2015-03-16 20:59 ` Tony Lindgren 2015-01-26 22:34 ` [PATCH] " Andreas Färber 2015-01-26 22:34 ` Andreas Färber 2015-02-27 15:56 ` Pali Rohár 2015-02-27 15:56 ` Pali Rohár 2015-01-26 19:16 ` [PATCH] ARM: /proc/atags: Export also for DT Pali Rohár 2015-01-26 19:16 ` Pali Rohár 2015-01-26 20:33 ` Rob Herring 2015-01-26 20:33 ` Rob Herring 2015-01-27 13:21 ` Pavel Machek 2015-01-27 13:21 ` Pavel Machek 2015-01-27 14:16 ` Rob Herring 2015-01-27 14:16 ` Rob Herring 2015-01-27 14:24 ` Pavel Machek 2015-01-27 14:24 ` Pavel Machek 2015-01-27 14:32 ` Pali Rohár 2015-01-27 14:32 ` Pali Rohár 2015-01-27 17:48 ` Russell King - ARM Linux 2015-01-27 17:48 ` Russell King - ARM Linux 2015-01-27 20:03 ` Nicolas Pitre 2015-01-27 20:03 ` Nicolas Pitre 2015-01-27 21:09 ` Russell King - ARM Linux 2015-01-27 21:09 ` Russell King - ARM Linux 2015-01-27 21:34 ` Nicolas Pitre 2015-01-27 21:34 ` Nicolas Pitre 2015-01-27 21:58 ` Nicolas Pitre 2015-01-27 21:58 ` Nicolas Pitre 2015-01-27 22:33 ` Russell King - ARM Linux 2015-01-27 22:33 ` Russell King - ARM Linux 2015-01-28 2:07 ` Nicolas Pitre 2015-01-28 2:07 ` Nicolas Pitre 2015-01-28 6:21 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 6:21 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 7:19 ` Pavel Machek 2015-01-28 7:19 ` Pavel Machek 2015-01-28 8:06 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 8:06 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 8:25 ` Pavel Machek 2015-01-28 8:25 ` Pavel Machek 2015-01-28 7:18 ` Pavel Machek 2015-01-28 7:18 ` Pavel Machek 2015-01-28 13:38 ` Pali Rohár 2015-01-28 13:38 ` Pali Rohár 2015-01-27 23:10 ` Pavel Machek 2015-01-27 23:10 ` Pavel Machek 2015-01-28 0:50 ` Tony Lindgren 2015-01-28 0:50 ` Tony Lindgren 2015-01-28 13:58 ` Pali Rohár 2015-01-28 13:58 ` Pali Rohár 2015-01-28 14:33 ` Nicolas Pitre 2015-01-28 15:39 ` Tony Lindgren 2015-01-28 15:39 ` Tony Lindgren 2015-01-28 15:47 ` Pali Rohár 2015-01-28 15:47 ` Pali Rohár 2015-01-28 15:48 ` Tony Lindgren 2015-01-28 15:48 ` Tony Lindgren 2015-01-28 16:31 ` Jason Cooper 2015-01-28 16:31 ` Jason Cooper 2015-01-28 15:57 ` Rob Herring 2015-01-28 15:57 ` Rob Herring 2015-01-28 16:13 ` Russell King - ARM Linux 2015-01-28 16:13 ` Russell King - ARM Linux 2015-01-28 16:19 ` Will Deacon 2015-01-28 16:19 ` Will Deacon 2015-01-28 17:01 ` Russell King - ARM Linux 2015-01-28 17:01 ` Russell King - ARM Linux 2015-01-28 17:29 ` Russell King - ARM Linux 2015-01-28 17:29 ` Russell King - ARM Linux 2015-01-28 17:18 ` Pali Rohár 2015-01-28 17:18 ` Pali Rohár 2015-01-28 18:00 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 18:00 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 19:33 ` Pali Rohár [this message] 2015-01-28 19:33 ` Pali Rohár 2015-01-28 18:03 ` Pavel Machek 2015-01-28 18:03 ` Pavel Machek 2015-01-28 19:27 ` Arnd Bergmann 2015-01-28 19:27 ` Arnd Bergmann 2015-01-28 14:46 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-28 14:46 ` Jean-Christophe PLAGNIOL-VILLARD 2015-01-27 19:40 ` Nicolas Pitre 2015-01-27 19:40 ` Nicolas Pitre 2015-01-26 20:37 ` Russell King - ARM Linux 2015-01-26 20:37 ` Russell King - ARM Linux 2015-01-26 20:44 ` Pali Rohár 2015-01-26 20:44 ` Pali Rohár 2014-12-04 19:00 ` [PATCH] ARM: /proc/cpuinfo: Use DT machine name when possible Pali Rohár 2014-12-04 19:00 ` Pali Rohár 2014-12-04 10:59 ` Russell King - ARM Linux 2014-12-04 10:59 ` Russell King - ARM Linux 2014-06-18 21:10 ` Aaro Koskinen 2014-06-18 21:10 ` Aaro Koskinen 2014-07-11 19:28 ` Pavel Machek 2014-07-11 19:28 ` Pavel Machek 2014-11-24 22:21 ` Pali Rohár 2014-11-24 22:21 ` Pali Rohár 2014-09-05 11:38 ` Pali Rohár 2014-09-05 11:38 ` Pali Rohár 2014-09-05 12:13 ` Russell King - ARM Linux 2014-09-05 12:13 ` Russell King - ARM Linux 2014-09-10 12:46 ` Pavel Machek 2014-09-10 12:46 ` Pavel Machek 2014-11-24 22:23 ` Pali Rohár 2014-11-24 22:23 ` Pali Rohár 2014-09-05 13:45 ` Mark Rutland 2014-09-05 13:45 ` Mark Rutland 2014-09-05 13:52 ` Pali Rohár 2014-09-05 13:52 ` Pali Rohár 2014-09-05 13:58 ` Mark Rutland 2014-09-05 13:58 ` Mark Rutland 2014-11-24 22:25 ` Pali Rohár 2014-11-24 22:25 ` Pali Rohár 2014-09-05 13:58 ` Fabio Estevam 2014-09-05 13:58 ` Fabio Estevam 2014-11-24 22:27 ` Pali Rohár 2014-11-24 22:27 ` Pali Rohár 2014-09-06 15:34 ` Andreas Färber 2014-09-06 15:34 ` Andreas Färber 2014-11-24 22:29 ` Pali Rohár 2014-11-24 22:29 ` Pali Rohár
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=201501282033.53144@pali \ --to=pali.rohar@gmail.com \ --cc=ivo.g.dimitrov.75@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=nico@fluxnic.net \ --cc=pavel@ucw.cz \ --cc=plagnioj@jcrosoft.com \ --cc=robherring2@gmail.com \ --cc=sre@debian.org \ --cc=tony@atomide.com \ --cc=will.deacon@arm.com \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.