Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Sudeep Holla


On 28/04/17 17:52, Will Deacon wrote:
> On Fri, Apr 28, 2017 at 06:16:46PM +0200, Geert Uytterhoeven wrote:
>> On Fri, Apr 28, 2017 at 4:57 PM, Will Deacon  wrote:
>>> On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
 On arm32, the machine model specified in the device tree is printed
 during boot-up, courtesy of of_flat_dt_match_machine().

 On arm64, of_flat_dt_match_machine() is not called, and the machine
 model information is not available from the kernel log.

 Print the machine model to make it easier to derive the machine model
 from an arbitrary kernel boot log.

 Signed-off-by: Geert Uytterhoeven 
 ---
 I have scripts to save kernel boot logs, and compare logs[*] for
 subsequent boots on the same machine.  Having a way to extract the
 machine model from an arbitrary kernel boot log makes this easier.
>>
>>> I think your use-case is slightly questionable (e.g. for ACPI, we print
>>> something different, and this isn't generally considered to be ABI), but
>>> the patch is harmless and if you find it useful then:
>>
>> Not having access to an ARM ACPI system, what does it print for example?
> 
> It's supposed to print out some stuff from DMI, but my Juno just says:
> 
>   DMI not present or invalid.
> 

With latest firmware, I get something like:

DMI: ARM LTD ARM Juno Development Platform/ARM Juno Development
Platform, BIOS EDK II ...

-- 
Regards,
Sudeep


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Sudeep Holla


On 28/04/17 17:52, Will Deacon wrote:
> On Fri, Apr 28, 2017 at 06:16:46PM +0200, Geert Uytterhoeven wrote:
>> On Fri, Apr 28, 2017 at 4:57 PM, Will Deacon  wrote:
>>> On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
 On arm32, the machine model specified in the device tree is printed
 during boot-up, courtesy of of_flat_dt_match_machine().

 On arm64, of_flat_dt_match_machine() is not called, and the machine
 model information is not available from the kernel log.

 Print the machine model to make it easier to derive the machine model
 from an arbitrary kernel boot log.

 Signed-off-by: Geert Uytterhoeven 
 ---
 I have scripts to save kernel boot logs, and compare logs[*] for
 subsequent boots on the same machine.  Having a way to extract the
 machine model from an arbitrary kernel boot log makes this easier.
>>
>>> I think your use-case is slightly questionable (e.g. for ACPI, we print
>>> something different, and this isn't generally considered to be ABI), but
>>> the patch is harmless and if you find it useful then:
>>
>> Not having access to an ARM ACPI system, what does it print for example?
> 
> It's supposed to print out some stuff from DMI, but my Juno just says:
> 
>   DMI not present or invalid.
> 

With latest firmware, I get something like:

DMI: ARM LTD ARM Juno Development Platform/ARM Juno Development
Platform, BIOS EDK II ...

-- 
Regards,
Sudeep


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Will Deacon
On Fri, Apr 28, 2017 at 06:16:46PM +0200, Geert Uytterhoeven wrote:
> On Fri, Apr 28, 2017 at 4:57 PM, Will Deacon  wrote:
> > On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
> >> On arm32, the machine model specified in the device tree is printed
> >> during boot-up, courtesy of of_flat_dt_match_machine().
> >>
> >> On arm64, of_flat_dt_match_machine() is not called, and the machine
> >> model information is not available from the kernel log.
> >>
> >> Print the machine model to make it easier to derive the machine model
> >> from an arbitrary kernel boot log.
> >>
> >> Signed-off-by: Geert Uytterhoeven 
> >> ---
> >> I have scripts to save kernel boot logs, and compare logs[*] for
> >> subsequent boots on the same machine.  Having a way to extract the
> >> machine model from an arbitrary kernel boot log makes this easier.
> 
> > I think your use-case is slightly questionable (e.g. for ACPI, we print
> > something different, and this isn't generally considered to be ABI), but
> > the patch is harmless and if you find it useful then:
> 
> Not having access to an ARM ACPI system, what does it print for example?

It's supposed to print out some stuff from DMI, but my Juno just says:

  DMI not present or invalid.

Luckily, it's not really an issue because I don't get to a prompt after USB
fails to come up and it times out mounting the rootfs.

Will


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Will Deacon
On Fri, Apr 28, 2017 at 06:16:46PM +0200, Geert Uytterhoeven wrote:
> On Fri, Apr 28, 2017 at 4:57 PM, Will Deacon  wrote:
> > On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
> >> On arm32, the machine model specified in the device tree is printed
> >> during boot-up, courtesy of of_flat_dt_match_machine().
> >>
> >> On arm64, of_flat_dt_match_machine() is not called, and the machine
> >> model information is not available from the kernel log.
> >>
> >> Print the machine model to make it easier to derive the machine model
> >> from an arbitrary kernel boot log.
> >>
> >> Signed-off-by: Geert Uytterhoeven 
> >> ---
> >> I have scripts to save kernel boot logs, and compare logs[*] for
> >> subsequent boots on the same machine.  Having a way to extract the
> >> machine model from an arbitrary kernel boot log makes this easier.
> 
> > I think your use-case is slightly questionable (e.g. for ACPI, we print
> > something different, and this isn't generally considered to be ABI), but
> > the patch is harmless and if you find it useful then:
> 
> Not having access to an ARM ACPI system, what does it print for example?

It's supposed to print out some stuff from DMI, but my Juno just says:

  DMI not present or invalid.

Luckily, it's not really an issue because I don't get to a prompt after USB
fails to come up and it times out mounting the rootfs.

Will


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Geert Uytterhoeven
Hi Will,

On Fri, Apr 28, 2017 at 4:57 PM, Will Deacon  wrote:
> On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
>> On arm32, the machine model specified in the device tree is printed
>> during boot-up, courtesy of of_flat_dt_match_machine().
>>
>> On arm64, of_flat_dt_match_machine() is not called, and the machine
>> model information is not available from the kernel log.
>>
>> Print the machine model to make it easier to derive the machine model
>> from an arbitrary kernel boot log.
>>
>> Signed-off-by: Geert Uytterhoeven 
>> ---
>> I have scripts to save kernel boot logs, and compare logs[*] for
>> subsequent boots on the same machine.  Having a way to extract the
>> machine model from an arbitrary kernel boot log makes this easier.

> I think your use-case is slightly questionable (e.g. for ACPI, we print
> something different, and this isn't generally considered to be ABI), but
> the patch is harmless and if you find it useful then:

Not having access to an ARM ACPI system, what does it print for example?

I don't consider it ABI, though, just informational.

> Acked-by: Will Deacon 

Thanks!

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Geert Uytterhoeven
Hi Will,

On Fri, Apr 28, 2017 at 4:57 PM, Will Deacon  wrote:
> On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
>> On arm32, the machine model specified in the device tree is printed
>> during boot-up, courtesy of of_flat_dt_match_machine().
>>
>> On arm64, of_flat_dt_match_machine() is not called, and the machine
>> model information is not available from the kernel log.
>>
>> Print the machine model to make it easier to derive the machine model
>> from an arbitrary kernel boot log.
>>
>> Signed-off-by: Geert Uytterhoeven 
>> ---
>> I have scripts to save kernel boot logs, and compare logs[*] for
>> subsequent boots on the same machine.  Having a way to extract the
>> machine model from an arbitrary kernel boot log makes this easier.

> I think your use-case is slightly questionable (e.g. for ACPI, we print
> something different, and this isn't generally considered to be ABI), but
> the patch is harmless and if you find it useful then:

Not having access to an ARM ACPI system, what does it print for example?

I don't consider it ABI, though, just informational.

> Acked-by: Will Deacon 

Thanks!

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Catalin Marinas
On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
> On arm32, the machine model specified in the device tree is printed
> during boot-up, courtesy of of_flat_dt_match_machine().
> 
> On arm64, of_flat_dt_match_machine() is not called, and the machine
> model information is not available from the kernel log.
> 
> Print the machine model to make it easier to derive the machine model
> from an arbitrary kernel boot log.
> 
> Signed-off-by: Geert Uytterhoeven 

Applied. Thanks.

-- 
Catalin


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Catalin Marinas
On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
> On arm32, the machine model specified in the device tree is printed
> during boot-up, courtesy of of_flat_dt_match_machine().
> 
> On arm64, of_flat_dt_match_machine() is not called, and the machine
> model information is not available from the kernel log.
> 
> Print the machine model to make it easier to derive the machine model
> from an arbitrary kernel boot log.
> 
> Signed-off-by: Geert Uytterhoeven 

Applied. Thanks.

-- 
Catalin


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Will Deacon
On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
> On arm32, the machine model specified in the device tree is printed
> during boot-up, courtesy of of_flat_dt_match_machine().
> 
> On arm64, of_flat_dt_match_machine() is not called, and the machine
> model information is not available from the kernel log.
> 
> Print the machine model to make it easier to derive the machine model
> from an arbitrary kernel boot log.
> 
> Signed-off-by: Geert Uytterhoeven 
> ---
> I have scripts to save kernel boot logs, and compare logs[*] for
> subsequent boots on the same machine.  Having a way to extract the
> machine model from an arbitrary kernel boot log makes this easier.
> 
> Yes, I'm also a big fan of CONFIG_LOCALVERSION_AUTO and
> CONFIG_LOCALVERSION.
> 
> [*] and clock and PM domain lists...
> ---
>  arch/arm64/kernel/setup.c | 5 -
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> index 28855ec1be95e113..2c822ef94f341417 100644
> --- a/arch/arm64/kernel/setup.c
> +++ b/arch/arm64/kernel/setup.c
> @@ -180,6 +180,7 @@ static void __init smp_build_mpidr_hash(void)
>  static void __init setup_machine_fdt(phys_addr_t dt_phys)
>  {
>   void *dt_virt = fixmap_remap_fdt(dt_phys);
> + const char *name;
>  
>   if (!dt_virt || !early_init_dt_scan(dt_virt)) {
>   pr_crit("\n"
> @@ -192,7 +193,9 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys)
>   cpu_relax();
>   }
>  
> - dump_stack_set_arch_desc("%s (DT)", of_flat_dt_get_machine_name());
> + name = of_flat_dt_get_machine_name();
> + pr_info("Machine model: %s\n", name);
> + dump_stack_set_arch_desc("%s (DT)", name);
>  }

I think your use-case is slightly questionable (e.g. for ACPI, we print
something different, and this isn't generally considered to be ABI), but
the patch is harmless and if you find it useful then:

Acked-by: Will Deacon 

Will


Re: [PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-28 Thread Will Deacon
On Thu, Apr 27, 2017 at 02:33:05PM +0200, Geert Uytterhoeven wrote:
> On arm32, the machine model specified in the device tree is printed
> during boot-up, courtesy of of_flat_dt_match_machine().
> 
> On arm64, of_flat_dt_match_machine() is not called, and the machine
> model information is not available from the kernel log.
> 
> Print the machine model to make it easier to derive the machine model
> from an arbitrary kernel boot log.
> 
> Signed-off-by: Geert Uytterhoeven 
> ---
> I have scripts to save kernel boot logs, and compare logs[*] for
> subsequent boots on the same machine.  Having a way to extract the
> machine model from an arbitrary kernel boot log makes this easier.
> 
> Yes, I'm also a big fan of CONFIG_LOCALVERSION_AUTO and
> CONFIG_LOCALVERSION.
> 
> [*] and clock and PM domain lists...
> ---
>  arch/arm64/kernel/setup.c | 5 -
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> index 28855ec1be95e113..2c822ef94f341417 100644
> --- a/arch/arm64/kernel/setup.c
> +++ b/arch/arm64/kernel/setup.c
> @@ -180,6 +180,7 @@ static void __init smp_build_mpidr_hash(void)
>  static void __init setup_machine_fdt(phys_addr_t dt_phys)
>  {
>   void *dt_virt = fixmap_remap_fdt(dt_phys);
> + const char *name;
>  
>   if (!dt_virt || !early_init_dt_scan(dt_virt)) {
>   pr_crit("\n"
> @@ -192,7 +193,9 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys)
>   cpu_relax();
>   }
>  
> - dump_stack_set_arch_desc("%s (DT)", of_flat_dt_get_machine_name());
> + name = of_flat_dt_get_machine_name();
> + pr_info("Machine model: %s\n", name);
> + dump_stack_set_arch_desc("%s (DT)", name);
>  }

I think your use-case is slightly questionable (e.g. for ACPI, we print
something different, and this isn't generally considered to be ABI), but
the patch is harmless and if you find it useful then:

Acked-by: Will Deacon 

Will


[PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-27 Thread Geert Uytterhoeven
On arm32, the machine model specified in the device tree is printed
during boot-up, courtesy of of_flat_dt_match_machine().

On arm64, of_flat_dt_match_machine() is not called, and the machine
model information is not available from the kernel log.

Print the machine model to make it easier to derive the machine model
from an arbitrary kernel boot log.

Signed-off-by: Geert Uytterhoeven 
---
I have scripts to save kernel boot logs, and compare logs[*] for
subsequent boots on the same machine.  Having a way to extract the
machine model from an arbitrary kernel boot log makes this easier.

Yes, I'm also a big fan of CONFIG_LOCALVERSION_AUTO and
CONFIG_LOCALVERSION.

[*] and clock and PM domain lists...
---
 arch/arm64/kernel/setup.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
index 28855ec1be95e113..2c822ef94f341417 100644
--- a/arch/arm64/kernel/setup.c
+++ b/arch/arm64/kernel/setup.c
@@ -180,6 +180,7 @@ static void __init smp_build_mpidr_hash(void)
 static void __init setup_machine_fdt(phys_addr_t dt_phys)
 {
void *dt_virt = fixmap_remap_fdt(dt_phys);
+   const char *name;
 
if (!dt_virt || !early_init_dt_scan(dt_virt)) {
pr_crit("\n"
@@ -192,7 +193,9 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys)
cpu_relax();
}
 
-   dump_stack_set_arch_desc("%s (DT)", of_flat_dt_get_machine_name());
+   name = of_flat_dt_get_machine_name();
+   pr_info("Machine model: %s\n", name);
+   dump_stack_set_arch_desc("%s (DT)", name);
 }
 
 static void __init request_standard_resources(void)
-- 
2.7.4



[PATCH] arm64: Print DT machine model in setup_machine_fdt()

2017-04-27 Thread Geert Uytterhoeven
On arm32, the machine model specified in the device tree is printed
during boot-up, courtesy of of_flat_dt_match_machine().

On arm64, of_flat_dt_match_machine() is not called, and the machine
model information is not available from the kernel log.

Print the machine model to make it easier to derive the machine model
from an arbitrary kernel boot log.

Signed-off-by: Geert Uytterhoeven 
---
I have scripts to save kernel boot logs, and compare logs[*] for
subsequent boots on the same machine.  Having a way to extract the
machine model from an arbitrary kernel boot log makes this easier.

Yes, I'm also a big fan of CONFIG_LOCALVERSION_AUTO and
CONFIG_LOCALVERSION.

[*] and clock and PM domain lists...
---
 arch/arm64/kernel/setup.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
index 28855ec1be95e113..2c822ef94f341417 100644
--- a/arch/arm64/kernel/setup.c
+++ b/arch/arm64/kernel/setup.c
@@ -180,6 +180,7 @@ static void __init smp_build_mpidr_hash(void)
 static void __init setup_machine_fdt(phys_addr_t dt_phys)
 {
void *dt_virt = fixmap_remap_fdt(dt_phys);
+   const char *name;
 
if (!dt_virt || !early_init_dt_scan(dt_virt)) {
pr_crit("\n"
@@ -192,7 +193,9 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys)
cpu_relax();
}
 
-   dump_stack_set_arch_desc("%s (DT)", of_flat_dt_get_machine_name());
+   name = of_flat_dt_get_machine_name();
+   pr_info("Machine model: %s\n", name);
+   dump_stack_set_arch_desc("%s (DT)", name);
 }
 
 static void __init request_standard_resources(void)
-- 
2.7.4