Having spent many days figuring out (or banging my head) how to get a working kernel built from sources (non Android). I finally managed to get a kernel to boot . It’s no way complete but hey it’s a start, for those interested dmesg output is here. You will see references to chromium OS because it based on that source tree but don’t expect chromium OS to appear soon. My test rootfs was the tizen supplied image in post in another thread.
Hi,I am still waiting for the Firefly guys to finally arrange the shipment of my board but in the meantime i am reading a lot around, so your 3ad is really interesting for me But, maybe because I am on mobile, but I can’t see your dmesg… can you please share eventually a pastebin link?Thanks! !
Updated original post with pastebin link and its?here.?
Some progress to report … screen output to hdmi via the drm driver. Screen shot here. It’s still early days but this is progress in the right direction.
Congratulations for this geat work ~
Any chance the firefly team can request the MALI r5p0 userspace binaries from Rockchip (or whatever they can provide) ? I could then starting looking at GPU support.
A bit more progress .. ethernet working, cpu frequency scaling, serial console login and booting Ubuntu 14.04 (see output) . Next challenge is to see if we can get anywhere with gpu/vpu.
you’re using kernel for chromium os, right? then I think you can try mali blobs for chromium os
Some progress with GPU see here . However lots of things are broken which partly might explain why the performance is low.
Want to see some GPU acceleration? Look … here
If I want to build my own 3.14 kernel for Firefly/RK3288 devices what do I have to change in the Chromium kernel source to make it bootable?
What is the correct kernel source to use.
Also for Mali GPU GLES acceleration, what files do I need to add/change in the Firefly Ubuntu RFS?
Anyone tried to compile ARM Linux Kodi with OpenGL GLES acceleration for improved video playback?
Are most things working, what isn’t working?
Any help would be appreciated.
I would suggest you don’t attempt unless your are experienced at kernel development because:
-
There are differences between the Firefly hardware and the Rockchip Chrome OS devices. Therefore you need to understand these differences and debug the kernel when there are problems.
-
The kernel is not complete there are a number of patches which are still in review.
-
The Mali drivers lacks performance because the binaries is old.
-
The state of the VPU support in kernel is unknown and isn’t documented.
-
There’s no/little documentation for the kernel drivers so you will have dig into the driver code to work out what is going on. You can spend days/weeks on this.
-
You also need to invest some (or considerable) time to understand the Chromium source tree to under what patches are pulled in to build the Chromium rootfs for RK3288 which in it’s itself can be time consuming.
Hi there,
is there a chance to get this working for the regular linaro branch (does sound complicated since i dont understand the chromium-sources..).
Yours,
Jonas
"is there a chance to get this working for the regular linaro branch (does sound complicated since i dont understand the chromium-sources..)."
Little chance of that of happening without porting all the patches across. ‘linux-rockchip’ mainline should hopefully be adding hdmi/vga support so this may help.
I think its going take 1-2 months before you see working Mali drivers for fb/X11 furthermore given these will be the first release of the binaries there may be issues. Its also important to point out that the X11 drivers only accelerate egl/gles content (bettered suited to a full screen application) therefore don’t expect a fully accelerated X11 desktop in the near future. This can have a detrimental impact for example running HTML5 code in a browser may still be software rendered which can hinder your applications performance.
jas-rk,
you may know, Rockchip and Chromium OS project does something for VPU too
Hi Jas,
Since I’m not that much interested in desktop applications this wouldn’t be to hard for me. But since this claims to be a development-board, working drivers should at least be nothing one has to search for…
Yours
Jonas
Hi Jonas,
Unfortunately as of today in my opinion Firefly is a ‘Android’ development board. Like most of the ARM boards Linux software support intends to rely on a community effort which in turn relies on good co-operation from the SOC vendor (especially for CPU/VPU support). Historically the Chinese SOC vendors (AllWinner/Rockchip) haven’t been willing to work closely with the community which has meant that most boards die a slow death.
We should see fb drivers released by ARM by the end of this week (fingers crossed) which should give us some GPU support unfortunately I had to raise the issue with ARM because Rockchip were unwilling to supply them (which isn’t a good sign). From what I understand Rockchip should be releasing there own drivers in the forth coming months but will target the ‘TopMetal’ platform which must be a different h/w design from the current reference designs.
Again, in my opinion the challenges facing the Firefly are:
-
Application developers want an ‘out of box’ experience and not having to endure the arduous task of building kernels, working out how to get GPU/VPU support etc …
-
The market is saturated with ARM boards and the lower end $35 boards have bigger community support plus closer co-operation with the SOC vendor.
-
The development community aren’t willing to embrace the newer generation of boards because of the potential lack of co-operation from the SOC vendor based on historical experience.
-
The board is expensive (including taxes + shipping) and I would argue competes in the x86 space where Linux support is far superior.
Hi Jas,
I think you’re right. Since other promising boards have gone the same way (f.e. the radxa rock). I think this is sad, since the arm-based platforms have, in my eyes, a big potential even for big power-sucking applications. In regard of their low tdp, seemingly good graphics-chips and solid processors. Even though the Firefly is quite expensive: if it works it has a gpu with opencl-support, a noticable amount of memory and four fast-ticking cores of processing power on one 5V2A-powered board. Specifically the last thing is hard to achieve on the available x86 dev. boards.
Yours
Jonas
- jas-rk
Just found this from arm, may be of help for you
-
Like Show 1 Like(1)
-
Re: How can I compile Mali-T764 DRIVERS on Ubuntu Linux 14.04 on RK3288 device ?
Guillaume Tucker Feb 6, 2015 5:01 PM (in response to mac_l1)That’s right, the new Mali-T76x drivers built for GNU/Linux ARMv7 fbdev only (no windowing system at the moment) are now available as well as several other r5p0 drivers on the public download page:
http://malideveloper.arm.com/develop-fo … e-drivers/
In order to use this, you will also need to build the kernel-side driver and replace the kernel in your build. This can be achieved by following the Firefly wiki page I mentioned earlier and starting with this Linux repository (master branch):
T-Firefly / Firefly-RK3288-kernel / Commits — Bitbucket
It has an early r4p1 kernel-side Mali GPU driver, which is not compatible with the new r5p0 user-side driver. So you need to upgrade the kernel-side Mali driver with the source code archive from this page:
http://malideveloper.arm.com/develop-fo … e-drivers/
You’ll need to remove the main drivers files under drivers/gpu/arm/, but not drivers/gpu/arm/midgard/platform/rk which contains the RK3288 platform support files, and replace them with the files from the archive. Some relatively small changes may be needed in the RK3288 platform files to make it work with the new r5p0 driver; sorry we haven’t got a patch for that at the moment.
But the mali.so compiled userspace drivers, where to put them /system/lib?
Do they auto load or need to change something if a new kernel is used.
Do the framebuffer drivers provide any benefit or improvement since they have no X11 support yet.