-
Notifications
You must be signed in to change notification settings - Fork 214
Add SAMD51 HAL #31
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
Add SAMD51 HAL #31
Conversation
I'm testing UART now and it doesn't seem to be working. |
Nice! I'm a combination of traveling and sick (great combo over the holidays :-/) so I'm not sure how much focused time I'll have to review this over the next week or so, but I am looking forward to it! |
Ok, take your time. The problem with my UART seems to be in the baud register calculation. My scale factor is ending up as -16220875724 which is not a u64. |
I still think it's kind of weird that each genctrl has is_gclkn() because doesn't gclk.genctrl[n] refer to a specific gclk?
I accidentally overwrote the m0 README with the m4 README at some point in prior commits.
the last commit deleted it instead of putting it back XD
@wez I think this is finally ready. |
Changes related to architecture and requiring nightly
This reverts commit 05ec5cb.
* 568 errors * rebase in wez's pac * clock51.rs mostly? done * fix gpio * almost done? sercoms * everything compiles! (but probably doesn't work yet) * update metro m4 board def * in the middle of fixing the svd and clock stuff * fix the syncbusy pac I still think it's kind of weird that each genctrl has is_gclkn() because doesn't gclk.genctrl[n] refer to a specific gclk? * working clock-based blinky omfg * slight cleanup * put metro m0 README back I accidentally overwrote the m0 README with the m4 README at some point in prior commits. * actually put the m0 readme back for realzies the last commit deleted it instead of putting it back XD * add enums to the samd51 svd * add the rest of the '51 svds * rebase to build on stable and minor fixes * fix sdhc0 hc1r svd * fix the build * new metro m4 examples and a few changes to attempt to fix clocks/sercoms * clocks running at the right speed, sercoms and timers still not initializing properly * feature-gate pin functions i-n * gclk0 runs at 120mhz not 48, fixes delay (still off a bit) * fixup comment * remove line enabling osculp32k no matter what is selected * fix clocks once and for all 🙏 * fix sercoms * enable interrupts for uart rx * clean up some commented out code * correct PCHCTRLm * disable lto to allow for release builds, and fix svd some more * regen pac, clean up warnings * add metro_m4 to build script * kinda hacky fix for build script * add thumbv7em-none-eabi to travis * hf * comment correction * Update README.md Changes related to architecture and requiring nightly * add feature for commonalities of samd51 chips * Update README.md * generate the pac directory if none exists * Revert "generate the pac directory if none exists" This reverts commit 05ec5cb. * fix spi example * update doc comments to refer to samd51 * hal version bump * board version bumps * bump hal dependency for all boards
Huge PR sorry. Some of the api had to change a bit just due to the differences in which peripherals need to be passed in for clock initialization. It's been so long I can't remember everything I changed but I got the blinky working and I'm so happy.
Fixes #38