mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-21 17:38:51 +09:00
![Tom Rini](/assets/img/avatar_default.png)
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <trini@konsulko.com>
71 lines
1.6 KiB
C
71 lines
1.6 KiB
C
/* SPDX-License-Identifier: BSD-2-Clause */
|
|
/*
|
|
* OP-TEE related definitions
|
|
*
|
|
* (C) Copyright 2016 Linaro Limited
|
|
* Andrew F. Davis <andrew.davis@linaro.org>
|
|
*/
|
|
|
|
#ifndef _OPTEE_H
|
|
#define _OPTEE_H
|
|
|
|
#include <linux/errno.h>
|
|
|
|
#define OPTEE_MAGIC 0x4554504f
|
|
#define OPTEE_VERSION 1
|
|
#define OPTEE_ARCH_ARM32 0
|
|
#define OPTEE_ARCH_ARM64 1
|
|
|
|
struct optee_header {
|
|
uint32_t magic;
|
|
uint8_t version;
|
|
uint8_t arch;
|
|
uint16_t flags;
|
|
uint32_t init_size;
|
|
uint32_t init_load_addr_hi;
|
|
uint32_t init_load_addr_lo;
|
|
uint32_t init_mem_usage;
|
|
uint32_t paged_size;
|
|
};
|
|
|
|
static inline uint32_t optee_image_get_entry_point(const image_header_t *hdr)
|
|
{
|
|
struct optee_header *optee_hdr = (struct optee_header *)(hdr + 1);
|
|
|
|
return optee_hdr->init_load_addr_lo;
|
|
}
|
|
|
|
static inline uint32_t optee_image_get_load_addr(const image_header_t *hdr)
|
|
{
|
|
return optee_image_get_entry_point(hdr) - sizeof(struct optee_header);
|
|
}
|
|
|
|
#if defined(CONFIG_OPTEE)
|
|
int optee_verify_image(struct optee_header *hdr, unsigned long tzdram_start,
|
|
unsigned long tzdram_len, unsigned long image_len);
|
|
#else
|
|
static inline int optee_verify_image(struct optee_header *hdr,
|
|
unsigned long tzdram_start,
|
|
unsigned long tzdram_len,
|
|
unsigned long image_len)
|
|
{
|
|
return -EPERM;
|
|
}
|
|
|
|
#endif
|
|
|
|
#if defined(CONFIG_OPTEE)
|
|
int optee_verify_bootm_image(unsigned long image_addr,
|
|
unsigned long image_load_addr,
|
|
unsigned long image_len);
|
|
#else
|
|
static inline int optee_verify_bootm_image(unsigned long image_addr,
|
|
unsigned long image_load_addr,
|
|
unsigned long image_len)
|
|
{
|
|
return -EPERM;
|
|
}
|
|
#endif
|
|
|
|
#endif /* _OPTEE_H */
|