diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2017-05-13 22:06:28 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2017-05-13 22:06:28 (GMT) |
commit | 198ba09ef74a02a727ac3e679edfa328b2508152 (patch) | |
tree | 8846e81d7e3eb3e7b00c9363feba36c77fe058f8 /plugins/mobicore/mclf-def.h | |
parent | 5fce21379baac06b7b9359c4b0fcb7fb3867c301 (diff) |
Preloaded Mobicore information at loading.
Diffstat (limited to 'plugins/mobicore/mclf-def.h')
-rw-r--r-- | plugins/mobicore/mclf-def.h | 44 |
1 files changed, 39 insertions, 5 deletions
diff --git a/plugins/mobicore/mclf-def.h b/plugins/mobicore/mclf-def.h index 9c91ccc..e632068 100644 --- a/plugins/mobicore/mclf-def.h +++ b/plugins/mobicore/mclf-def.h @@ -29,6 +29,14 @@ +/** + * Ces définitions se basent sur : + * + * https://github.com/Trustonic/trustonic-tee-user-space/blob/master/common/MobiCore/inc/mcLoadFormat.h + */ + + + /* ------------------------------ DECLARATIONS DE BASE ------------------------------ */ @@ -70,10 +78,12 @@ typedef uint32_t mclf_addr_t; /* Types de service définissant l'exécutable */ typedef enum service_type_t { - SERVICE_TYPE_ILLEGAL = 0, /* Type invalide */ - SERVICE_TYPE_DRIVER = 1, /* Le service est un pilote */ - SERVICE_TYPE_SP_TRUSTLET = 2, /* Le service est un Trustlet */ - SERVICE_TYPE_SYSTEM_TRUSTLET = 3 /* Idem, mais Trustlet système */ + SERVICE_TYPE_ILLEGAL = 0, /* Type invalide */ + SERVICE_TYPE_DRIVER = 1, /* Le service est un pilote */ + SERVICE_TYPE_SP_TRUSTLET = 2, /* Le service est un Trustlet */ + SERVICE_TYPE_SYSTEM_TRUSTLET = 3, /* Idem, mais Trustlet système */ + SERVICE_TYPE_MIDDLEWARE = 4, /* Service middleware */ + SERVICE_TYPE_LAST_ENTRY = 5 /* Marqueur de fin */ } service_type_t; @@ -107,12 +117,36 @@ typedef struct _mc_uuid_t } mc_uuid_t; +#define MC_DRV_VENDOR_ID_SHIFT (16) +#define MC_DRV_VENDOR_ID_MASK (0xFFFF << MC_DRV_VENDOR_ID_SHIFT) +#define MC_DRV_NUMBER_MASK (0x0000FFFF) + +/* Identifiant de MobiCore */ +typedef enum { + + MC_DRV_VENDOR_ID_GD = 0 << MC_DRV_VENDOR_ID_SHIFT, + +} mc_drv_vendor_id_t; + +/* Identifiants de pilote GD pour MobiCore */ +typedef enum { + MC_DRV_NUMBER_INVALID = 0, + MC_DRV_NUMBER_CRYPTO = 1, + MC_DRV_NUMBER_LAST_PRE_INSTALLED = 100, + TB_DRV_NUMBER_TUI = 0x101, + TB_DRV_NUMBER_TPLAY = 0x600, +} mc_drv_number_t; +/* Identifiants de pilote Mobicore pour les Trustlets */ typedef enum { - TODO_ + MC_DRV_ID_INVALID = MC_DRV_VENDOR_ID_GD | MC_DRV_NUMBER_INVALID, + MC_DRV_ID_CRYPTO = MC_DRV_VENDOR_ID_GD | MC_DRV_NUMBER_CRYPTO, + MC_DRV_ID_LAST_PRE_INSTALLED = MC_DRV_VENDOR_ID_GD | MC_DRV_NUMBER_LAST_PRE_INSTALLED, + TB_DRV_ID_TUI = MC_DRV_VENDOR_ID_GD | TB_DRV_NUMBER_TUI, + TB_DRV_ID_TPLAY = MC_DRV_VENDOR_ID_GD | TB_DRV_NUMBER_TPLAY, } mc_driver_id_t; |