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
update: bump jh71xx-hal
to v0.3.0
#740
base: main
Are you sure you want to change the base?
Conversation
This reverts commit 646abdd. Signed-off-by: rmsyn <rmsynchls@gmail.com>
Signed-off-by: rmsyn <rmsynchls@gmail.com>
Removes unused DDR and PLL initialization code moved into `jh71xx-hal`. Signed-off-by: rmsyn <rmsynchls@gmail.com>
Removes the unused `soc::starfive::jh7110::pac` module. Signed-off-by: rmsyn <rmsynchls@gmail.com>
I can confirm that the loader step may sometimes hang. There is likely an issue with vf2-loader / the xmodem implementation. The UART behaves funky in other ways, on that note. I tried using the same UART init in the main stage that we now have in bt0, but got no more output then. Regarding moving out the DDR init code: |
If you look at the You can also still do everything manually via the re-exported use jh71xx_hal::pac;
// ... do manual PAC stuff So, no, you don't need to "point" at anything. |
Except there is! I did a git-bisect on the recent commits, and wouldn't you know removing the header rework actually allows reliably flashing to the device in UART mode! Seems fairly weird for you to claim that all of the sudden |
Signed-off-by: rmsyn <rmsynchls@gmail.com>
Here is a commit showing doing each part of
This is no different than the Again, if there is still reusable code from JH7110 for JH81xx, great. I also plan on doing a HAL for that once JH81xx hardware and docs are available. If you don't want to have a HAL as a dependency, then please rip out all of my contributions, and this will be my last interaction with you. I submitted this code out of appreciation for the project, and the help it provided in getting bare-metal code running on the VisionFive2. If I'm not wanted here, I have no intentions of out-staying my welcome. |
I would like to understand and dig into this. Here is a repo containing both implementations and comparing their results: Could you please provide an example binary that creates different results?
I experienced that before the rework already many times, which you can also see in the live stream recordings I did last year, archived on https://youtube.com/@cyrevolt The funkiness has been reported by multiple people, which is why e.g. Heinrich Schuchardt worked on his own (forked) tool. |
There are two things that would require more exposure:
That is great! There are parts in SoCs that are reused across vendors. I am hoping that this will cause more flexibility at some point within the Rust ecosystem, so that libraries for peripheral blocks occur which are reexposed from HALs.
I really welcome your contributions. This is not about you or having a HAL or not, really about the specific concerns I am raising here. I'd be happy to have a discussion rather than just tossing things away. You have done great work that I know cost a lot of time and effort. I appreciate that a lot. |
Updates the
jh71xx-hal
dependency tov0.3.0
, and drops the direct dependency onjh71xx-pac
.Removes unused code from the
starfive/visionfive2
mainboard andsoc/starfive/jh7110
modules.Reverts the changes from 646abdd. The changes make the
vf2-loader
step ofmake run
stall forever (until retries are exhausted). Reverting the changes restores expected behavior.If the changes in 646abdd are fixed in another PR, I'll rebase on those changes here.