@@ -283,17 +283,19 @@ static bool has_otp_info = false;
283
283
284
284
bool getSecureFlashData () {
285
285
static OptaBoardInfo info;
286
- char temp_buf[sizeof (OptaBoardInfo) + 1 ];
287
- int ret = QSPI_STATUS_OK;
288
- mbed::QSPI _qspi (QSPI_FLASH1_IO0, QSPI_FLASH1_IO1, QSPI_FLASH1_IO2, QSPI_FLASH1_IO3, QSPI_FLASH1_SCK, QSPI_FLASH1_CSN, QSPIF_POLARITY_MODE_0);
289
- auto rxlen = sizeof (temp_buf);
290
- ret = _qspi.read (0x48 , -1 , 1 << 13 , temp_buf, &rxlen);
286
+ uint8_t temp_buf[sizeof (OptaBoardInfo) + 1 ];
287
+ int ret = 0 ;
288
+ static SecureQSPIFBlockDevice secure_root;
289
+ secure_root.init ();
290
+ // read secure sector 2 ( address 1 << 13 )
291
+ ret = secure_root.readSecure (temp_buf, (1 << 13 ), sizeof (temp_buf));
291
292
memcpy (&info, &temp_buf[1 ], sizeof (OptaBoardInfo));
292
293
if (info.magic == OTP_QSPI_MAGIC) {
293
294
_boardInfo = (uint8_t *)&info;
294
295
has_otp_info = true ;
295
296
}
296
- return ret == QSPI_STATUS_OK;
297
+ secure_root.deinit ();
298
+ return ret == 0 ;
297
299
}
298
300
299
301
uint8_t * boardInfo () {
0 commit comments