| 32f31bf3 | 30-Jan-2017 |
Andy Green <andy@warmcat.com> |
dtb: no need to print trace with an ! if we were given a dtb with expected nodes
Signed-off-by: Andy Green <andy@warmcat.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> |
| afd58d7f | 30-Jan-2017 |
Andy Green <andy@warmcat.com> |
Add one IMSG line before OP-TEE init message
Otherwise at least on Hikey, it comes partway through an ARM TF message and is hard to parse.
Signed-off-by: Andy Green <andy@warmcat.com> [jf: s/a-t-f/
Add one IMSG line before OP-TEE init message
Otherwise at least on Hikey, it comes partway through an ARM TF message and is hard to parse.
Signed-off-by: Andy Green <andy@warmcat.com> [jf: s/a-t-f/ARM TF/ in commit log] Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| ac0bab7f | 13-Apr-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: REE FS: use the new dirfile interface
Uses the new dirfile interface to keep track of persistent objects.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Tested-by: Etienne Carrie
core: REE FS: use the new dirfile interface
Uses the new dirfile interface to keep track of persistent objects.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (b2260) Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU) Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 0c4e1284 | 13-Apr-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: FS: key manager takes supplied UUID
The FS key manager takes a supplied UUID instead of extracting it from current session in order to be more flexible.
Reviewed-by: Jerome Forissier <jerome.
core: FS: key manager takes supplied UUID
The FS key manager takes a supplied UUID instead of extracting it from current session in order to be more flexible.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 22efbd4a | 13-Apr-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: FS: add helpers for tee_fs_dirfile_fileh
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jen
core: FS: add helpers for tee_fs_dirfile_fileh
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| d7767217 | 13-Apr-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: FS: introduce dirfile interface
Introduces the dirfile interface which keeps a list of secure storage objects. Each object is represented by the UUID of the owning TA, a hash of the object, an
core: FS: introduce dirfile interface
Introduces the dirfile interface which keeps a list of secure storage objects. Each object is represented by the UUID of the owning TA, a hash of the object, and a handle to the name used in normal world to store the encrypted data of the object.
The interface allows queued atomic updates to avoid difficult races during creation and renaming of objects.
By keeping the list of the secure object files in a single database the collected state of the objects can be represented by a single hash or even a counter. This gives some flexibility when implementing anti-rollback protection.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| f28e5060 | 13-Apr-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: htree: export/import hash of object
The hash-tree can be verified based on a known hash of the root node of a secure storage object. When syncing the hash tree the hash of the root node is sto
core: htree: export/import hash of object
The hash-tree can be verified based on a known hash of the root node of a secure storage object. When syncing the hash tree the hash of the root node is stored in an external location for further protection.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 3b3a4611 | 03-Mar-2017 |
Mathieu Briand <mbriand@witekio.com> |
core: arm: Do not handle unsupported interrupts
Trying to handle an interrupt with an ID above the maximum will result in a kernel panic as the itr_handle() function will try to disable this unhand
core: arm: Do not handle unsupported interrupts
Trying to handle an interrupt with an ID above the maximum will result in a kernel panic as the itr_handle() function will try to disable this unhandled interruption.
Interrupts with a high ID will now be simply ignored.
Signed-off-by: Mathieu Briand <mbriand@witekio.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 38f23772 | 21-Feb-2017 |
Andrew F. Davis <afd@ti.com> |
plat-ti: Add AM43xx platform services
The AM43xx ROM has a different monitor API set than DRA7xx/AM57xx devices, implement these services here.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-
plat-ti: Add AM43xx platform services
The AM43xx ROM has a different monitor API set than DRA7xx/AM57xx devices, implement these services here.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| 19d8ffe4 | 29-Mar-2017 |
Andrew F. Davis <afd@ti.com> |
plat-ti: Add support for PL310 in AM43xx
AM43xx family devices use the ARM PL310 Cache Controller, add support for this here.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Joakim Bech <j
plat-ti: Add support for PL310 in AM43xx
AM43xx family devices use the ARM PL310 Cache Controller, add support for this here.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| 1c0b8da6 | 21-Feb-2017 |
Andrew F. Davis <afd@ti.com> |
plat-ti: Add AM43xx platform flavor
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Joakim Bech <joakim.bech@linaro.org> |
| d7d52b01 | 21-Feb-2017 |
Andrew F. Davis <afd@ti.com> |
plat-ti: Cleanup platform configuration
Reorganize platform configuration to assist in addition of new platforms. No functional changes.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Joa
plat-ti: Cleanup platform configuration
Reorganize platform configuration to assist in addition of new platforms. No functional changes.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| 15485f40 | 19-Apr-2017 |
Jerome Forissier <jerome.forissier@linaro.org> |
core: mm: print memory type name instead of numerical value
Improve the legibility of the memory manager debug traces by converting the memory types to strings before printing them in dump_mmap_tabl
core: mm: print memory type name instead of numerical value
Improve the legibility of the memory manager debug traces by converting the memory types to strings before printing them in dump_mmap_table(), add_phys_mem() and add_va_space().
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com>
show more ...
|
| e15384ca | 04-Apr-2017 |
Andrew F. Davis <afd@ti.com> |
core_mmu_v7: Allow cache memory attributes to match non-SMP Linux
On non-SMP ARM Linux the default cache policy is inner/outer write-back, no write-allocate not sharable. When compiled with SMP supp
core_mmu_v7: Allow cache memory attributes to match non-SMP Linux
On non-SMP ARM Linux the default cache policy is inner/outer write-back, no write-allocate not sharable. When compiled with SMP support the policy is updated to inner/outer write-back with write-allocate sharable.
OP-TEE makes the assumption that SMP will be enabled, allow overriding this for the non-SMP cases.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 59cae313 | 04-Apr-2017 |
Andrew F. Davis <afd@ti.com> |
core_mmu_v7: Rename index to normal cached memory
The index into cache attribute registers for device memory is called ATTR_DEVICE_INDEX, but the normal cached memory is referred to as ATTR_IWBWA_OW
core_mmu_v7: Rename index to normal cached memory
The index into cache attribute registers for device memory is called ATTR_DEVICE_INDEX, but the normal cached memory is referred to as ATTR_IWBWA_OWBWA_INDEX, this implies the caching type. This is not always the type of cache we will use. Rename it to a more generic ATTR_NORMAL_CACHED_INDEX.
Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 93c9df51 | 29-Mar-2017 |
Andrew F. Davis <afd@ti.com> |
plat-ti: Move TZDRAM area to better align with other DRAM uses
The area currently reserved for OP-TEE overlaps an area that is used by another existing device use-case, move OP-TEE to a non-interfer
plat-ti: Move TZDRAM area to better align with other DRAM uses
The area currently reserved for OP-TEE overlaps an area that is used by another existing device use-case, move OP-TEE to a non-interfering address.
Signed-off-by: Andrew F. Davis <afd@ti.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 62ede146 | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: assert no null physical address is used in core static mapping
Current implementation of core mapping assumes value 0 denotes an invalid physical address. Hence this change asserts (in debug m
core: assert no null physical address is used in core static mapping
Current implementation of core mapping assumes value 0 denotes an invalid physical address. Hence this change asserts (in debug mode) that no null physical address is used in the core static mapping.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 737a9daf | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: skip registered physical memory with a null size
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> |
| 0cf0c5a8 | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: debug trace the number of xlat tables used
These debug traces can be quite handy to monitor the number of translation tables effectively used at runtime.
Signed-off-by: Etienne Carriere <etie
core: debug trace the number of xlat tables used
These debug traces can be quite handy to monitor the number of translation tables effectively used at runtime.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 4b2b8e52 | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: minor cleanup in core_mmu_lpae.c
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> |
| aa2ab38b | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: more flexible static memory mapping
This change allows remove dependency of the static mapping description on memory type IDs ordering and the requirements for such memory types to match uniqu
core: more flexible static memory mapping
This change allows remove dependency of the static mapping description on memory type IDs ordering and the requirements for such memory types to match unique memories. This change will be required by a later change that will define several memory types for the TEE RAM (read-only/executable, read-only, read/write).
The setup of the static memory mapping array is somewhat changed: - 1st step: fill the array from registered "phys_mem" (unchanged) - 2nd step: assign "region size" to arrays cells (unchanged) - 3rd step: sort array by region size. This allows to group small page mappings together to prevent wasting xlat tables. - 4th step: for non LPAE mapping only: separate secure mapping from non-secure mapping for the small page mapped areas. - 5th step: assign virtual addresses for flat-mapped areas. This sequence saves the flat mapped areas base address which is used in the next step to assign non-flat mapped virtual memories. - 6th step: assign virtual addresses for the non-flat mapped areas. This step considers the cases where non-flat mapped areas are mapped before or after flat mapped areas as done before this change. - a last, yet not mandatory step sorts the static mapping description array by virtual address ranges.
With this change, the static mapping does not expects memory type ID value ordering reflect any ordering of the areas virtual address ranges. Instead, the memory type IDs only reflect the expected mapping attributes which drive how virtual mapping is built.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 2d216865 | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: default define stack alignment and core vmem size
Default define CFG_TEE_RAM_VA_SIZE if not defined from platform.
As a side effect of bringing a default value for CFG_TEE_RAM_VA_SIZE into co
core: default define stack alignment and core vmem size
Default define CFG_TEE_RAM_VA_SIZE if not defined from platform.
As a side effect of bringing a default value for CFG_TEE_RAM_VA_SIZE into core_mmu.h and thus including 'platform_config.h', the macro STACK_ALIGNMENT defined in user_ta.c must not conflict with the macro defined by the platform. Hence this change also default defines STACK_ALIGNMENT if not defined from platform.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| b90c1e32 | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: debug trace for non-LPAE mapping
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> |
| 04ec0d2d | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: fix non-LPAE mapping against unmapped areas
Core defines some virtual memory than should not be default mapped. Yet core_mmu_v7.c loads a non null descriptor in MMU tables for such memories: a
core: fix non-LPAE mapping against unmapped areas
Core defines some virtual memory than should not be default mapped. Yet core_mmu_v7.c loads a non null descriptor in MMU tables for such memories: attributes are null (which makes the page effectively not mapped) but a meaningless non null physical page address is loaded. This change
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| ee203c1c | 10-Apr-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: move place where TEE_RAM mapping region size is forced
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> |