-
Notifications
You must be signed in to change notification settings - Fork 3
dboot: MIDR Architecture is [19:16] not [18:15]. #208
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
base: arm64-gate
Are you sure you want to change the base?
Conversation
| b.ne .Lnot_cortex_a5x_0 | ||
| /* examine the architecture, must be 0xf */ | ||
| ubfx x1, x0, #15, #4 | ||
| ubfx x1, x0, #16, #4 |
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.
is this something we could do with constants in cpuid.h, rather than naked values?
Did I get the equivalent macro in cpuid.h wrong? or is that ok?
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.
Yeh good idea, let me take a look. I don't see any similar use in cpuid.
|
Just a note on the HVF issue here, if I run qemu with
Whether we want to try and handle that somehow or just mark it as user error is up for debate, but it's worth pointing out that I can't find any similar code to enable cache coherency for these CPUs on NetBSD or Linux, and I can boot NetBSD fine with the exact same qemu configuration. |
|
I don't know whether we should be skipping this, or conditionalizing it on guest-ness. Another one @r1mikey might have ideas about |
I'm not convinced we need this at all (anymore). Since we've moved to consistently using ATF and U-Boot everywhere this should not be necessary. I'll test and confirm when I get a chance. |
Still need to do testing, but here are my preliminary findings:
I'll spin up some tests on both qemu and rpi4 in the next few days. |
While investigating other HVF issues I noticed that the architecture check does not match the manual and we are checking the wrong bits, presumably getting away with the high bit of PartNum happening to be set.