All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Campbell <Ian.Campbell@citrix.com>
To: Julien Grall <julien.grall@linaro.org>
Cc: xen-devel@lists.xen.org, suravee.suthikulpanit@amd.com,
	stefano.stabellini@eu.citrix.com
Subject: Re: [PATCH 1/2] xen/arm: Initial support for PSCI-0.2
Date: Thu, 2 Oct 2014 15:19:43 +0100	[thread overview]
Message-ID: <1412259583.17146.20.camel@citrix.com> (raw)
In-Reply-To: <542D2E40.2030806@linaro.org>

On Thu, 2014-10-02 at 11:51 +0100, Julien Grall wrote:

> > +    if ( psci_ver != 2 )
> > +    {
> > +        printk("Error: The retrieved PSCI version (%#x) does not support.\n", psci_ver);
> 
> NIT: s/does/is/ ?

along with "supported", yes. I'd probably simplify it to "PSCI version %
#x is not supported".

> 
> > +        return -EOPNOTSUPP;
> > +    }
> > +
> > +    psci_cpu_on_nr = PSCI_0_2_FN_CPU_ON;
> > +
> > +    printk(XENLOG_INFO "Using PSCI-0.2 for SMP bringup\n");
> > +
> > +    return 0;
> > +}
> > +
> > +int __init psci_init(void)
> > +{
> > +    const struct dt_device_node *psci;
> > +
> > +    psci = dt_find_compatible_node(NULL, NULL, "arm,psci");
> > +    if ( psci )
> > +        return psci_init_0_1(psci);
> > +
> > +    psci = dt_find_compatible_node(NULL, NULL, "arm,psci-0.2");
> > +    if ( psci )
> > +        return psci_init_0_2(psci);
> > +
> 
> I think we need to prefer PSCI 0.2 if the platform supports the both
> version of PSCI.

Yes, please.

This may require also falling back to 0.1 if psci_init_0_2 fails?

> > +    return -ENODEV;
> > +}
> > +
> >  /*
> >   * Local variables:
> >   * mode: C
> > diff --git a/xen/include/asm-arm/psci.h b/xen/include/asm-arm/psci.h
> > index 9777c03..ab37984 100644
> > --- a/xen/include/asm-arm/psci.h
> > +++ b/xen/include/asm-arm/psci.h
> > @@ -13,10 +13,12 @@
> >  #define PSCI_DISABLED               -8
> >  
> >  /* availability of PSCI on the host for SMP bringup */
> > -extern bool_t psci_available;
> > +extern int psci_ver;
> 
> I would use unsigned int here, or even better an enum to describe the
> different version of PSCI.

unsigned, to match the psci spec, would be sufficient. The code should
also use the existing XEN_PSCI_V_0_1 and XEN_PSCI_V_0_2 where
appropriate.

Ian.

  reply	other threads:[~2014-10-02 14:19 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-01 20:02 [PATCH 0/2] Introduce PSCI-0.2 supports suravee.suthikulpanit
2014-10-01 20:02 ` [PATCH 1/2] xen/arm: Initial support for PSCI-0.2 suravee.suthikulpanit
2014-10-02  9:07   ` Stefano Stabellini
2014-10-02 10:51   ` Julien Grall
2014-10-02 14:19     ` Ian Campbell [this message]
2014-10-02 20:17       ` Suravee Suthikulpanit
2014-10-02 14:21   ` Ian Campbell
2014-10-02 19:43     ` Suravee Suthikulpanit
2014-10-01 20:02 ` [PATCH 2/2] xen/arm: Use PSCI-0.2 for machine_halt/restart by default suravee.suthikulpanit
2014-10-02  9:04   ` Stefano Stabellini
2014-10-02 10:54   ` Julien Grall
2014-10-02 19:51     ` Suravee Suthikulpanit
2014-10-02 21:50       ` Julien Grall
2014-10-03  0:00         ` Suravee Suthikulpanit

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=1412259583.17146.20.camel@citrix.com \
    --to=ian.campbell@citrix.com \
    --cc=julien.grall@linaro.org \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=suravee.suthikulpanit@amd.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.