linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Frank Rowand <frowand.list@gmail.com>
To: Alexandre Torgue <alexandre.torgue@st.com>,
	robh+dt@kernel.org, Masahiro Yamada <masahiroy@kernel.org>,
	Michal Marek <michal.lkml@markovi.net>,
	david@gibson.dropbear.id.au, sjg@chromium.org
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-kbuild@vger.kernel.org,
	devicetree-compiler@vger.kernel.org
Subject: Re: [RFC PATCH 3/3] scripts: Use -B dtc option to generate dtb build information.
Date: Wed, 22 Jan 2020 13:54:48 -0600	[thread overview]
Message-ID: <0b2fbafb-0de0-ae1c-08c7-95e52f46ca43@gmail.com> (raw)
In-Reply-To: <bc5a94e3-389e-7ef4-5d14-1f7ab30a0826@gmail.com>

On 1/17/20 1:20 PM, Frank Rowand wrote:
> On 1/13/20 12:16 PM, Alexandre Torgue wrote:
>> This commit adds a new script to create a string in tmp file with
>> some information (date, linux version, user). This file is then used by
>> dtc with -B option to append dts file with a new property.
>> During kernel boot it will then be possible to printout DTB build
>> information (date, linux version used, user).
>>
>> Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
>>
>> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
>> index 3fa32f83b2d7..6a98eac1e56d 100644
>> --- a/scripts/Makefile.lib
>> +++ b/scripts/Makefile.lib
>> @@ -235,6 +235,7 @@ quiet_cmd_gzip = GZIP    $@
>>  # DTC
>>  # ---------------------------------------------------------------------------
>>  DTC ?= $(objtree)/scripts/dtc/dtc
>> +DTB_GEN_INFO ?= $(objtree)/scripts/gen_dtb_build_info
>>  
>>  # Disable noisy checks by default
>>  ifeq ($(findstring 1,$(KBUILD_EXTRA_WARN)),)
>> @@ -275,11 +276,13 @@ $(obj)/%.dtb.S: $(obj)/%.dtb FORCE
>>  
>>  quiet_cmd_dtc = DTC     $@
>>  cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
>> -	$(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
>> -	$(DTC) -O $(2) -o $@ -b 0 \
>> +       $(DTB_GEN_INFO) $(@).info ;\
>> +       $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
>> +       $(DTC) -O $(2) -o $@ -b 0 -B $(@).info\
>>  		$(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
>> -		-d $(depfile).dtc.tmp $(dtc-tmp) ; \
>> -	cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)
>> +               -d $(depfile).dtc.tmp $(dtc-tmp) ; \
>> +       rm $(@).info ; \
>> +       cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)
>>  
>>  $(obj)/%.dtb: $(src)/%.dts $(DTC) FORCE
>>  	$(call if_changed_dep,dtc,dtb)
>> diff --git a/scripts/gen_dtb_build_info b/scripts/gen_dtb_build_info
>> new file mode 100755
>> index 000000000000..30cf7506b9d5
>> --- /dev/null
>> +++ b/scripts/gen_dtb_build_info
>> @@ -0,0 +1,11 @@
>> +#!/bin/sh
>> +# SPDX-License-Identifier: GPL-2.0
>> +
>> +DTB_TARGET=$@
>> +COMPILE_BY=$(whoami | sed 's/\\/\\\\/')
>> +
>> +touch $DTB_TARGET
>> +
>> +{
>> +  echo From Linux $KERNELRELEASE by $COMPILE_BY the $(date).

A nit, the trailing period is not needed.  Not a big deal one way
or the other.


>> +} > $DTB_TARGET
>>
> 
> This specific set of information does not seem to me to be sufficient
> to be of much use.  In my previous attempt to capture build time
> information into the DTB I included more information that this,
> which I felt provided more of the information that would be valuable
> to a developer (or testing person) in a development environment,
> test environment, or on an end user system.  The exact set of
> information is easy to bike shed over, but one could explain what
> information might be useful and why (I did not provide that explanation
> in my patch series, but in retrospect should have).

On reflection, this information is sufficient.  My concern was that a
unique version number was not provided.  But the unique version number
_is_ provided by the date, which is hh:mm:ss, so sufficient if the
dtb is not compiled more often than once per second.  So good enough
for the debugging environment.

  reply	other threads:[~2020-01-22 19:54 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-13 18:16 [RFC PATCH 0/3] Add device tree build information Alexandre Torgue
2020-01-13 18:16 ` [RFC PATCH 1/3] dtc: Add dtb build information option Alexandre Torgue
2020-01-16  0:57   ` David Gibson
2020-01-16  8:58     ` Alexandre Torgue
2020-01-17  9:09       ` David Gibson
2020-01-17 14:43         ` Rob Herring
2020-01-17 15:11           ` Alexandre Torgue
2020-01-19  6:40             ` David Gibson
2020-01-19  6:39           ` David Gibson
2020-01-21 15:59             ` Rob Herring
2020-01-21 17:18               ` Steve McIntyre
2020-01-23  5:13               ` David Gibson
2020-01-23 14:05                 ` Rob Herring
2020-01-20 18:17           ` Steve McIntyre
2020-01-22 18:00             ` Alexandre Torgue
2020-01-22 19:54               ` Frank Rowand
2020-01-13 18:16 ` [RFC PATCH 2/3] of: fdt: print dtb build information Alexandre Torgue
2020-01-13 18:16 ` [RFC PATCH 3/3] scripts: Use -B dtc option to generate " Alexandre Torgue
2020-01-17 19:20   ` Frank Rowand
2020-01-22 19:54     ` Frank Rowand [this message]
2020-01-20 16:16   ` Frank Rowand
2020-01-15 15:56 ` [RFC PATCH 0/3] Add device tree " Steve McIntyre
2020-01-16  2:28 ` Frank Rowand
2020-01-16  8:19   ` Alexandre Torgue
2020-01-17 19:13     ` Frank Rowand
2020-01-20 10:56       ` Alexandre Torgue
2020-01-20 16:14         ` Frank Rowand
2020-01-20 18:28           ` Steve McIntyre
2020-01-21  3:20             ` Frank Rowand
2020-01-21  3:39               ` Frank Rowand
2020-01-21 17:10               ` Steve McIntyre

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=0b2fbafb-0de0-ae1c-08c7-95e52f46ca43@gmail.com \
    --to=frowand.list@gmail.com \
    --cc=alexandre.torgue@st.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=devicetree-compiler@vger.kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=michal.lkml@markovi.net \
    --cc=robh+dt@kernel.org \
    --cc=sjg@chromium.org \
    /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;
as well as URLs for NNTP newsgroup(s).