-
Notifications
You must be signed in to change notification settings - Fork 5k
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
partially fix aarch64 BE on the zero2w #6295
base: rpi-6.7.y
Are you sure you want to change the base?
Conversation
Why is this something somebody (else) would want to do? It looks like most of these files are unmodified upstream files, so proposals for changes should be sent to the maintainers. |
@pelwell in my case, i need a big-endian build machine, because of some issues with cross-compiling to a different BE arch https://forums.raspberrypi.com/viewtopic.php?t=328078 i can also see it being useful to test existing software, to ensure it handles byte-swaps correctly i had assumed that since all of those files are rpi related, it would be best to target this downstream fork of linux first, and then it gets upstreamed later? |
fkms and bcm2708_fb are irrelevant to upstream, and TBH adding BE support to those feels like unnecessary churn downstream. Using simple_fb should work instead of bcm2708_fb. The firmware looks for display0 as an alias, and /soc/fb being disabled in order to configure simple_fb. A patch should only touch one subsystem, and requires a commit message and Signed-off-by tag. Whilst booting basic BE support may be reasonable, going for full BE support feels unnecessary. |
yep, thats why i'm ignoring things like (f)kms and vchiq
i'll work on splitting this PR up into several commits, and fixing all of the CI complains as well bcm2708_fb throws numerous errors when unpatched, but i dont fully need it either, so i could just toss it in with the same my end goal is to just have a headless BE machine with working network |
the dwc_otg looks like too big of a task for me to fix its using bitfield structs, and the compiler has reversed the fields, rather then the bytes dwc2 on the other hand is using a lot of shifts, so it may work better |
this PR allows booting big-endian linux on a zero2w
what works:
what partially works:
what doesnt work:
untested: