From: Srinivas, Madan <madans@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 2/7] arm: mach-keystone: Implements FIT post-processing call for keystone SoCs
Date: Thu, 8 Sep 2016 11:29:56 -0400 [thread overview]
Message-ID: <57D183F4.9040401@ti.com> (raw)
In-Reply-To: <20160906133449.GJ4990@bill-the-cat>
On 9/6/2016 9:34 AM, Tom Rini wrote:
> On Thu, Sep 01, 2016 at 01:04:37AM -0400, Madan Srinivas wrote:
>
>> From: Vitaly Andrianov <vitalya@ti.com>
>>
>> This commit implements the board_fit_image_post_process() function for
>> the keystone architecture. Unlike OMAP class devices, security
>> functions in keystone are not handled in the ROM.
>> The interface to the secure functions is TI proprietary and depending
>> on the keystone platform, the security functions like encryption,
>> decryption and authentication might even be offloaded to other secure
>> processing elements in the SoC.
>> The boot monitor acts as the gateway to these secure functions and the
>> boot monitor for secure devices is available as part of the SECDEV
>> package for KS2. For more details refer doc/README.ti-secure
>>
>> Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
>> Signed-off-by: Madan Srinivas <madans@ti.com>
>>
>> Cc: Lokesh Vutla <lokeshvutla@ti.com>
>> Cc: Dan Murphy <dmurphy@ti.com>
>
> First, what is done to ensure that the magic blob we're offloading to
> isn't malicious?
The magic blob is signed and authenticated as part of the boot flow to
ensure that it is not malicious.
> Second, this appears to be missing cache flushes
> that're done in arch/arm/cpu/armv7/omap-common/sec-common.c and, well,
> why can't we re-use the existing code? Given how rarely IP blocks are
> written from scratch rather than being an evolution of a previous block
Valid point Tom, but this case is the exception to that rule - the
Keystone and the OMAP ROMs were developed independently, the keystone
ROMs were based on DSP ROMs, not on OMAP, and therefore the code
omap-common/in sec-common.c cannot be reused at all for keystone - the
calling conventions, parameters APIs are all different.
> I can't imagine that we can't make the code there be re-used nor that we
> don't need / couldn't use the flushing and alignment checks nor status
> messages. Thanks!
>
Unlike OMAP, in keystone2 for eg, the authentication is also done by
DSP, so the code in sec-common.c cannot be reused at all. Even if K2 ROM
APIs are used, the calling conventions are different. Also, unlike OMAP,
the boot monitor has a secure and non-secure component (everything gets
authenticated).
Again in OMAP the authentication is always done using only ROM APIs,
whereas in keystone the authentication and decryption can be done using
ROM, Secure ARM libraries or Secure DSP libraries. Using the current
scheme, this can be achieved simply by selecting a different boot
monitor binary to include in the signing step, the same u-boot binary
will work for all three authentication schemes.
Regards,
Madan
next prev parent reply other threads:[~2016-09-08 15:29 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <madans@ti.com>
2016-08-26 6:30 ` [U-Boot] [PATCH 0/7] Adds support for secure boot on Keystone SoCs (K2E) Madan Srinivas
2016-08-26 6:30 ` [U-Boot] [PATCH 1/7] include: image.h: Fixes build warning with CONFIG_FIT_IMAGE_POST_PROCESS Madan Srinivas
2016-08-29 14:52 ` Andrew F. Davis
2016-08-26 6:30 ` [U-Boot] [PATCH 2/7] arm: mach-keystone: Implements FIT post-processing call for keystone SoCs Madan Srinivas
2016-08-29 16:22 ` Dan Murphy
2016-08-30 9:03 ` Lokesh Vutla
2016-08-26 6:30 ` [U-Boot] [PATCH 3/7] arm: omap-common: Enable support for K2 HS devices in u-boot Madan Srinivas
2016-08-29 14:56 ` Andrew F. Davis
2016-08-29 17:02 ` Dan Murphy
2016-08-26 6:30 ` [U-Boot] [PATCH 4/7] arm: omap-common: Reuse secure image name between OMAP and keystone Madan Srinivas
2016-08-29 15:10 ` Andrew F. Davis
2016-08-26 6:30 ` [U-Boot] [PATCH 5/7] arm: mach-keystone: config.mk: Adds support for secure images on K2 Madan Srinivas
2016-08-29 15:21 ` Andrew F. Davis
2016-08-26 6:30 ` [U-Boot] [PATCH 6/7] doc: Updates info on using keystone secure devices from TI Madan Srinivas
2016-08-26 6:30 ` [U-Boot] [PATCH 7/7] configs: Adds a defconfig for K2E High Security EVM Madan Srinivas
2016-08-29 15:28 ` Andrew F. Davis
2016-09-01 5:04 ` [U-Boot] [PATCH v2 0/7] Adds support for secure boot on Keystone SoCs (K2E) Madan Srinivas
2016-09-01 5:04 ` [U-Boot] [PATCH v2 1/7] include: image.h: Fixes build warning with CONFIG_FIT_IMAGE_POST_PROCESS Madan Srinivas
2016-09-06 13:34 ` Tom Rini
2016-09-06 13:34 ` Tom Rini
2016-09-01 5:04 ` [U-Boot] [PATCH v2 2/7] arm: mach-keystone: Implements FIT post-processing call for keystone SoCs Madan Srinivas
2016-09-06 13:34 ` Tom Rini
2016-09-08 15:29 ` Srinivas, Madan [this message]
2016-09-01 5:04 ` [U-Boot] [PATCH v2 3/7] arm: omap-common: adds secure image name common to OMAP and keystone Madan Srinivas
2016-09-06 13:34 ` Tom Rini
2016-09-01 5:04 ` [U-Boot] [PATCH v2 4/7] arm: omap-common: Enable support for K2 HS devices in u-boot Madan Srinivas
2016-09-06 13:34 ` Tom Rini
2016-09-01 5:04 ` [U-Boot] [PATCH v2 5/7] arm: mach-keystone: config.mk: Adds support for secure images on K2 Madan Srinivas
2016-09-02 14:35 ` Andrew F. Davis
2016-09-01 5:04 ` [U-Boot] [PATCH v2 6/7] doc: Updates info on using keystone secure devices from TI Madan Srinivas
2016-09-06 13:34 ` Tom Rini
2016-09-01 5:04 ` [U-Boot] [PATCH v2 7/7] configs: Adds a defconfig for K2E High Security EVM Madan Srinivas
2016-09-02 4:25 ` [U-Boot] [PATCH v2 0/7] Adds support for secure boot on Keystone SoCs (K2E) Lokesh Vutla
2016-09-02 16:48 ` Srinivas, Madan
2016-09-03 16:56 ` Lokesh Vutla
2016-09-03 17:23 ` Nishanth Menon
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=57D183F4.9040401@ti.com \
--to=madans@ti.com \
--cc=u-boot@lists.denx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox