* [PATCH] powerpc: Add interrupt mode information in /proc/cpuinfo
@ 2020-04-27 14:06 Cédric Le Goater
2020-04-28 11:03 ` Michael Ellerman
0 siblings, 1 reply; 3+ messages in thread
From: Cédric Le Goater @ 2020-04-27 14:06 UTC (permalink / raw)
To: Michael Ellerman; +Cc: linuxppc-dev, Cédric Le Goater
PowerNV and pSeries machines can run using the XIVE or XICS interrupt
mode. Report this information in /proc/cpuinfo :
timebase : 512000000
platform : PowerNV
model : 9006-22C
machine : PowerNV 9006-22C
firmware : OPAL
MMU : Radix
IRQ : XIVE
and use seq_puts() where we can.
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
arch/powerpc/platforms/powernv/setup.c | 12 ++++++++----
arch/powerpc/platforms/pseries/setup.c | 8 ++++++--
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c
index 3bc188da82ba..39ef3394038d 100644
--- a/arch/powerpc/platforms/powernv/setup.c
+++ b/arch/powerpc/platforms/powernv/setup.c
@@ -196,14 +196,18 @@ static void pnv_show_cpuinfo(struct seq_file *m)
model = of_get_property(root, "model", NULL);
seq_printf(m, "machine\t\t: PowerNV %s\n", model);
if (firmware_has_feature(FW_FEATURE_OPAL))
- seq_printf(m, "firmware\t: OPAL\n");
+ seq_puts(m, "firmware\t: OPAL\n");
else
- seq_printf(m, "firmware\t: BML\n");
+ seq_puts(m, "firmware\t: BML\n");
of_node_put(root);
if (radix_enabled())
- seq_printf(m, "MMU\t\t: Radix\n");
+ seq_puts(m, "MMU\t\t: Radix\n");
else
- seq_printf(m, "MMU\t\t: Hash\n");
+ seq_puts(m, "MMU\t\t: Hash\n");
+ if (xive_enabled())
+ seq_puts(m, "IRQ\t\t: XIVE\n");
+ else
+ seq_puts(m, "IRQ\t\t: XICS\n");
}
static void pnv_prepare_going_down(void)
diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
index 0c8421dd01ab..d248fca67797 100644
--- a/arch/powerpc/platforms/pseries/setup.c
+++ b/arch/powerpc/platforms/pseries/setup.c
@@ -95,9 +95,13 @@ static void pSeries_show_cpuinfo(struct seq_file *m)
seq_printf(m, "machine\t\t: CHRP %s\n", model);
of_node_put(root);
if (radix_enabled())
- seq_printf(m, "MMU\t\t: Radix\n");
+ seq_puts(m, "MMU\t\t: Radix\n");
else
- seq_printf(m, "MMU\t\t: Hash\n");
+ seq_puts(m, "MMU\t\t: Hash\n");
+ if (xive_enabled())
+ seq_puts(m, "IRQ\t\t: XIVE\n");
+ else
+ seq_puts(m, "IRQ\t\t: XICS\n");
}
/* Initialize firmware assisted non-maskable interrupts if
--
2.25.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] powerpc: Add interrupt mode information in /proc/cpuinfo
2020-04-27 14:06 [PATCH] powerpc: Add interrupt mode information in /proc/cpuinfo Cédric Le Goater
@ 2020-04-28 11:03 ` Michael Ellerman
2020-04-28 11:36 ` Cédric Le Goater
0 siblings, 1 reply; 3+ messages in thread
From: Michael Ellerman @ 2020-04-28 11:03 UTC (permalink / raw)
To: Cédric Le Goater; +Cc: linuxppc-dev, Cédric Le Goater
Cédric Le Goater <clg@kaod.org> writes:
> PowerNV and pSeries machines can run using the XIVE or XICS interrupt
> mode. Report this information in /proc/cpuinfo :
>
> timebase : 512000000
> platform : PowerNV
> model : 9006-22C
> machine : PowerNV 9006-22C
> firmware : OPAL
> MMU : Radix
> IRQ : XIVE
Hmmmm, I dunno. At what point do we stop putting random non CPU-related
things in cpuinfo? :)
The IRQ mode is (reasonably) easily discovered in sys, eg:
$ cat /sys/kernel/irq/*/chip_name | grep -m 1 XIVE
XIVE-IRQ
vs:
$ cat /sys/kernel/irq/*/chip_name | grep -m 1 XICS
XICS
cheers
> diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c
> index 3bc188da82ba..39ef3394038d 100644
> --- a/arch/powerpc/platforms/powernv/setup.c
> +++ b/arch/powerpc/platforms/powernv/setup.c
> @@ -196,14 +196,18 @@ static void pnv_show_cpuinfo(struct seq_file *m)
> model = of_get_property(root, "model", NULL);
> seq_printf(m, "machine\t\t: PowerNV %s\n", model);
> if (firmware_has_feature(FW_FEATURE_OPAL))
> - seq_printf(m, "firmware\t: OPAL\n");
> + seq_puts(m, "firmware\t: OPAL\n");
> else
> - seq_printf(m, "firmware\t: BML\n");
> + seq_puts(m, "firmware\t: BML\n");
> of_node_put(root);
> if (radix_enabled())
> - seq_printf(m, "MMU\t\t: Radix\n");
> + seq_puts(m, "MMU\t\t: Radix\n");
> else
> - seq_printf(m, "MMU\t\t: Hash\n");
> + seq_puts(m, "MMU\t\t: Hash\n");
> + if (xive_enabled())
> + seq_puts(m, "IRQ\t\t: XIVE\n");
> + else
> + seq_puts(m, "IRQ\t\t: XICS\n");
> }
>
> static void pnv_prepare_going_down(void)
> diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
> index 0c8421dd01ab..d248fca67797 100644
> --- a/arch/powerpc/platforms/pseries/setup.c
> +++ b/arch/powerpc/platforms/pseries/setup.c
> @@ -95,9 +95,13 @@ static void pSeries_show_cpuinfo(struct seq_file *m)
> seq_printf(m, "machine\t\t: CHRP %s\n", model);
> of_node_put(root);
> if (radix_enabled())
> - seq_printf(m, "MMU\t\t: Radix\n");
> + seq_puts(m, "MMU\t\t: Radix\n");
> else
> - seq_printf(m, "MMU\t\t: Hash\n");
> + seq_puts(m, "MMU\t\t: Hash\n");
> + if (xive_enabled())
> + seq_puts(m, "IRQ\t\t: XIVE\n");
> + else
> + seq_puts(m, "IRQ\t\t: XICS\n");
> }
>
> /* Initialize firmware assisted non-maskable interrupts if
> --
> 2.25.3
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] powerpc: Add interrupt mode information in /proc/cpuinfo
2020-04-28 11:03 ` Michael Ellerman
@ 2020-04-28 11:36 ` Cédric Le Goater
0 siblings, 0 replies; 3+ messages in thread
From: Cédric Le Goater @ 2020-04-28 11:36 UTC (permalink / raw)
To: Michael Ellerman; +Cc: linuxppc-dev
On 4/28/20 1:03 PM, Michael Ellerman wrote:
> Cédric Le Goater <clg@kaod.org> writes:
>> PowerNV and pSeries machines can run using the XIVE or XICS interrupt
>> mode. Report this information in /proc/cpuinfo :
>>
>> timebase : 512000000
>> platform : PowerNV
>> model : 9006-22C
>> machine : PowerNV 9006-22C
>> firmware : OPAL
>> MMU : Radix
>> IRQ : XIVE
>
> Hmmmm, I dunno. At what point do we stop putting random non CPU-related
> things in cpuinfo? :)
True.
> The IRQ mode is (reasonably) easily discovered in sys, eg:
>
> $ cat /sys/kernel/irq/*/chip_name | grep -m 1 XIVE
> XIVE-IRQ
>
> vs:
>
> $ cat /sys/kernel/irq/*/chip_name | grep -m 1 XICS
> XICS
That's good enough for error reporting
Thanks.
C.
>
> cheers
>
>> diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c
>> index 3bc188da82ba..39ef3394038d 100644
>> --- a/arch/powerpc/platforms/powernv/setup.c
>> +++ b/arch/powerpc/platforms/powernv/setup.c
>> @@ -196,14 +196,18 @@ static void pnv_show_cpuinfo(struct seq_file *m)
>> model = of_get_property(root, "model", NULL);
>> seq_printf(m, "machine\t\t: PowerNV %s\n", model);
>> if (firmware_has_feature(FW_FEATURE_OPAL))
>> - seq_printf(m, "firmware\t: OPAL\n");
>> + seq_puts(m, "firmware\t: OPAL\n");
>> else
>> - seq_printf(m, "firmware\t: BML\n");
>> + seq_puts(m, "firmware\t: BML\n");
>> of_node_put(root);
>> if (radix_enabled())
>> - seq_printf(m, "MMU\t\t: Radix\n");
>> + seq_puts(m, "MMU\t\t: Radix\n");
>> else
>> - seq_printf(m, "MMU\t\t: Hash\n");
>> + seq_puts(m, "MMU\t\t: Hash\n");
>> + if (xive_enabled())
>> + seq_puts(m, "IRQ\t\t: XIVE\n");
>> + else
>> + seq_puts(m, "IRQ\t\t: XICS\n");
>> }
>>
>> static void pnv_prepare_going_down(void)
>> diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
>> index 0c8421dd01ab..d248fca67797 100644
>> --- a/arch/powerpc/platforms/pseries/setup.c
>> +++ b/arch/powerpc/platforms/pseries/setup.c
>> @@ -95,9 +95,13 @@ static void pSeries_show_cpuinfo(struct seq_file *m)
>> seq_printf(m, "machine\t\t: CHRP %s\n", model);
>> of_node_put(root);
>> if (radix_enabled())
>> - seq_printf(m, "MMU\t\t: Radix\n");
>> + seq_puts(m, "MMU\t\t: Radix\n");
>> else
>> - seq_printf(m, "MMU\t\t: Hash\n");
>> + seq_puts(m, "MMU\t\t: Hash\n");
>> + if (xive_enabled())
>> + seq_puts(m, "IRQ\t\t: XIVE\n");
>> + else
>> + seq_puts(m, "IRQ\t\t: XICS\n");
>> }
>>
>> /* Initialize firmware assisted non-maskable interrupts if
>> --
>> 2.25.3
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-04-28 11:56 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-27 14:06 [PATCH] powerpc: Add interrupt mode information in /proc/cpuinfo Cédric Le Goater
2020-04-28 11:03 ` Michael Ellerman
2020-04-28 11:36 ` Cédric Le Goater
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).