card_init_core1() shall be called from every thread launched on core1.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
This commit is contained in:
Pol Henarejos
2022-09-22 19:24:07 +02:00
parent e29521fcf6
commit 3092da23ed
3 changed files with 4 additions and 3 deletions

View File

@@ -127,6 +127,7 @@ uint16_t set_res_sw(uint8_t sw1, uint8_t sw2) {
void apdu_thread() { void apdu_thread() {
card_init_core1();
while (1) { while (1) {
uint32_t m; uint32_t m;
queue_remove_blocking(&usb_to_card_q, &m); queue_remove_blocking(&usb_to_card_q, &m);

View File

@@ -150,15 +150,14 @@ static int usb_event_handle() {
} }
extern void low_flash_init(); extern void low_flash_init();
static void card_init_core1(void) { void card_init_core1() {
low_flash_init(); low_flash_init_core1();
} }
size_t finished_data_size = 0; size_t finished_data_size = 0;
void card_start(void (*func)(void)) { void card_start(void (*func)(void)) {
multicore_reset_core1(); multicore_reset_core1();
card_init_core1();
multicore_launch_core1(func); multicore_launch_core1(func);
led_set_blink(BLINK_MOUNTED); led_set_blink(BLINK_MOUNTED);
} }

View File

@@ -58,5 +58,6 @@ extern uint32_t usb_write_offset(uint16_t len, uint16_t offset);
extern void usb_clear_rx(); extern void usb_clear_rx();
extern size_t finished_data_size; extern size_t finished_data_size;
extern void usb_set_timeout_counter(uint32_t v); extern void usb_set_timeout_counter(uint32_t v);
extern void card_init_core1();
#endif #endif