diff --git a/arduino/libretuya/common/main.cpp b/arduino/libretuya/common/main.cpp index 5ec2b76..d608407 100644 --- a/arduino/libretuya/common/main.cpp +++ b/arduino/libretuya/common/main.cpp @@ -10,6 +10,10 @@ extern "C" { fal_partition_t fal_root_part = NULL; } +// Arduino framework initialization. +// May be redefined by family files. +void init() __attribute__((weak)); + // Weak empty variant initialization function. // May be redefined by variant files. void initVariant() __attribute__((weak)); diff --git a/arduino/libretuya/libraries/Update/uf2ota/uf2priv.c b/arduino/libretuya/libraries/Update/uf2ota/uf2priv.c index 35cc1ca..eee59f6 100644 --- a/arduino/libretuya/libraries/Update/uf2ota/uf2priv.c +++ b/arduino/libretuya/libraries/Update/uf2ota/uf2priv.c @@ -118,12 +118,12 @@ uf2_err_t uf2_update_parts(uf2_ota_t *ctx, char *part1, char *part2) { ctx->erased_length = 0; if (part1[0]) { - ctx->part1 = fal_partition_find(part1); + ctx->part1 = (fal_partition_t)fal_partition_find(part1); if (!ctx->part1) return UF2_ERR_PART_404; } if (part2[0]) { - ctx->part2 = fal_partition_find(part2); + ctx->part2 = (fal_partition_t)fal_partition_find(part2); if (!ctx->part2) return UF2_ERR_PART_404; } diff --git a/arduino/libretuya/posix/strdup.c b/arduino/libretuya/posix/strdup.c index 8d1e4ff..160d396 100644 --- a/arduino/libretuya/posix/strdup.c +++ b/arduino/libretuya/posix/strdup.c @@ -1,6 +1,7 @@ /* Copyright (c) Kuba SzczodrzyƄski 2022-05-16. */ #include +#include __attribute__((weak)) char *strdup(const char *s) { size_t len = strlen(s) + 1; diff --git a/arduino/realtek-ambz/cores/arduino/wiring.c b/arduino/realtek-ambz/cores/arduino/wiring.c index 58fd885..f8ae1fd 100644 --- a/arduino/realtek-ambz/cores/arduino/wiring.c +++ b/arduino/realtek-ambz/cores/arduino/wiring.c @@ -33,10 +33,6 @@ static __inline uint32_t __get_ipsr__(void) { void *gpio_pin_struct[PINS_COUNT] = {NULL}; -__attribute__((weak)) void init(void) { - // nop -} - void delay(uint32_t ms) { /* osStatus ret; */