From: Julien Grall <julien.grall@linaro.org>
To: vijay.kilari@gmail.com, Ian.Campbell@citrix.com,
stefano.stabellini@eu.citrix.com, stefano.stabellini@citrix.com,
tim@xen.org, jbeulich@suse.com, xen-devel@lists.xen.org
Cc: Prasun.Kapoor@caviumnetworks.com,
vijaya.kumar@caviumnetworks.com, manish.jaggi@caviumnetworks.com
Subject: Re: [PATCH v8 7/7] xen/arm: check for GICv3 platform support
Date: Thu, 24 Jul 2014 15:45:29 +0100 [thread overview]
Message-ID: <53D11C09.5040300@linaro.org> (raw)
In-Reply-To: <1406122913-8303-8-git-send-email-vijay.kilari@gmail.com>
On 07/23/2014 02:41 PM, vijay.kilari@gmail.com wrote:
> From: Vijaya Kumar K <Vijaya.Kumar@caviumnetworks.com>
>
> ID_AA64PFR0_EL1 register provides information about GIC support.
> Check for this register in GICv3 driver.
>
> Also print GICv3 support information in boot log
>
> Signed-off-by: Vijaya Kumar K <Vijaya.Kumar@caviumnetworks.com>
> ---
> v8: - Rearranged prf64 structure member variables
> v7: - return -ENODEV on lack GICv3 platform support instead of
> panic
> ---
> xen/arch/arm/gic-v3.c | 7 +++++++
> xen/arch/arm/setup.c | 5 +++--
> xen/include/asm-arm/cpufeature.h | 1 +
> xen/include/asm-arm/processor.h | 4 ++--
> 4 files changed, 13 insertions(+), 4 deletions(-)
>
> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
> index 410d308..9291a7a 100644
> --- a/xen/arch/arm/gic-v3.c
> +++ b/xen/arch/arm/gic-v3.c
> @@ -39,6 +39,7 @@
> #include <asm/device.h>
> #include <asm/gic.h>
> #include <asm/gic_v3_defs.h>
> +#include <asm/cpufeature.h>
>
> struct rdist_region {
> paddr_t base;
> @@ -1143,6 +1144,12 @@ static int __init gicv3_init(struct dt_device_node *node, const void *data)
> int res, i;
> uint32_t reg;
>
> + if ( !cpu_has_gicv3 )
> + {
> + dprintk(XENLOG_ERR, "Platform does not support GICv3\n");
AFAIU, this field indicates if we support GICv3 system registers or not.
It's entirely possible to use a GICv3 without system registers (see
4.4.1 System Register Access to CPU Interface Registers).
So I would be more specific in the error message. Smth like:
"The GICv3 drivers request system registers support.".
> + return -ENODEV;
> + }
> +
> dt_device_set_used_by(node, DOMID_XEN);
>
> res = dt_device_get_address(node, 0, &gicv3.dbase, &gicv3.dbase_size);
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index 78dc7f5..6a90c81 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -100,9 +100,10 @@ static void __init processor_id(void)
> cpu_has_el2_32 ? "64+32" : cpu_has_el2_64 ? "64" : "No",
> cpu_has_el1_32 ? "64+32" : cpu_has_el1_64 ? "64" : "No",
> cpu_has_el0_32 ? "64+32" : cpu_has_el0_64 ? "64" : "No");
> - printk(" Extensions:%s%s\n",
> + printk(" Extensions:%s%s%s\n",
> cpu_has_fp ? " FloatingPoint" : "",
> - cpu_has_simd ? " AdvancedSIMD" : "");
> + cpu_has_simd ? " AdvancedSIMD" : "",
> + cpu_has_gicv3 ? " GICv3" : "");
I would rename into GICv3SysReg.
Regards,
--
Julien Grall
next prev parent reply other threads:[~2014-07-24 14:45 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-23 13:41 [PATCH v8 0/7] xen/arm: Add GICv3 support vijay.kilari
2014-07-23 13:41 ` [PATCH v8 1/7] xen/arm: Introduce sizes.h vijay.kilari
2014-07-28 13:55 ` Ian Campbell
2014-07-23 13:41 ` [PATCH v8 2/7] xen/arm: Stringify the register name in sysreg read write macros vijay.kilari
2014-07-23 17:20 ` Julien Grall
2014-07-28 13:56 ` Ian Campbell
2014-07-23 13:41 ` [PATCH v8 3/7] xen/arm: Add support for GIC v3 vijay.kilari
2014-07-23 17:28 ` Julien Grall
2014-07-24 9:03 ` Ian Campbell
2014-07-24 10:26 ` Julien Grall
2014-07-23 13:41 ` [PATCH v8 4/7] xen/arm: Add virtual GICv3 support vijay.kilari
2014-07-23 13:51 ` Vijay Kilari
2014-07-28 14:35 ` Ian Campbell
2014-07-28 14:55 ` Ian Campbell
2014-07-28 15:08 ` Julien Grall
2014-07-28 15:26 ` Ian Campbell
2014-07-28 15:29 ` Julien Grall
2014-07-28 15:35 ` Julien Grall
2014-07-28 16:02 ` Ian Campbell
2014-07-28 16:11 ` Julien Grall
2014-07-28 16:25 ` Ian Campbell
2014-07-28 16:30 ` Julien Grall
2014-07-23 13:41 ` [PATCH v8 5/7] xen/arm: Update Dom0 GIC dt node with GICv3 information vijay.kilari
2014-07-23 13:41 ` [PATCH v8 6/7] xen/arm: add SGI handling for GICv3 vijay.kilari
2014-07-23 13:56 ` Stefano Stabellini
2014-07-24 14:37 ` Julien Grall
2014-07-28 14:04 ` Ian Campbell
2014-07-23 13:41 ` [PATCH v8 7/7] xen/arm: check for GICv3 platform support vijay.kilari
2014-07-24 14:45 ` Julien Grall [this message]
2014-08-03 21:24 ` [PATCH v8 0/7] xen/arm: Add GICv3 support Julien Grall
2014-08-04 10:06 ` Ian Campbell
2014-08-04 10:25 ` Julien Grall
2014-08-04 10:42 ` Ian Campbell
[not found] ` <CALicx6ucRFNP4A3a2uBPTmhYzKtNWNOvwmPLUfy4Z2DoYDVr3g@mail.gmail.com>
2014-08-04 15:48 ` Ian Campbell
2014-08-06 14:52 ` Vijay Kilari
2014-08-07 14:11 ` Julien Grall
2014-08-28 11:36 ` Vijay Kilari
2014-09-02 23:18 ` Stefano Stabellini
2014-09-03 12:15 ` Ian Campbell
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=53D11C09.5040300@linaro.org \
--to=julien.grall@linaro.org \
--cc=Ian.Campbell@citrix.com \
--cc=Prasun.Kapoor@caviumnetworks.com \
--cc=jbeulich@suse.com \
--cc=manish.jaggi@caviumnetworks.com \
--cc=stefano.stabellini@citrix.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=tim@xen.org \
--cc=vijay.kilari@gmail.com \
--cc=vijaya.kumar@caviumnetworks.com \
--cc=xen-devel@lists.xen.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 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.