-
Notifications
You must be signed in to change notification settings - Fork 719
[nrf fromtree] picolibc: Update module to version 1.8.8 #2159
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
The following west manifest projects have been modified in this Pull Request:
Note: This message is automatically posted and updated by the Manifest GitHub Action. |
|
@ns-tolu This is responsible for some failures in CI testing bleutooth/mesh using tests from upstream but with softdevice controller. Those test don't work now due to other reasons and probably won't be resolved for 2.8. I don't know if the error seen there is also visible anywhere else. As a release manager, please decide if this should enter the release or not. |
|
@aescolar @carlescufi what is your opinion on priority for this? |
A clarification: Not only those tests. Also some others which would pass otherwise. Apart from this, Keith's release notes was not too clear on what else is broken with pico 1.8.7, but given that he made a new release right away to fix those I presume they are worthwhile. So I would be quite inclined to update pico to 1.8.8. |
|
Given that we use GCC 12 in our toolchain, that there have been 2 Ubuntu LTS releases since 20.04, and that this only affects if building picolib from source, I suggest we do not include this in 2.8.0. |
Ok, I will close this PR then. The update can come in the next upmerge, or if somebody else requests it. |
Create separate offloaded raw tx mode which will work as stand-alone compile-time mode. Signed-off-by: Kapil Bhatt <[email protected]> (cherry picked from commit 5c3cc37)
Add wrapper APIs for the offloaded raw TX feature supported by nRF70 devices. Signed-off-by: Kapil Bhatt <[email protected]> (cherry picked from commit 28b7494)
…RF70 FW file" This reverts commit fe2288d. Signed-off-by: Chaitanya Tata <[email protected]>
…nges Whenever FW blobs are updated manually, we need to tell cmake to auto-build the source files to use the latest firmware without doing a pristine build. This adds a custom target to be run with nRF Wi-Fi driver and updates timestamp of fw_load.c to rebuild whenevr the blob is updated. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit e2e96ac)
… are changes" This reverts commit e2e96ac. This will be properly fixes by adding a target for nRF70.bin and removing INCBIN approach. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit 7f9be54)
…file Instead of relying on INCBIN macros which do not properly add dependencies, e.g., modifying FW file doesn't trigger rebuild. Use the Zephyr cmake tooling to load the FW patch file as a header. This also improves memory report where the patch target is clearly visible instead of a hidden section. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit b40cb4c)
During watchdog (or any) interrupt processing, RPU accesses are being made and they assert the wakeup_now flag this causes RPU recovery to not trigger. New false or true recovery detection algo: Check the time difference b/w last de-assert and assert, and if it exceeds minimum time needed for RPU to enter sleep, then not the timestamp. This timestamp will be used to compare when a watchdog interrupt is received and see if during the last window if host has given a chance for RPU to attempt sleep, if yes, then attempt recovery else ignore watchdog. Also, add a Kconfig for the 10s active time that triggers recovery, this needs to be passed to the FW (once we have enough patch memory). Also, add a Kconfig for the minimum time needed for RPU to attempt sleep in positive case. Also, add a new _ms API for time stamp fetch, this is to avoid precision loss when converting to and from ms to us and also makes code readable by avoiding *1000 and /1000. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit 5ad7339)
In case RPU is stuck and need a recovery, the failures in interface down should be ignored as they are expected and we should proceed with device removal that in turn removes power to the RPU. TODO: This works for single VIF, but needs more thought for multi-VIF. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit 04ddd6d)
Before proceeding with RPU bringup, do a sanity check by reading a known signature to make sure the Host-RPU comms are operational. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit a23184c)
… recovery These are helpful for debugging RPU recovery only. Signed-off-by: Chaitanya Tata <[email protected]> (cherry picked from commit 1e5db78)
…rable Extend the `coap_transmission_parameters` struct with the field `ack_random_percent`. This was the last remaining CoAP transmission parameter that was not configurable at runtime. Signed-off-by: Adrian Friedli <[email protected]> (cherry picked from commit 98289e5)
Before this patch, any unexpected socket error during poll (caused by LTE disconnects for instance) would lead to a infinite loop because the error state was never cleared, handled or even signaled to the user. Signed-off-by: Benjamin Lindqvist <[email protected]> (cherry picked from commit f8a7035)
Protect global list of clients with mutex. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 1ea569d)
…ailed to send When transmission of first request fails, reset the internal request buffer as there is no ongoing CoAP transaction. Application can deal with the failure. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 46b7c84)
…etrying CoAP msg Refactor the CoAP retry handling into the handle_poll() function, so that we only try to send retries if the socket reports POLLOUT. Also move the receiving into same loop, so when poll() reports POLLIN we recv() the message and handle it before proceeding to other sockets. Also fix tests to handle POLLOUT flag and add support for testing multiple clients. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 4c6dd4c)
…ng loop Forward recv() errors to handle_poll(), so there is only one place to handle error codes. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 6481b0e)
… send() failure If send() fails, we have not technically send the CoAP retry yet, so restore the same pending structure, so our timeouts and retry counters stay the same. This will trigger a retry next time the poll() return POLLOUT, so we know that we can send. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 623a1ff)
…stead of flagging It is error prone to flag separate booleans, so try to use reset_internal_request() every time we release the internal request structure. Also refactor the reset_internal_request() so that we reset the timeout value so it does not trigger again. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit a14f083)
Fix handling of received CoAP reset. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 1890dbd)
Add helper API to construct CoAP Reset message. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit e96e95b)
Response tokens are already compared in get_request_with_token(). Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 1dc2487)
When receiving unknown response, respond with CoAP Reset. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 350d20e)
If we receive poll() error during a request, it must be forwarded to application. If instead receive poll() error later, it should not be forwarded as it might be result of application closing the socket. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 9c9dc9f)
In receiving thread, continuing the loops is based on has_ongoing_exchanges() so it does not need atomic coap_client_recv_active variable. When idling, it wakes from semaphore. But there was potential deadlock when coap_client_schedule_poll() would not signal the semaphore, if atomic variable was already showing that it runs. Removing the atomic variable removes this deadlock. Signed-off-by: Seppo Takalo <[email protected]> (cherry picked from commit 1e5a537)
|
I am reopening the PR. Since we have 2.8 release branch separated, this can go to the main without affecting the release (without backporting) |
|
@nrfconnect/ncs-co-build-system @carles I think it is worth fixing now since AFAIK there won't be more upmerges this year |
Why would we not do an upmerge post zephyr 4.0 release? |
Switch to released version with all of the Zephyr build fixes Signed-off-by: Keith Packard <[email protected]> (cherry picked from commit d5b6539) 1.8.8 came just 2 weeks after 1.8.7 but includes several bugfixes, including a fix to a bug that prevented building with gcc9 which is the default in Ubuntu 20.04. https://github.com/picolibc/picolibc/releases/tag/1.8.8 Signed-off-by: Alberto Escolar Piedras <[email protected]>
|
Closing, as this already made it in thru an upmerge |
|
Hi there, I have nothing to do with this project but I keep getting notifications because you keep tagging my GitHub account (@carles). I suspect you are actually trying to tag some other Carles who is a contributor to this project. Please, make sure to tag the right account, thank you :) |
Switch to released version with all of the Zephyr build fixes
(cherry picked from commit d5b6539)
1.8.8 came just 2 weeks after 1.8.7 but includes several bugfixes, including a fix for a bug that prevented building with gcc9 which is the default in Ubuntu 20.04.
https://github.com/picolibc/picolibc/releases/tag/1.8.8
As requested by @PerMac , due to failures seen in a CI job