All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
To: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Cc: Alexandre Courbot
	<acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	Tom Warren <twarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	u-boot-0aAXYlwwYIKGBzrmiIFOJg@public.gmane.org,
	gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Subject: Re: [U-Boot] [PATCH 4/4] ARM: tegra210: gpu: configure WPR region
Date: Mon, 9 Nov 2015 09:18:16 -0700	[thread overview]
Message-ID: <5640C748.8080207@wwwdotorg.org> (raw)
In-Reply-To: <20151109154742.GE11362-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>

On 11/09/2015 08:48 AM, Thierry Reding wrote:
> On Mon, Nov 09, 2015 at 08:19:48AM -0700, Stephen Warren wrote:
>> On 11/09/2015 07:36 AM, Thierry Reding wrote:
>>> On Wed, Oct 28, 2015 at 11:59:04AM -0600, Stephen Warren wrote:
>>>> On 10/18/2015 10:57 PM, Alexandre Courbot wrote:
>>>>> T210's GPU secure firmware loading requires a write-protected region
>>>>> to be set up.
>>>>>
>>>>> This patch reserves the upper 256KB of RAM as the WPR region and locks
>>>>> it so the kernel can initiate secure firmware loading.
>>>>
>>>> On T210, it's the responsibility of nvtboot (which runs before U-Boot) to
>>>> set up any and all carve-outs. This code should not be necessary, and indeed
>>>> I expect the registers it touches can't actually be programmed from U-Boot,
>>>> which runs in non-secure mode after WPR is already locked.
>>>
>>> Can we document this assumption somewhere? It's entirely possible that
>>> someone might want to run U-Boot without nvtboot
>>
>> That's not currently a supported use-case.
>
> Isn't the whole point of open-source for people to be able to do all the
> things that aren't supported?

Sure, but the default case that we support should "just work", and be 
represented by the code we ship, and be supported by us. Any non-default 
case is going to require some research or additional coding/fixing/... 
effort, and we haven't necessarily published the information require to 
make those cases work.

>>> , in which case nvtboot
>>> would still need to be responsible for setting this up.
>>
>> I assume s/nvtboot/whatever other bootloader is in use/?
>
> Right, I was going to write U-Boot here, but that's obviously only true
> if U-Boot is still running in secure mode. Otherwise, yes, it'd be what-
> ever is the other bootloader being used.
>
>>> Or if it isn't
>>> we could still point at some location where the interactions between a
>>> first stage bootloader and U-Boot are documented.
>>>
>>> Do we have a document of this kind already?
>>
>> The L4T U-Boot source code:-)
>
> There's a bunch of things that even the L4T U-Boot doesn't document. The
> fact that it doesn't initialize the SMMU or WPR doesn't indicate that it
> is something that a first stage bootloader needs to do.

I meant this more along the lines of "if there's no code to do something 
in L4T U-Boot, upstream U-Boot wouldn't need that code either". That 
should be true at least w.r.t. nvtboot integration; certainly there are 
features that only exist in upstream U-Boot and haven't been back-ported 
downstream. I wasn't really implying that there's actual documentation 
(comments) in the L4T U-Boot source code.

WARNING: multiple messages have this Message-ID (diff)
From: Stephen Warren <swarren@wwwdotorg.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 4/4] ARM: tegra210: gpu: configure WPR region
Date: Mon, 9 Nov 2015 09:18:16 -0700	[thread overview]
Message-ID: <5640C748.8080207@wwwdotorg.org> (raw)
In-Reply-To: <20151109154742.GE11362@ulmo.nvidia.com>

On 11/09/2015 08:48 AM, Thierry Reding wrote:
> On Mon, Nov 09, 2015 at 08:19:48AM -0700, Stephen Warren wrote:
>> On 11/09/2015 07:36 AM, Thierry Reding wrote:
>>> On Wed, Oct 28, 2015 at 11:59:04AM -0600, Stephen Warren wrote:
>>>> On 10/18/2015 10:57 PM, Alexandre Courbot wrote:
>>>>> T210's GPU secure firmware loading requires a write-protected region
>>>>> to be set up.
>>>>>
>>>>> This patch reserves the upper 256KB of RAM as the WPR region and locks
>>>>> it so the kernel can initiate secure firmware loading.
>>>>
>>>> On T210, it's the responsibility of nvtboot (which runs before U-Boot) to
>>>> set up any and all carve-outs. This code should not be necessary, and indeed
>>>> I expect the registers it touches can't actually be programmed from U-Boot,
>>>> which runs in non-secure mode after WPR is already locked.
>>>
>>> Can we document this assumption somewhere? It's entirely possible that
>>> someone might want to run U-Boot without nvtboot
>>
>> That's not currently a supported use-case.
>
> Isn't the whole point of open-source for people to be able to do all the
> things that aren't supported?

Sure, but the default case that we support should "just work", and be 
represented by the code we ship, and be supported by us. Any non-default 
case is going to require some research or additional coding/fixing/... 
effort, and we haven't necessarily published the information require to 
make those cases work.

>>> , in which case nvtboot
>>> would still need to be responsible for setting this up.
>>
>> I assume s/nvtboot/whatever other bootloader is in use/?
>
> Right, I was going to write U-Boot here, but that's obviously only true
> if U-Boot is still running in secure mode. Otherwise, yes, it'd be what-
> ever is the other bootloader being used.
>
>>> Or if it isn't
>>> we could still point at some location where the interactions between a
>>> first stage bootloader and U-Boot are documented.
>>>
>>> Do we have a document of this kind already?
>>
>> The L4T U-Boot source code:-)
>
> There's a bunch of things that even the L4T U-Boot doesn't document. The
> fact that it doesn't initialize the SMMU or WPR doesn't indicate that it
> is something that a first stage bootloader needs to do.

I meant this more along the lines of "if there's no code to do something 
in L4T U-Boot, upstream U-Boot wouldn't need that code either". That 
should be true at least w.r.t. nvtboot integration; certainly there are 
features that only exist in upstream U-Boot and haven't been back-ported 
downstream. I wasn't really implying that there's actual documentation 
(comments) in the L4T U-Boot source code.

  parent reply	other threads:[~2015-11-09 16:18 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-19  4:57 [PATCH 0/4] ARM: tegra: GPU WPR region support Alexandre Courbot
2015-10-19  4:57 ` [U-Boot] " Alexandre Courbot
     [not found] ` <1445230624-30314-1-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-10-19  4:57   ` [PATCH 1/4] ARM: tegra: remove vpr_configured() function Alexandre Courbot
2015-10-19  4:57     ` [U-Boot] " Alexandre Courbot
2015-10-19  4:57   ` [PATCH 2/4] ARM: tegra: simplify GPU setup Alexandre Courbot
2015-10-19  4:57     ` [U-Boot] " Alexandre Courbot
2015-10-19  4:57   ` [PATCH 3/4] ARM: tegra: rename GPU functions Alexandre Courbot
2015-10-19  4:57     ` [U-Boot] " Alexandre Courbot
     [not found]     ` <1445230624-30314-4-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-10-28 17:57       ` Stephen Warren
2015-10-28 17:57         ` Stephen Warren
2015-10-19  4:57   ` [PATCH 4/4] ARM: tegra210: gpu: configure WPR region Alexandre Courbot
2015-10-19  4:57     ` [U-Boot] " Alexandre Courbot
     [not found]     ` <1445230624-30314-5-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-10-28 17:59       ` Stephen Warren
2015-10-28 17:59         ` Stephen Warren
     [not found]         ` <56310CE8.3050107-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2015-10-28 23:55           ` Alexandre Courbot
2015-10-28 23:55             ` Alexandre Courbot
     [not found]             ` <5631605B.4020800-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-10-29  3:47               ` Stephen Warren
2015-10-29  3:47                 ` Stephen Warren
2015-11-09 14:36           ` Thierry Reding
2015-11-09 14:36             ` Thierry Reding
     [not found]             ` <20151109143654.GB11362-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-11-09 15:19               ` Stephen Warren
2015-11-09 15:19                 ` Stephen Warren
     [not found]                 ` <5640B994.7050307-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2015-11-09 15:48                   ` Thierry Reding
2015-11-09 15:48                     ` Thierry Reding
     [not found]                     ` <20151109154742.GE11362-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-11-09 16:18                       ` Stephen Warren [this message]
2015-11-09 16:18                         ` Stephen Warren
2015-10-26  5:50   ` [PATCH 0/4] ARM: tegra: GPU WPR region support Alexandre Courbot
2015-10-26  5:50     ` [U-Boot] " Alexandre Courbot
     [not found]     ` <CAAVeFuLENPfjy1k2ZTUArTph_6wbAxXninZ2Tmp6-MV4zVgaHw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-27 15:57       ` Tom Warren
2015-10-27 15:57         ` [U-Boot] " Tom Warren
     [not found]         ` <caa39e0a12454046a1638aae190f0161-wO81nVYWzR66sJks/06JalaTQe2KTcn/@public.gmane.org>
2015-10-28  9:13           ` Alexandre Courbot
2015-10-28  9:13             ` [U-Boot] " Alexandre Courbot
2015-10-28 15:44             ` Tom Warren
2015-10-28 15:44               ` [U-Boot] " Tom Warren

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=5640C748.8080207@wwwdotorg.org \
    --to=swarren-3lzwwm7+weoh9zmkesr00q@public.gmane.org \
    --cc=acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=twarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=u-boot-0aAXYlwwYIKGBzrmiIFOJg@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.