From: "Pali Rohár" <pali.rohar@gmail.com> To: Rob Herring <robherring2@gmail.com> Cc: Russell King <linux@arm.linux.org.uk>, Santosh Shilimkar <santosh.shilimkar@ti.com>, Will Deacon <will.deacon@arm.com>, Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>, Sebastian Reichel <sre@debian.org>, Pavel Machek <pavel@ucw.cz>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "linux-arm-kernel@lists.infradead.org" <linux-arm-kernel@lists.infradead.org> Subject: Re: [PATCH] ARM: /proc/cpuinfo: Use DT machine name when possible Date: Wed, 18 Jun 2014 21:22:29 +0200 [thread overview] Message-ID: <201406182122.29623@pali> (raw) In-Reply-To: <CAL_JsqKw-C6uZBU3hccGmdofXcCcUKTV6z7Af6KwYwnZiy3HoQ@mail.gmail.com> [-- Attachment #1: Type: Text/Plain, Size: 4458 bytes --] On Wednesday 18 June 2014 21:07:35 Rob Herring wrote: > On Wed, Jun 18, 2014 at 11:54 AM, Pali Rohár <pali.rohar@gmail.com> wrote: > > Machine name from board description is some generic name on > > DT kernel. DT provides machine name property which is > > specific for board, so use it instead generic one when > > possible. > > > > Signed-off-by: Pali Rohár <pali.rohar@gmail.com> > > --- > > > > arch/arm/kernel/setup.c | 7 +++++-- > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > diff --git a/arch/arm/kernel/setup.c > > b/arch/arm/kernel/setup.c index 8a16ee5..fbc7b4f 100644 > > --- a/arch/arm/kernel/setup.c > > +++ b/arch/arm/kernel/setup.c > > @@ -875,10 +875,13 @@ void __init setup_arch(char > > **cmdline_p) > > > > setup_processor(); > > mdesc = setup_machine_fdt(__atags_pointer); > > > > - if (!mdesc) > > + if (mdesc) > > + machine_name = > > of_flat_dt_get_machine_name(); + else > > > > mdesc = setup_machine_tags(__atags_pointer, > > __machine_arch_type); > > > > machine_desc = mdesc; > > > > - machine_name = mdesc->name; > > + if (!machine_name) > > + machine_name = mdesc->name; > > > > if (mdesc->reboot_mode != REBOOT_HARD) > > > > reboot_mode = mdesc->reboot_mode; > > I did a similar patch previously[1]. Like my original patch, > your patch unconditionally changes the name which could be > considered part of the userspace ABI. It's arguably not good > practice for userspace to depend on the name, but there are > likely cases that do. So I think this needs to be optional > and only use the DT name if the machine desc name is NULL. > > So something like the below and then change the machine > descriptors you care about. The default generic DT machine > desc should definitely be changed. > > I had a follow-up discussion with Grant about his concerns in > the thread about knowing which machine desc used to boot. He > said he was okay if just the machine desc address is printed > out. > > > diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c > index 50e198c..1479250 100644 > --- a/arch/arm/kernel/setup.c > +++ b/arch/arm/kernel/setup.c > @@ -887,7 +887,7 @@ void __init setup_arch(char **cmdline_p) > if (!mdesc) > mdesc = setup_machine_tags(__atags_pointer, > __machine_arch_type); > machine_desc = mdesc; > - machine_name = mdesc->name; > + machine_name = mdesc->name ? mdesc->name : > of_flat_dt_get_machine_name(); > > if (mdesc->reboot_mode != REBOOT_HARD) > reboot_mode = mdesc->reboot_mode; > > > [1] > http://lists.infradead.org/pipermail/linux-arm-kernel/2013-No > vember/208878.html Hi, now legacy board code for Nokia N900 (RX-51) is migrating to DT kernel and there is problem with info which /proc/cpuinfo reports New DT kernel (3.16-rc1) reports: # busybox cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 3 (v7l) Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x2 CPU part : 0xc08 CPU revision : 3 Hardware : Generic OMAP3 (Flattened Device Tree) Revision : 0000 Serial : 0000000000000000 But legacy board code kernel reports: # busybox cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 3 (v7l) Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x2 CPU part : 0xc08 CPU revision : 3 Hardware : Nokia RX-51 board Revision : 0012 Serial : 0000000000000000 Basically in DT kernel is missing Hardware, Revision and probably also Serial key. (Now I used only qemu for testing which set serial key to 0). All these informations is used by userspace applications which determinate how to behave. So without this patch DT migration for Nokia N900 cannot be done without breaking userspace - which is not acceptable... Also I still did not know why DT kernel does not report Revision number which is passed by bootloader via atags. Any idea? -- 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/cpuinfo: Use DT machine name when possible Date: Wed, 18 Jun 2014 21:22:29 +0200 [thread overview] Message-ID: <201406182122.29623@pali> (raw) In-Reply-To: <CAL_JsqKw-C6uZBU3hccGmdofXcCcUKTV6z7Af6KwYwnZiy3HoQ@mail.gmail.com> On Wednesday 18 June 2014 21:07:35 Rob Herring wrote: > On Wed, Jun 18, 2014 at 11:54 AM, Pali Roh?r <pali.rohar@gmail.com> wrote: > > Machine name from board description is some generic name on > > DT kernel. DT provides machine name property which is > > specific for board, so use it instead generic one when > > possible. > > > > Signed-off-by: Pali Roh?r <pali.rohar@gmail.com> > > --- > > > > arch/arm/kernel/setup.c | 7 +++++-- > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > diff --git a/arch/arm/kernel/setup.c > > b/arch/arm/kernel/setup.c index 8a16ee5..fbc7b4f 100644 > > --- a/arch/arm/kernel/setup.c > > +++ b/arch/arm/kernel/setup.c > > @@ -875,10 +875,13 @@ void __init setup_arch(char > > **cmdline_p) > > > > setup_processor(); > > mdesc = setup_machine_fdt(__atags_pointer); > > > > - if (!mdesc) > > + if (mdesc) > > + machine_name = > > of_flat_dt_get_machine_name(); + else > > > > mdesc = setup_machine_tags(__atags_pointer, > > __machine_arch_type); > > > > machine_desc = mdesc; > > > > - machine_name = mdesc->name; > > + if (!machine_name) > > + machine_name = mdesc->name; > > > > if (mdesc->reboot_mode != REBOOT_HARD) > > > > reboot_mode = mdesc->reboot_mode; > > I did a similar patch previously[1]. Like my original patch, > your patch unconditionally changes the name which could be > considered part of the userspace ABI. It's arguably not good > practice for userspace to depend on the name, but there are > likely cases that do. So I think this needs to be optional > and only use the DT name if the machine desc name is NULL. > > So something like the below and then change the machine > descriptors you care about. The default generic DT machine > desc should definitely be changed. > > I had a follow-up discussion with Grant about his concerns in > the thread about knowing which machine desc used to boot. He > said he was okay if just the machine desc address is printed > out. > > > diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c > index 50e198c..1479250 100644 > --- a/arch/arm/kernel/setup.c > +++ b/arch/arm/kernel/setup.c > @@ -887,7 +887,7 @@ void __init setup_arch(char **cmdline_p) > if (!mdesc) > mdesc = setup_machine_tags(__atags_pointer, > __machine_arch_type); > machine_desc = mdesc; > - machine_name = mdesc->name; > + machine_name = mdesc->name ? mdesc->name : > of_flat_dt_get_machine_name(); > > if (mdesc->reboot_mode != REBOOT_HARD) > reboot_mode = mdesc->reboot_mode; > > > [1] > http://lists.infradead.org/pipermail/linux-arm-kernel/2013-No > vember/208878.html Hi, now legacy board code for Nokia N900 (RX-51) is migrating to DT kernel and there is problem with info which /proc/cpuinfo reports New DT kernel (3.16-rc1) reports: # busybox cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 3 (v7l) Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x2 CPU part : 0xc08 CPU revision : 3 Hardware : Generic OMAP3 (Flattened Device Tree) Revision : 0000 Serial : 0000000000000000 But legacy board code kernel reports: # busybox cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 3 (v7l) Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x2 CPU part : 0xc08 CPU revision : 3 Hardware : Nokia RX-51 board Revision : 0012 Serial : 0000000000000000 Basically in DT kernel is missing Hardware, Revision and probably also Serial key. (Now I used only qemu for testing which set serial key to 0). All these informations is used by userspace applications which determinate how to behave. So without this patch DT migration for Nokia N900 cannot be done without breaking userspace - which is not acceptable... Also I still did not know why DT kernel does not report Revision number which is passed by bootloader via atags. Any idea? -- 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/20140618/5a518bfe/attachment.sig>
next prev parent reply other threads:[~2014-06-18 19:22 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 [this message] 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 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=201406182122.29623@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=pavel@ucw.cz \ --cc=robherring2@gmail.com \ --cc=santosh.shilimkar@ti.com \ --cc=sre@debian.org \ --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.