All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
To: Alexandre Courbot <acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Cc: gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	Jassi Brar
	<jassisinghbrar-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Russell King - ARM Linux
	<linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	Chris Johnson <CJohnson-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	Tomasz Figa <tomasz.figa-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Karan Jhavar <kjhavar-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	Matthew Longnecker
	<MLongnecker-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	Joseph Lo <josephl-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: [PATCH v2 3/3] ARM: tegra: set CPU reset handler with firmware op
Date: Thu, 13 Jun 2013 13:23:41 -0600	[thread overview]
Message-ID: <51BA1C3D.1010608@wwwdotorg.org> (raw)
In-Reply-To: <1371114745-24710-4-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

On 06/13/2013 03:12 AM, Alexandre Courbot wrote:
> Use a firmware operation to set the CPU reset handler and only resort to
> doing it ourselves if there is none defined.
> 
> This supports the booting of secondary CPUs on devices using a TrustZone
> secure monitor.

> diff --git a/arch/arm/mach-tegra/reset.c b/arch/arm/mach-tegra/reset.c

> +	err = call_firmware_op(set_cpu_boot_addr, 0, reset_address);
> +	switch (err) {
> +	case -ENOSYS:
> +		tegra_cpu_reset_handler_set(reset_address);
> +		/* pass-through */

Rather than detecting -ENOSYS and falling back to the custom
tegra_cpu_reset_handler_set(), does it make sense to plug in
tegra_cpu_reset_handler_set as the firmware op when there is no secure
firmware detected? That way, this code wouldn't need the special case;
that would be isolated to firmware.c.

WARNING: multiple messages have this Message-ID (diff)
From: swarren@wwwdotorg.org (Stephen Warren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 3/3] ARM: tegra: set CPU reset handler with firmware op
Date: Thu, 13 Jun 2013 13:23:41 -0600	[thread overview]
Message-ID: <51BA1C3D.1010608@wwwdotorg.org> (raw)
In-Reply-To: <1371114745-24710-4-git-send-email-acourbot@nvidia.com>

On 06/13/2013 03:12 AM, Alexandre Courbot wrote:
> Use a firmware operation to set the CPU reset handler and only resort to
> doing it ourselves if there is none defined.
> 
> This supports the booting of secondary CPUs on devices using a TrustZone
> secure monitor.

> diff --git a/arch/arm/mach-tegra/reset.c b/arch/arm/mach-tegra/reset.c

> +	err = call_firmware_op(set_cpu_boot_addr, 0, reset_address);
> +	switch (err) {
> +	case -ENOSYS:
> +		tegra_cpu_reset_handler_set(reset_address);
> +		/* pass-through */

Rather than detecting -ENOSYS and falling back to the custom
tegra_cpu_reset_handler_set(), does it make sense to plug in
tegra_cpu_reset_handler_set as the firmware op when there is no secure
firmware detected? That way, this code wouldn't need the special case;
that would be isolated to firmware.c.

WARNING: multiple messages have this Message-ID (diff)
From: Stephen Warren <swarren@wwwdotorg.org>
To: Alexandre Courbot <acourbot@nvidia.com>
Cc: Joseph Lo <josephl@nvidia.com>, Karan Jhavar <kjhavar@nvidia.com>,
	Varun Wadekar <vwadekar@nvidia.com>,
	Chris Johnson <CJohnson@nvidia.com>,
	Matthew Longnecker <MLongnecker@nvidia.com>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Tomasz Figa <tomasz.figa@gmail.com>,
	Dave Martin <Dave.Martin@arm.com>,
	Jassi Brar <jassisinghbrar@gmail.com>,
	gnurou@gmail.com, devicetree-discuss@lists.ozlabs.org,
	linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 3/3] ARM: tegra: set CPU reset handler with firmware op
Date: Thu, 13 Jun 2013 13:23:41 -0600	[thread overview]
Message-ID: <51BA1C3D.1010608@wwwdotorg.org> (raw)
In-Reply-To: <1371114745-24710-4-git-send-email-acourbot@nvidia.com>

On 06/13/2013 03:12 AM, Alexandre Courbot wrote:
> Use a firmware operation to set the CPU reset handler and only resort to
> doing it ourselves if there is none defined.
> 
> This supports the booting of secondary CPUs on devices using a TrustZone
> secure monitor.

> diff --git a/arch/arm/mach-tegra/reset.c b/arch/arm/mach-tegra/reset.c

> +	err = call_firmware_op(set_cpu_boot_addr, 0, reset_address);
> +	switch (err) {
> +	case -ENOSYS:
> +		tegra_cpu_reset_handler_set(reset_address);
> +		/* pass-through */

Rather than detecting -ENOSYS and falling back to the custom
tegra_cpu_reset_handler_set(), does it make sense to plug in
tegra_cpu_reset_handler_set as the firmware op when there is no secure
firmware detected? That way, this code wouldn't need the special case;
that would be isolated to firmware.c.

  parent reply	other threads:[~2013-06-13 19:23 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-13  9:12 [PATCH v2 0/3] ARM: tegra: add basic support for Trusted Foundations Alexandre Courbot
2013-06-13  9:12 ` Alexandre Courbot
2013-06-13  9:12 ` Alexandre Courbot
     [not found] ` <1371114745-24710-1-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-06-13  9:12   ` [PATCH v2 1/3] ARM: tegra: " Alexandre Courbot
2013-06-13  9:12     ` Alexandre Courbot
2013-06-13  9:12     ` Alexandre Courbot
     [not found]     ` <1371114745-24710-2-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-06-13 14:35       ` Dave Martin
2013-06-13 14:35         ` Dave Martin
2013-06-13 14:35         ` Dave Martin
     [not found]         ` <20130613143536.GA18021-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2013-06-14  8:43           ` Alexandre Courbot
2013-06-14  8:43             ` Alexandre Courbot
2013-06-14  8:43             ` Alexandre Courbot
     [not found]             ` <CAAVeFuLufKSfeQzP-tX1JpX9qtHa2EdFA9J8qpKE4Pyyrc8UQg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-14 15:28               ` Stephen Warren
2013-06-14 15:28                 ` Stephen Warren
2013-06-14 15:28                 ` Stephen Warren
2013-06-13 19:19       ` Stephen Warren
2013-06-13 19:19         ` Stephen Warren
2013-06-13 19:19         ` Stephen Warren
     [not found]         ` <51BA1B41.6030002-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-06-14  8:27           ` Alexandre Courbot
2013-06-14  8:27             ` Alexandre Courbot
2013-06-14  8:27             ` Alexandre Courbot
     [not found]             ` <CAAVeFuLc57pV=To5yaE5x9mrVy1yknH2e90QockCiNbEXRm0WQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-14 15:25               ` Stephen Warren
2013-06-14 15:25                 ` Stephen Warren
2013-06-14 15:25                 ` Stephen Warren
2013-06-19 11:11               ` Dave Martin
2013-06-19 11:11                 ` Dave Martin
2013-06-19 11:11                 ` Dave Martin
2013-06-13  9:12   ` [PATCH v2 3/3] ARM: tegra: set CPU reset handler with firmware op Alexandre Courbot
2013-06-13  9:12     ` Alexandre Courbot
2013-06-13  9:12     ` Alexandre Courbot
     [not found]     ` <1371114745-24710-4-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-06-13 19:23       ` Stephen Warren [this message]
2013-06-13 19:23         ` Stephen Warren
2013-06-13 19:23         ` Stephen Warren
     [not found]         ` <51BA1C3D.1010608-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-06-14  8:54           ` Alexandre Courbot
2013-06-14  8:54             ` Alexandre Courbot
2013-06-14  8:54             ` Alexandre Courbot
     [not found]             ` <CAAVeFuLi6-WnFP9LvEdqfj2cuK7pgW0_pg33i-Ucoobcxb8RSQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-14 15:30               ` Stephen Warren
2013-06-14 15:30                 ` Stephen Warren
2013-06-14 15:30                 ` Stephen Warren
2013-06-13  9:12 ` [PATCH v2 2/3] ARM: tegra: split setting of CPU reset handler Alexandre Courbot
2013-06-13  9:12   ` Alexandre Courbot
2013-06-13  9:12   ` Alexandre Courbot
     [not found]   ` <1371114745-24710-3-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-06-13 19:21     ` Stephen Warren
2013-06-13 19:21       ` Stephen Warren
2013-06-13 19:21       ` Stephen Warren
     [not found]       ` <51BA1BBF.6050106-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-06-14  8:45         ` Alexandre Courbot
2013-06-14  8:45           ` Alexandre Courbot
2013-06-14  8:45           ` Alexandre Courbot

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=51BA1C3D.1010608@wwwdotorg.org \
    --to=swarren-3lzwwm7+weoh9zmkesr00q@public.gmane.org \
    --cc=CJohnson-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=MLongnecker-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=jassisinghbrar-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=josephl-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=kjhavar-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=tomasz.figa-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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.