All of lore.kernel.org
 help / color / mirror / Atom feed
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>,
	Tony Lindgren <tony@atomide.com>
Subject: Re: [PATCH] ARM: /proc/cpuinfo: Use DT machine name when possible
Date: Thu, 4 Dec 2014 18:57:48 +0100	[thread overview]
Message-ID: <201412041857.49341@pali> (raw)
In-Reply-To: <CAL_JsqKYpDD1Rq2n92FcspPWGJeQvtA4eRYPDK=xYPQN0=uQTg@mail.gmail.com>

[-- Attachment #1: Type: Text/Plain, Size: 3912 bytes --]

On Thursday 04 December 2014 17:49:40 Rob Herring wrote:
> On Wed, Dec 3, 2014 at 6:48 PM, Pali Rohár 
<pali.rohar@gmail.com> wrote:
> > On Thursday 04 December 2014 01:33:08 Rob Herring wrote:
> >> On Mon, Nov 24, 2014 at 4:19 PM, Pali Rohár
> > 
> > <pali.rohar@gmail.com> wrote:
> >> > On Wednesday 18 June 2014 22:46:19 Rob Herring wrote:
> >> >> On Wed, Jun 18, 2014 at 2:22 PM, Pali Rohár
> >> > 
> >> > <pali.rohar@gmail.com> wrote:
> >> >> > 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.
> >> 
> >> [...]
> >> 
> >> >> > 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.
> >> >> 
> >> >> It is somewhat fragile to expect the name in the DT to
> >> >> match the old name from the kernel. As your patch to
> >> >> n900 dts shows, we'd probably have to update every dts
> >> >> file to make them match. While I think we should work
> >> >> to remove this string from the kernel, userspace
> >> >> depending on the DT model string is a bad idea. For
> >> >> example, if you had some platform with multiple OEMs
> >> >> just rebranding the same base design, they may all want
> >> >> to put their own model string into each product. The
> >> >> true h/w id is the compatible string.
> >> >> 
> >> >> Serial number is easy. There is already a standard
> >> >> although not widely used property for it with
> >> >> "/serial-number". You just need to wire it up to
> >> >> cpuinfo.
> >> > 
> >> > There is no "/serial-number" property in kernel:
> >> > 
> >> > $ ls -l -a /sys/bus/soc/devices/soc0/
> >> > drwxr-xr-x    3 0        0                0 Jan  1 00:00
> >> > . drwxr-xr-x   18 0        0                0 Jan  1
> >> > 00:00 .. -r--r--r--    1 0        0             4096 Jan
> >> >  1 00:00 family -r--r--r--    1 0        0            
> >> > 4096 Jan  1 00:00 machine drwxr-xr-x    2 0        0    
> >> >            0 Jan  1 00:00 power -r--r--r--    1 0       
> >> > 0
> >> > 4096 Jan  1 00:00 revision lrwxrwxrwx    1 0        0
> >> > 
> >> >          0 Jan  1 00:00 subsystem -> ../../bus/soc
> >> > 
> >> > -r--r--r--    1 0        0             4096 Jan  1 00:00
> >> > type -rw-r--r--    1 0        0             4096 Jan  1
> >> > 00:00 uevent
> >> 
> >> Wrong place. If you put /serial-number in your DT, then it
> >> will be in /proc/device-tree/serial-number.
> >> 
> >> If you want to wire that up to /proc/cpuinfo, I would be
> >> fine with that.
> >> 
> >> Rob
> > 
> > I cannot hardcode it into DT, because it is set by
> > bootloader. And bootloader tell it to kernel via ATAGs
> > structure. Bootloader is closed and proprietary and cannot
> > be replaced (there is no documentation for hw init).
> 
> Either the bootloader can put the serial number into the DTB
> instead of ATAGs or the kernel decompressor can copy it from
> ATAGs to DTB like is done already for other ATAGs. I presume
> you cannot update the bootloader and will need the latter.
> 
> Rob

Rob, thanks for info! Btw, theoretically I can update bootloader 
if someone write it. So in practise I need to use second option.

Can you tell me which CONFIG_ needs to be enabled for kernel 
decompressor (so it copy some ATAGs) and where to start looking 
at code (for adding new code for copying other ATAGs)?

-- 
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: Thu, 4 Dec 2014 18:57:48 +0100	[thread overview]
Message-ID: <201412041857.49341@pali> (raw)
In-Reply-To: <CAL_JsqKYpDD1Rq2n92FcspPWGJeQvtA4eRYPDK=xYPQN0=uQTg@mail.gmail.com>

On Thursday 04 December 2014 17:49:40 Rob Herring wrote:
> On Wed, Dec 3, 2014 at 6:48 PM, Pali Roh?r 
<pali.rohar@gmail.com> wrote:
> > On Thursday 04 December 2014 01:33:08 Rob Herring wrote:
> >> On Mon, Nov 24, 2014 at 4:19 PM, Pali Roh?r
> > 
> > <pali.rohar@gmail.com> wrote:
> >> > On Wednesday 18 June 2014 22:46:19 Rob Herring wrote:
> >> >> On Wed, Jun 18, 2014 at 2:22 PM, Pali Roh?r
> >> > 
> >> > <pali.rohar@gmail.com> wrote:
> >> >> > 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.
> >> 
> >> [...]
> >> 
> >> >> > 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.
> >> >> 
> >> >> It is somewhat fragile to expect the name in the DT to
> >> >> match the old name from the kernel. As your patch to
> >> >> n900 dts shows, we'd probably have to update every dts
> >> >> file to make them match. While I think we should work
> >> >> to remove this string from the kernel, userspace
> >> >> depending on the DT model string is a bad idea. For
> >> >> example, if you had some platform with multiple OEMs
> >> >> just rebranding the same base design, they may all want
> >> >> to put their own model string into each product. The
> >> >> true h/w id is the compatible string.
> >> >> 
> >> >> Serial number is easy. There is already a standard
> >> >> although not widely used property for it with
> >> >> "/serial-number". You just need to wire it up to
> >> >> cpuinfo.
> >> > 
> >> > There is no "/serial-number" property in kernel:
> >> > 
> >> > $ ls -l -a /sys/bus/soc/devices/soc0/
> >> > drwxr-xr-x    3 0        0                0 Jan  1 00:00
> >> > . drwxr-xr-x   18 0        0                0 Jan  1
> >> > 00:00 .. -r--r--r--    1 0        0             4096 Jan
> >> >  1 00:00 family -r--r--r--    1 0        0            
> >> > 4096 Jan  1 00:00 machine drwxr-xr-x    2 0        0    
> >> >            0 Jan  1 00:00 power -r--r--r--    1 0       
> >> > 0
> >> > 4096 Jan  1 00:00 revision lrwxrwxrwx    1 0        0
> >> > 
> >> >          0 Jan  1 00:00 subsystem -> ../../bus/soc
> >> > 
> >> > -r--r--r--    1 0        0             4096 Jan  1 00:00
> >> > type -rw-r--r--    1 0        0             4096 Jan  1
> >> > 00:00 uevent
> >> 
> >> Wrong place. If you put /serial-number in your DT, then it
> >> will be in /proc/device-tree/serial-number.
> >> 
> >> If you want to wire that up to /proc/cpuinfo, I would be
> >> fine with that.
> >> 
> >> Rob
> > 
> > I cannot hardcode it into DT, because it is set by
> > bootloader. And bootloader tell it to kernel via ATAGs
> > structure. Bootloader is closed and proprietary and cannot
> > be replaced (there is no documentation for hw init).
> 
> Either the bootloader can put the serial number into the DTB
> instead of ATAGs or the kernel decompressor can copy it from
> ATAGs to DTB like is done already for other ATAGs. I presume
> you cannot update the bootloader and will need the latter.
> 
> Rob

Rob, thanks for info! Btw, theoretically I can update bootloader 
if someone write it. So in practise I need to use second option.

Can you tell me which CONFIG_ needs to be enabled for kernel 
decompressor (so it copy some ATAGs) and where to start looking 
at code (for adding new code for copying other ATAGs)?

-- 
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/20141204/fa7d9132/attachment-0001.sig>

  reply	other threads:[~2014-12-04 17:57 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 [this message]
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=201412041857.49341@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=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: link
Be 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.