Skip to content

Commit aa0f221

Browse files
Add syscall for os_factory_hash()
1 parent 80b72e7 commit aa0f221

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

include/os_id.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,17 @@ SYSCALL unsigned int os_flags(void);
2222
SYSCALL unsigned int os_version(unsigned char *version PLENGTH(maxlength), unsigned int maxlength);
2323
/* Grab the SE serial number */
2424
SYSCALL unsigned int os_serial(unsigned char *serial PLENGTH(maxlength), unsigned int maxlength);
25+
/* 32-bytes data unique to SE */
26+
SYSCALL unsigned int os_factory_hash(unsigned char *buffer PLENGTH(maxlength),
27+
unsigned int maxlength);
28+
2529
#ifdef HAVE_MCU_SERIAL_STORAGE
2630
/* Grab the SEPROXYHAL's MCU serial number */
2731
SYSCALL unsigned int os_seph_serial(unsigned char *serial PLENGTH(maxlength),
2832
unsigned int maxlength);
2933
#endif // HAVE_MCU_SERIAL_STORAGE
30-
/* Grab the SEPROXYHAL's feature set */
34+
35+
/* Grab the SEPROXYHAL's feature set */
3136
SYSCALL unsigned int os_seph_features(void);
3237
/* Grab the SEPROXYHAL's version */
3338
SYSCALL unsigned int os_seph_version(unsigned char *version PLENGTH(maxlength),

include/syscalls.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@
158158
#define SYSCALL_os_flags_ID 0x0000006a
159159
#define SYSCALL_os_version_ID 0x0200006b
160160
#define SYSCALL_os_serial_ID 0x0200006c
161+
#define SYSCALL_os_factory_hash_ID 0x02000075
161162
#define SYSCALL_os_seph_features_ID 0x0000006e
162163
#define SYSCALL_os_seph_version_ID 0x0200006f
163164
#define SYSCALL_os_bootloader_version_ID 0x02000073

src/syscalls.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1536,6 +1536,14 @@ unsigned int os_serial(unsigned char *serial, unsigned int maxlength)
15361536
return (unsigned int) SVC_Call(SYSCALL_os_serial_ID, parameters);
15371537
}
15381538

1539+
unsigned int os_factory_hash(unsigned char *buffer, unsigned int maxlength)
1540+
{
1541+
unsigned int parameters[2];
1542+
parameters[0] = (unsigned int) buffer;
1543+
parameters[1] = (unsigned int) maxlength;
1544+
return (unsigned int) SVC_Call(SYSCALL_os_factory_hash_ID, parameters);
1545+
}
1546+
15391547
unsigned int os_seph_features(void)
15401548
{
15411549
unsigned int parameters[2];

0 commit comments

Comments
 (0)