* Fix unexpected (CMake) behaviour with PICO_BOARD variable.
Changing PICO_BOARD value from "pico_w" to "pico" did not
unset PICO_CYW43_SUPPORTED variable. Which could lead
CYW43 driver included in builds for "pico".
solution: make PICO_CYW43_SUPPORTED a non cache variable
Co-authored-by: Graham Sanderson <graham.sanderson@raspberrypi.com>
* Remove incorrect override for LWIP_PLATFORM_ASSERT
LWIP_PLATFORM_ASSERT macro is used by lwip driver implementations to specify the behavior of the assertions in lwip code.
The previous override of this macro incorrectly assumed that the parameter to the function macro was the condition to check. However this is incorrect. The parameter is actually a message string defining what failed.
This mistake caused all assertions to be ignored. ( and myself to loose many hours of debugging time )
By removing this, we restore the default behavior specified by lwip which is to use `printf` to log the message.
* I think i prefer to use panic (which doesn't pull in fflush etc)
Co-authored-by: Graham Sanderson <graham.sanderson@gmail.com>
* Remove unnecessary wait in pico_divider.
There is no need to wait if there is more than 8 cycles between setup and result readout.
Dividend/divisor readout should be correct without delay. Update comment to reflect that.
* Optimize hw_divider_save_state/hw_divider_restore_state.
Doing multiple pushes to avoid stack usage is faster.
The wait loop in hw_divider_save_state had an incorrect branch in the wait loop.
This didn't matter since the wait wasn't necessary to begin with.
* Remove pointless aligns in hardware_divider.
The regular_func_with_section inserts a new section so if aligning
is desired it should be placed in the macro after section start.
* Save a few bytes in hardware_divider.
Signed and unsigned code can use the same exit code.
Branching to the common code is free since we need the 8 cycle
delay anyway.
* Add mbedtls as a submodule
Checked out on branch mbedtls-2.28
* Add mbedtls to pico-sdk
Link your code to pico_lwip_mbedtls and pico_mbedtls.
See tls_client example in pico-examples
Fixes https://github.com/raspberrypi/pico-sdk/issues/893
* Implement whole-buffer write semihosting
Each semihosting call is very slow, so doing it for each character
does not provide an ideal developer experience.
This change allows the entire buffer to be printed out in a single call.
* Enable/disable connection check made with DTR
this gives users the option to disable DTR check.
Co-authored-by: Graham Sanderson <graham.sanderson@gmail.com>