Find an A80 lichee SDK carrying rogue_km at DDK 1.4 #56
Labels
No labels
blocked-physical
cleanup
hardware
infra
kernel
P1-critical
P2-high
P3-normal
P4-later
reliability
security
upstream
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
tiagoagueda/a80#56
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This is the gate for #55. Everything downstream changes shape depending on the answer,
so it should be settled before any code is written.
A PowerVR stack is three version-locked pieces, and the km/um bridge is checked at runtime.
What we hold:
A80_SDK_20140728_lichee.tar.gz)libpvr_dri_if.soSo the only glibc userspace we have - the one that gives accelerated Debian rather than
Android - is DDK
1.4@3064661, and we have no 1.4 kernel source to pair with it.The task
Find a post-Feb-2015 A80
licheeSDK containingmodules/rogue_kmat DDK 1.4. Ours is July 2014.Places to look: other A80 board vendors (Cubieboard4, Merrii Optimus, CX-A99), Chinese mirrors,
linux-sunxi archives, any
A80_SDK_2015*tarball.Verify a candidate with
grep PVRVERSION_ include/pvrversion.h- it must read1.4.Do not
Pair km 1.3 with um 1.4. The generated bridge ABI differs between DDK minors. Forcing the version
constants is a ~1 hour experiment worth doing once, but plan on it failing.
If this fails
Fallbacks are Android userspace on Debian via libhybris, or simply booting the vendor Android 4.4
(141025) build - which is the DDK 1.3 one, and therefore already a matched pair - when
acceleration is wanted. Neither needs this issue resolved.
Found.
https://github.com/cubieboard/CC-A80-kernel-source, commit6a5adc979f2191be1ddefbf02aea53b12e7942a1,modules/rogue_km.It passes the test this issue specifies, and then some:
Two things make this better than the minimum asked for:
3064661is the exact build of the userspace we already hold. Not merely DDK 1.4 - thesame build number as
libpvr_dri_if.sofrom Ubuntu 150204. There is no "close enough minor"judgement to make.
Rogue_DDK_Linux_XOrg, notAndroid_RSCompute. It is the glibc/X11 variant, which isthe case this issue existed for: accelerated Debian, without libhybris and without booting
the vendor Android 4.4 build.
It also carries what a build actually needs:
services/system/rgx_sunxi/(the sunxi systemlayer) and
build/linux/sunxi_linux/Makefile(a Linux target, not an Android one), on kernel3.4.39 - the same 3.4 family as our vendor tree.
The dead ends, recorded so nobody repeats them
rogue_kmtrees (~/a80/rogue/lichee/...and~/a80/linux-3.4-sunxi/...) are1.3@2966915. The
eurasia_kmtree alongside them issgxddk 1.12- SGX, a different GPUfamily entirely, and not relevant.
SDK3.0_151117,SDK3.0_AP6335_4.4.2_20150914,Remix_150812) contain no lichee, rogue or pvr entries. They are flashable images, notsource SDKs - the "SDK" in the filename is about the release line, not its contents.
A80_SDK_20140728, the July 2014 one we already have. There is no 2015 A80 SDK ondl.linux-sunxi.org.
So the answer was never going to come from an
A80_SDK_2015*tarball. It came from a differentA80 board vendor - which this issue did list as a place to look, and which turned out to be the
one that mattered.
Archived
Because "it is on GitHub" was equally true of the A80
licheesources andandroid.zip, whichare now gone from every mirror. A public URL is a location, not a backup.
~/a80/vendor/CC-A80-kernel-source-6a5adc979f21.tar.zst948ecb2d883fdee5…~/a80/vendor/CC-A80-rogue_km-1.4@3064661.tar.zstbfca816172844…Both tested with
zstd -t, andpvrversion.hre-extracted from the small one to confirm theround trip. Detail in
ARCHIVE.md. It should follow the nine vendor images to the other twolocations.
This unblocks #55. The "if this fails" fallbacks in the original post - libhybris, or booting
Android 4.4 for acceleration - are no longer needed.