-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Initial broadcom port for Raspberry Pi #5610
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
This targets the 64-bit CPU Raspberry Pis. The BCM2711 on the Pi 4 and the BCM2837 on the Pi 3 and Zero 2W. There are 64-bit fixes outside of the ports directory for it. There are a couple other cleanups that were incidental: * Use const mcu_pin_obj_t instead of omitting the const. The structs themselves are const because they are in ROM. * Use PTR <-> OBJ conversions in more places. They were found when mp_obj_t was set to an integer type rather than pointer. * Optimize submodule checkout because the Pi submodules are heavy and unnecessary for the vast majority of builds. Fixes micropython#4314
These are temporary USB PIDs under the Raspberry Pi VID. I'm waiting to hear from @ghollingworth about the official values. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing work! Lots of good cleanup removing 32-bit assumptions.
Ok, I've pushed a new version. It includes I2C support too. |
Thanks for the updates, and hurrah for I2C! zero2w port is failing for some compilation reason, but the pi4b is working. |
Looks like a simple fix: I added a |
@tannewt Making a commit from the GitHub web interface seems to have upset the build cloning optimizations you added. (EDIT: MAYBE NOT) From https://github.com/adafruit/circuitpython/runs/4313459204?check_suite_focus=true:
|
@tannewt I pushed an empty commit from your repo, and it didn't fix the problem. Hmm. |
This targets the 64-bit CPU Raspberry Pis. The BCM2711 on the Pi 4
and the BCM2837 on the Pi 3 and Zero 2W. There are 64-bit fixes
outside of the ports directory for it.
There are a couple other cleanups that were incidental:
themselves are const because they are in ROM.
mp_obj_t was set to an integer type rather than pointer.
and unnecessary for the vast majority of builds.
Fixes #4314