ports/rp2: Enable PPP for Pico W.#16445
Conversation
|
Code size report: |
|
Update to enable in Looks like there's a significant code size overhead, though! Edit: Looks like I need to limit to ports with LWIP enabled 🤦 Actually or maybe I have an order of operations thing going on in the header. Edit: I think this is the classic disagreement in patterns between:
|
|
Wait a minute, what's the diference between:
and
The latter seems to be set just for |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #16445 +/- ##
=======================================
Coverage 98.51% 98.51%
=======================================
Files 176 176
Lines 22904 22904
=======================================
Hits 22563 22563
Misses 341 341 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
@Gadgetoid this PR looks good now, but you still have it in draft status. Any reason it's in draft? If you move it out of draft and rebase, it should be good to merge. |
|
@Gadgetoid see above. |
PR anxiety! And a dash of completely forgetting I raised this. Rebased and converted. |
| #define MICROPY_VFS_ROM (MICROPY_HW_ROMFS_BYTES > 0) | ||
| #define MICROPY_SSL_MBEDTLS (1) | ||
| #define MICROPY_PY_LWIP_PPP (MICROPY_PY_NETWORK_PPP_LWIP) | ||
| #define MICROPY_PY_LWIP_SOCK_RAW (MICROPY_PY_LWIP) |
There was a problem hiding this comment.
This is no longer needed, see 7c1f1c4
Instead, you want to remove the previous line MICROPY_PY_LWIP_PPP.
| #define MICROPY_PY_TIME_TIME_TIME_NS (1) | ||
| #define MICROPY_PY_TIME_INCLUDEFILE "ports/stm32/modtime.c" | ||
| #define MICROPY_PY_LWIP_PPP (MICROPY_PY_NETWORK_PPP_LWIP) | ||
| #define MICROPY_PY_LWIP_SOCK_RAW (MICROPY_PY_LWIP) |
😄 I think some wires got crossed during the rebase, see comments above. |
|
Okay these commits being conceptually backwards really hurt my brain, I've swapped them and hopefully fixed them too. |
| #ifndef MICROPY_PY_NETWORK_PPP_LWIP | ||
| #define MICROPY_PY_NETWORK_PPP_LWIP (0) | ||
| #endif | ||
| #define MICROPY_PY_NETWORK_PPP_LWIP (1) |
There was a problem hiding this comment.
I'm clearly having a bad day. 🤦
There was a problem hiding this comment.
Right, third time's a charm, the cleanup commit hid that endif removal so I stared at the enable commit for a solid minute scratching my head before the penny dropped.
Sorry. I've been burning the midnight oil trying to land those GC changes, thanks for bearing with me.
There was a problem hiding this comment.
Probably needs to be MICROPY_PY_LWIP instead of 1.
(The GC improvements look really good!)
MICROPY_PY_LWIP_PPP is used in only one place and is generally set to
the value of MICROPY_PY_NETWORK_PPP_LWIP. Remove the former.
extmod/lwip-include/lwipopts_common.h: Replace MICROPY_PY_LWIP_PPP
with MICROPY_PY_NETWORK_PPP_LWIP.
ports/mimxrt/mpconfigport.h: Remove redundant MICROPY_PY_LWIP_PPP.
ports/rp2/mpconfigport.h: Remove redundant MICROPY_PY_LWIP_PPP,
default MICROPY_PY_NETWORK_PPP_LWIP to
MICROPY_PY_LWIP.
ports/stm32/mpconfigport.h: Remove redundant MICROPY_PY_LWIP_PPP.
Signed-off-by: Phil Howard <github@gadgetoid.com>
|
thousand yard stare 😭 edit: Okay I had confused this in my head with enable LWIP PPP for all Pico boards, since we have PPP-based modules that could conceivably run on a Pico, Pico 2 and CYW43 support is tangental to that. As such I changed the mpconfigport.h from a conditional enable to always enable 🤦 Fixed! Of course this built locally for me because I didn't try a non-W build. Th... fo.. fifth time lucky? |
mpconfigport.h: Default MICROPY_PY_NETWORK_PPP_LWIP to 1. Signed-off-by: Phil Howard <github@gadgetoid.com>
Enables
MICROPY_PY_NETWORK_PPP_LWIPfor Pico W so that it can take advantage of PPP-supporting networking modules.This would probably be too onerous for a regular Pico build. Even though it could work, I suspect the networking stack will blow the tight firmware allocation.
Edit: Woof! That's quite a bit more code bloat than I'd expected!