Unable to make Panfrost work on H6


Recommended Posts

31 minutes ago, fsb4000 said:

But I guess  board-h6-orangepi-lite2-fix-missing-all.patch  is needed for something else...


We would need some help with cleaning this up. Upstream is also changing a bit, many fixes were made ad hoc ... which is why things are getting messy. I merged this in.

Link to post
Share on other sites
Donate and support the project!

Panfrost running in OrangePi 3, Focal is nice. I had to use the server image, https://dl.armbian.com/orangepi3/archive/Armbian_20.05.4_Orangepi3_focal_current_5.4.45.img.xz

and run sudo apt-get install ubuntu-desktop.


 

Spoiler

 

armbian@orangepi3:~$ lsb_release -a ; uname -a ; glxinfo -B
Distributor ID:    Ubuntu
Description:    Ubuntu 20.04 LTS
Release:    20.04
Codename:    focal
Linux orangepi3 5.7.8-sunxi64 #trunk.40 SMP Fri Jul 17 19:09:21 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Panfrost (0xffffffff)
    Device: Mali T720 (Panfrost) (0xffffffff)
    Version: 20.0.8
    Accelerated: yes
    Video memory: 1926MB
    Unified memory: yes
    Preferred profile: compat (0x2)
    Max core profile version: 0.0
    Max compat profile version: 2.1
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 2.0
OpenGL vendor string: Panfrost
OpenGL renderer string: Mali T720 (Panfrost)
OpenGL version string: 2.1 Mesa 20.0.8
OpenGL shading language version string: 1.20

OpenGL ES profile version string: OpenGL ES 2.0 Mesa 20.0.8
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16

 

 

Link to post
Share on other sites
2 minutes ago, 062621AM said:

yup. but i am not sure if i need to switch kernel and into nightly build to get Panfrost to work.

There is sound. I don't think Bluetooth is working.

Actually no, you do not have to. Though the performance seems slightly better with kernel >=5.6.x

Link to post
Share on other sites
On 7/19/2020 at 12:30 PM, 062621AM said:

Panfrost running in OrangePi 3, Focal is nice. I had to use the server image, https://dl.armbian.com/orangepi3/archive/Armbian_20.05.4_Orangepi3_focal_current_5.4.45.img.xz

and run sudo apt-get install ubuntu-desktop.

 

This way I have verified that Panfrost Driver is enabled, but when I run glxgear the OS freezes. The kernel remains unchanged OS image What should I check?

Link to post
Share on other sites
1 minute ago, NicoD said:

You could try upgrading your kernel to a later version. With : sudo armbian-config -> system -> other

Won't help it is the cause I was thinking about. Still present in 5.7 which are current and dev on now.

@Clément Peron Did some initial work on the dvfs stuff I think and it will take some more time until it gets upstreamed.

Link to post
Share on other sites
1 minute ago, Werner said:

Won't help it is the cause I was thinking about.

I haven't tried the H6 in a long time, so it was just a guess. If I weren't too busy with the N2+ I'd check it out. I wonder how it performs.
 

Link to post
Share on other sites

One way to verify if it's this NKMP clock issue is to fix the voltage at some relatively high level for all OPPs and just keep chganging the clock. If it still crashes, it's most probably the NKMP clock.

Link to post
Share on other sites
On 8/3/2020 at 5:15 PM, jernej said:

In the past, I tested @Clément Peron's patches on Tanix TX6 which has fixed GPU regulator and it has same problem. I'm pretty sure at this point that it's clock driver issue.

It makes sense for it to be a clock driver issue, setting a fixed frequency for the GPU makes it more stable for me. There are also some weird problems with HDMI when VGA to HDMI adapters are used, I wonder if it's somehow related to this (I doubt it since it would most probably be an HDMI PHY or Display Engine problem).

Link to post
Share on other sites
On 8/2/2020 at 12:52 PM, NicoD said:

I haven't tried the H6 in a long time, so it was just a guess. If I weren't too busy with the N2+ I'd check it out. I wonder how it performs.
 


I use opi3 as my headless work station.  Using emmc for os and ssd on usb 3 for home dir and docker.  It’s fairly spry and very stable.

 

Currently testing unaccelerated desktop with 3gig pine h64b.   Very usable, but Firefox can bog down a bit.   Not as spunk as my opi4 or N2-.   ....but it does see all my monitor 4K resolutions and I can set it to my desired 1440p res through the standard desktop settings tool.

Link to post
Share on other sites
15 hours ago, JORGETECH said:

There are also some weird problems with HDMI when VGA to HDMI adapters are used, I wonder if it's somehow related to this (I doubt it since it would most probably be an HDMI PHY or Display Engine problem).

GPU, Display Engine and HDMI all have different clock sources. It could still be HDMI clock issue, just different...

Link to post
Share on other sites

Thanks to Werner, I have a stable desktop on my Orange Pi 3 running the Armbian_20.05.4_Orangepi3_focal_current_5.4.45_desktop.img.xz (stable release).  MOD can put this elsewhere if it belongs in tutorials and not bugs.

 

Here is how to step through his fix for anyone new to linux (like myself).

1. After flashing and setting root and user, the user will be logged into the graphical Xfce desktop environment (DE) and will freeze soon.

2. On the next reboot you can try to use one of the separate terminals instead of the DE.  This is done by holding CTRL+ALT and selecting F1-F6

3. Quickly log into root account and type the following "sudo systemctl set-default multi-user"  This will disable the DE next time you load.

4. The system may freeze as the DE is being loaded, so its best to reset and log into the bash shell with root again.

5. We have to setup a shell script that runs every boot, as the files that Werner overwrites get replaced every time. We will edit/etc/rc.local

6. Goto "cd /etc/ " and chose your favorite editor.  I used vim, so I type "vim rc.local" to start editing.

7.  Add the lines that Werner posted earlier to the rc.local file 

cd /sys/devices/platform/soc/1800000.gpu/devfreq/1800000.gpu/
echo userspace > governor
echo 756000000 > max_freq
echo 756000000 > min_freq

8. Save and exit to shell.

9. last step is to enable the DE again, type "systemctl set-default graphical"

10.  Reboot and enjoy a stable desktop.

 

It took me about a day to have this working, mainly because of me not understanding the the GPU clock values were getting reset and not knowing unix commands & file structure.  It reminded me as a kid messing with the autoexec.bat on a ms-dos machine.  I am hoping to use an SDR and make this into a HD Radio Decoder (already built the NRSC-5 & GUI) , have it stream to an android head unit in my car & control via VNC.

 

Link to post
Share on other sites
6 hours ago, Charles Thomas Morton said:

Thanks to Werner, I have a stable desktop on my Orange Pi 3 running the Armbian_20.05.4_Orangepi3_focal_current_5.4.45_desktop.img.xz (stable release).  MOD can put this elsewhere if it belongs in tutorials and not bugs.

 

Here is how to step through his fix for anyone new to linux (like myself).

1. After flashing and setting root and user, the user will be logged into the graphical Xfce desktop environment (DE) and will freeze soon.

2. On the next reboot you can try to use one of the separate terminals instead of the DE.  This is done by holding CTRL+ALT and selecting F1-F6

3. Quickly log into root account and type the following "sudo systemctl set-default multi-user"  This will disable the DE next time you load.

4. The system may freeze as the DE is being loaded, so its best to reset and log into the bash shell with root again.

5. We have to setup a shell script that runs every boot, as the files that Werner overwrites get replaced every time. We will edit/etc/rc.local

6. Goto "cd /etc/ " and chose your favorite editor.  I used vim, so I type "vim rc.local" to start editing.

7.  Add the lines that Werner posted earlier to the rc.local file 


cd /sys/devices/platform/soc/1800000.gpu/devfreq/1800000.gpu/
echo userspace > governor
echo 756000000 > max_freq
echo 756000000 > min_freq

8. Save and exit to shell.

9. last step is to enable the DE again, type "systemctl set-default graphical"

10.  Reboot and enjoy a stable desktop.

 

It took me about a day to have this working, mainly because of me not understanding the the GPU clock values were getting reset and not knowing unix commands & file structure.  It reminded me as a kid messing with the autoexec.bat on a ms-dos machine.  I am hoping to use an SDR and make this into a HD Radio Decoder (already built the NRSC-5 & GUI) , have it stream to an android head unit in my car & control via VNC.

 

This is exactly the same fix I applied on my Orange Pi Lite 2 and I've been having an stable desktop, the panfrost driver needs more work though. I recommend adding the Oibaf PPA to the system (in case Ubuntu is being used) to get the latest Mesa version.

Link to post
Share on other sites
On 8/17/2020 at 7:03 AM, Werner said:

 

If I'm reading this correctly the acceleration is only disabled for Ubuntu bionic and focal, so compiling a groovy image (20.10) should enable acceleration? I didn't remember Armbian still had no groovy available.

 

What other values are available besides "none"? Reading the manpage for "modesetting" reveals that setting the "AccelMethod" to "glamor" should enable acceleration.

Link to post
Share on other sites

Hi,

Sorry that being kind of late for this party.

I need to make a Pine H64 ready to X window.

I try to read over this thread carefully, but it's a bit too diversive.

I met very same problem as NicoD in the thread start.

 

Here are few questions. I wish someone who has clearer idea wouldn't mind lending me a hand.

1. Is current 5.6 kernel ready now? Or it take more patches? 

2. Or are there DTS/DTB specially needed not merged required?

3. Which branch of armbian is recommended now? dev or current?

 

Thank you.

Link to post
Share on other sites
3 hours ago, delius said:

I need to make a Pine H64 ready to X window.


Pine H64 is ready for X windows (with disabled Panfrost since its unstable) for several months. Just download desktop image:

https://www.armbian.com/pine-h64-b/

https://www.armbian.com/pine-h64/

 

3 hours ago, delius said:

1. Is current 5.6 kernel ready now? Or it take more patches?


We have kernel 5.7.y which is already bumped to 5.8.y and will be released ASAP, probably this weekend.
 

3 hours ago, delius said:

2. Or are there DTS/DTB specially needed not merged required?


What about there is some ongoing development and features you want are not developed or stabilised - like Panfrost. 

 

3 hours ago, delius said:

3. Which branch of armbian is recommended now? dev or current?


If you are a developer and contributor, checkout development. If you are a maintainer and user, use current.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...