AirLift support for wifi, socketpool, and ssl modules #10786
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Implement wifi/socketpool/ssl for Airlift (NINA-FW) co-processors.
Starting this as a draft, for testing purposes. Tested with Adafruit NINA-FW 3.4.0.
GET_STATE_TCP_CMDandAVAIL_DATA_TCP_CMD. The failure is that the ready line from the AirLift is in the wrong state. This may be some failure or race condition on the AirLift side. I have some other ideas for investigating this as well. Adding some delays did not help. Error is repeated:devices/airlift.wifi.radio.init_airlift()added to specify pins to use.CIRCUITPY_{WIFI,SSL,SOCKETPOOL}further refined asCIRCUITPY_*_NATIVEandCIRCUITPY_*_AIRLIFT. Compiled guards changed appropriately.common_hal_socketpool_socket_bind()return type fromsize_ttoint.socketpoolfunction names which were not named canonically.common_hal_wifi_radio_get_version(().common_hal_socketpool_socket_recv_into()andsocketpool_socket_recv_into()buffer args wereconstand should not have been.-flto=autoinstead of-flto=jobserverto fix spurious message about jobserver.Freeverb,c(found while consolidating some error messages).try_lock().IPv4Address. Simplify some conversion code.elem_print_helper()routines inshared_bindings/util.cto make printing objects easier. Used to give more info when printing aNetworkobject.port_malloc_check()andport_realloc_check()routines. These are not used now, but were added when it looked like I needed to do port mallocs for talking to the AirLift.There were a lot more commits with some dead ends and snapshot commits but I rebased to only a few.