Updated GPU firmware


309 posts   Page 1 of 13   1, 2, 3, 4, 5 ... 13
by dom » Fri Oct 05, 2012 11:24 pm
Just an announcement that I've moved the GPU firmware to a newer version (LKG56).

There's an update to VCHIQ which communicates between the ARM and GPU, which means start.elf, kernel and /opt/vc/lib should all be updated together.
This will all be done for you using rpi-update (or at a later time, apt-get upgrade).

One significant new feature is the move to vdec3, which should allow a better effort of playing non-compliant video streams. (e.g. h264 with too many reference frames).
VCHIQ has versioning of each service, so it should be clearer if future updates break compatibility.
VCHIQ now supports bulk transmits of kernel allocated buffers, which should fix the oss audio panic.
There are numerous internal bug fixes and improvements.
There is a new hello_pi example, that does video encode (thanks to kulve, who's code this was based on).
loader.bin is no longer required. bootcode.bin can directly launch start.elf.
We're in a better position to add new features (like dynamic memory splits using CMA).

As a lot of code has changed, there could be regressions. Testers are welcome. Please report here anything that used to work, and doesn't now.
If you don't want to risk any breakage, then hold off running rpi-update for a few days.
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by thogue » Fri Oct 05, 2012 11:42 pm
updating now. Thanks for the update. Gonna run some quake3 :)
Posts: 131
Joined: Wed Sep 19, 2012 2:16 am
by benosteen » Sat Oct 06, 2012 12:09 am
VCHIQ now supports bulk transmits of kernel allocated buffers, which should fix the oss audio panic.


Brilliant! I've been waiting for this!
Posts: 28
Joined: Mon Jan 02, 2012 6:10 am
by portets » Sat Oct 06, 2012 1:04 am
thogue wrote:updating now. Thanks for the update. Gonna run some quake3 :)


Is quake3 working for you? Other opengl es things work, but quake3 says it cant't load gl.
Posts: 185
Joined: Sat Oct 29, 2011 6:24 am
by thogue » Sat Oct 06, 2012 1:42 am
no actually, its not, i had an opengl error, but I was suspicious I could of screwed things up cause I also overclocked to turbo and I got some corruption

I am in the process of updating my firmware again, after restoring from a backup image, I just test q3 before the update, so im reapplying the update and im going to try again without doing anything else this time to be sure.

edit: after update q3 GLimp_Init() - could not load OpenGL subsystem
Posts: 131
Joined: Wed Sep 19, 2012 2:16 am
by thogue » Sat Oct 06, 2012 1:58 am
I just locked up twice in a row in pianobar running inside lxterminal (have not changed any audio settings/configuration)

went headless still locked up

I took a picture but the jist :
kernel BUG at drivers/misc/vc04_services/interface/vchiq_arm/vchiq_core.c:3183
internal error: Oops - undefined instruction 0 [#1] PREEMPT
Posts: 131
Joined: Wed Sep 19, 2012 2:16 am
by thogue » Sat Oct 06, 2012 2:15 am
on the command line the behavior is slightly different.

the music stops and pianobar halts, and when you ctrl+c or kill the pid it then crashes the rpi (and produces the message I said above, I just reproduced it again
Posts: 131
Joined: Wed Sep 19, 2012 2:16 am
by Frank B » Sat Oct 06, 2012 8:33 am
Code: Select all
root@raspberrypi:~# uname -v
#238 PREEMPT Fri Oct 5 23:19:10 BST 2012


dmesg-output:
Code: Select all
[  241.106891] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
[  241.106915] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[  241.106932] VCHIQka-0       D c037aa9c     0    27      2 0x00000000
[  241.107008] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
[  241.107056] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)

[  361.106896] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
[  361.106918] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[  361.106936] VCHIQka-0       D c037aa9c     0    27      2 0x00000000
[  361.107014] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
[  361.107061] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)

[  481.106937] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
[  481.106960] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[  481.106978] VCHIQka-0       D c037aa9c     0    27      2 0x00000000
[  481.107055] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
[  481.107102] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)
Posts: 61
Joined: Fri Sep 14, 2012 8:02 pm
Location: Germany
by joan » Sat Oct 06, 2012 9:34 am
I'm getting the same from dmesg
[ 961.180406] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
[ 961.180428] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 961.180445] VCHIQka-0 D c037aa9c 0 27 2 0x00000000
[ 961.180523] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
[ 961.180569] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)
User avatar
Posts: 11269
Joined: Thu Jul 05, 2012 5:09 pm
Location: UK
by dom » Sat Oct 06, 2012 10:31 am
joan wrote:I'm getting the same from dmesg
[ 961.180406] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
[ 961.180428] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 961.180445] VCHIQka-0 D c037aa9c 0 27 2 0x00000000
[ 961.180523] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
[ 961.180569] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)

After doing what?
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by lupine » Sat Oct 06, 2012 10:38 am
Gets this every two minutes:
Code: Select all
Oct  6 11:52:38 raspberrypi kernel: [  241.168968] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
Oct  6 11:52:38 raspberrypi kernel: [  241.168990] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Oct  6 11:52:38 raspberrypi kernel: [  241.169008] VCHIQka-0       D c037aa9c     0    27      2 0x00000000
Oct  6 11:52:38 raspberrypi kernel: [  241.169086] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
Oct  6 11:52:38 raspberrypi kernel: [  241.169133] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)
After just booting - with no extra settings in cmdline.txt
Posts: 8
Joined: Wed Jul 25, 2012 12:46 pm
by dom » Sat Oct 06, 2012 11:29 am
lupine wrote:Gets this every two minutes:
Code: Select all
Oct  6 11:52:38 raspberrypi kernel: [  241.168968] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
Oct  6 11:52:38 raspberrypi kernel: [  241.168990] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Oct  6 11:52:38 raspberrypi kernel: [  241.169008] VCHIQka-0       D c037aa9c     0    27      2 0x00000000
Oct  6 11:52:38 raspberrypi kernel: [  241.169086] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
Oct  6 11:52:38 raspberrypi kernel: [  241.169133] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)
After just booting - with no extra settings in cmdline.txt

What memory split are you using?
Does the 192M split work better?
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by lupine » Sat Oct 06, 2012 11:30 am
dom wrote:
lupine wrote:Gets this every two minutes:
Code: Select all
Oct  6 11:52:38 raspberrypi kernel: [  241.168968] INFO: task VCHIQka-0:27 blocked for more than 120 seconds.
Oct  6 11:52:38 raspberrypi kernel: [  241.168990] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Oct  6 11:52:38 raspberrypi kernel: [  241.169008] VCHIQka-0       D c037aa9c     0    27      2 0x00000000
Oct  6 11:52:38 raspberrypi kernel: [  241.169086] [<c037aa9c>] (__schedule+0x2bc/0x568) from [<c0042e24>] (kthread+0x68/0x8c)
Oct  6 11:52:38 raspberrypi kernel: [  241.169133] [<c0042e24>] (kthread+0x68/0x8c) from [<c000e930>] (kernel_thread_exit+0x0/0x8)
After just booting - with no extra settings in cmdline.txt

What memory split are you using?


Using 240/16
On another note: The error message stopped after 18 mins of uptime. It was repeated 9 times.
Posts: 8
Joined: Wed Jul 25, 2012 12:46 pm
by joan » Sat Oct 06, 2012 11:48 am
dom wrote:...
After doing what?

Switching on and ssh'ing in. No X running.

Seems to have stopped after 22 minutes (last dmesg timed at 1321 seconds).

ps
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 2128 724 ? Ss 09:17 0:01 init [2]
root 2 0.0 0.0 0 0 ? S 09:17 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 09:17 0:00 [ksoftirqd/0]
root 6 0.0 0.0 0 0 ? S< 09:17 0:00 [khelper]
root 7 0.0 0.0 0 0 ? S 09:17 0:00 [kdevtmpfs]
root 8 0.0 0.0 0 0 ? S< 09:17 0:00 [netns]
root 9 0.0 0.0 0 0 ? S 09:17 0:00 [sync_supers]
root 10 0.0 0.0 0 0 ? S 09:17 0:00 [bdi-default]
root 11 0.0 0.0 0 0 ? S< 09:17 0:00 [kblockd]
root 12 0.0 0.0 0 0 ? S 09:17 0:00 [khubd]
root 13 0.0 0.0 0 0 ? S< 09:17 0:00 [rpciod]
root 15 0.0 0.0 0 0 ? S 09:17 0:00 [khungtaskd]
root 16 0.0 0.0 0 0 ? S 09:17 0:00 [kswapd0]
root 17 0.0 0.0 0 0 ? S 09:17 0:00 [fsnotify_mark]
root 18 0.0 0.0 0 0 ? S< 09:17 0:00 [nfsiod]
root 19 0.0 0.0 0 0 ? S< 09:17 0:00 [crypto]
root 26 0.0 0.0 0 0 ? S< 09:17 0:00 [kthrotld]
root 27 0.0 0.0 0 0 ? D 09:17 0:00 [VCHIQka-0]
root 28 0.0 0.0 0 0 ? S< 09:17 0:00 [VCHIQ-0]
root 29 0.0 0.0 0 0 ? S< 09:17 0:00 [VCHIQr-0]
root 30 0.0 0.0 0 0 ? S< 09:17 0:00 [VCHIQs-0]
root 31 0.0 0.0 0 0 ? S< 09:17 0:00 [dwc_otg]
root 32 0.0 0.0 0 0 ? S< 09:17 0:00 [DWC Notificatio]
root 34 0.0 0.0 0 0 ? S 09:17 0:00 [mmcqd/0]
root 35 0.0 0.0 0 0 ? S 09:17 0:00 [jbd2/mmcblk0p2-]
root 36 0.0 0.0 0 0 ? S< 09:17 0:00 [ext4-dio-unwrit]
root 139 0.0 0.6 2880 1264 ? Ss 09:17 0:00 udevd --daemon
root 219 0.0 0.0 0 0 ? S< 09:17 0:00 [bcm2708_spi.0]
root 259 0.0 0.0 0 0 ? S< 09:17 0:00 [cfg80211]
root 263 0.0 0.5 2876 1024 ? S 09:17 0:00 udevd --daemon
root 702 0.0 0.4 2876 940 ? S 09:18 0:00 udevd --daemon
root 1524 0.0 0.2 1720 500 ? S 09:18 0:00 /usr/sbin/ifplugd -i wlan0 -q -f -u0 -d10 -w -I
root 1531 0.0 0.2 1720 488 ? S 09:18 0:04 /usr/sbin/ifplugd -i eth0 -q -f -u0 -d10 -w -I
root 1534 0.0 0.0 0 0 ? S 09:18 0:00 [kworker/0:2]
root 1535 0.0 0.7 5940 1328 ? Ss 09:18 0:00 /sbin/wpa_supplicant -s -B -P /var/run/wpa_supplicant.wlan0.pid -i wlan0 -D nl80211,wext -C /var/run/wpa_supplicant
root 1540 0.0 0.2 1720 500 ? S 09:18 0:00 /usr/sbin/ifplugd -i lo -q -f -u0 -d10 -w -I
root 1586 0.0 0.0 0 0 ? S 09:18 0:05 [kworker/u:3]
root 1587 0.0 1.0 4892 1992 ? Ss 09:18 0:00 dhclient -1 -v -pf /run/dhclient.wlan0.pid -lf /var/lib/dhcp/dhclient.wlan0.leases wlan0
root 1854 0.0 0.8 27980 1532 ? Sl 09:18 0:00 /usr/sbin/rsyslogd -c5
root 1917 0.0 0.4 3780 796 ? Ss 09:18 0:00 /usr/sbin/cron
104 1962 0.0 0.5 3156 1036 ? Ss 09:18 0:00 /usr/bin/dbus-daemon --system
ntp 1998 0.0 0.9 5832 1768 ? Ss 09:18 0:01 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 102:104
root 2021 0.0 0.3 1932 640 ? Ss 09:18 0:00 /usr/sbin/inetd
nobody 2063 0.0 0.3 1992 620 ? Ss 09:18 0:00 /usr/sbin/thd --daemon --triggers /etc/triggerhappy/triggers.d/ --socket /var/run/thd.socket --pidfile /var/run/thd.pid --user nobody /dev/input/event*
root 2069 0.0 0.5 6268 1072 ? Ss 09:18 0:00 /usr/sbin/sshd
root 2072 0.0 0.5 5172 1024 ? S 09:18 0:00 /usr/sbin/vsftpd
root 2098 0.0 0.4 3724 812 tty1 Ss+ 09:18 0:00 /sbin/getty --noclear 38400 tty1
root 2099 0.0 0.4 3724 812 tty2 Ss+ 09:18 0:00 /sbin/getty 38400 tty2
root 2100 0.0 0.4 3724 812 tty3 Ss+ 09:18 0:00 /sbin/getty 38400 tty3
root 2101 0.0 0.4 3724 812 tty4 Ss+ 09:18 0:00 /sbin/getty 38400 tty4
root 2102 0.0 0.4 3724 812 tty5 Ss+ 09:18 0:00 /sbin/getty 38400 tty5
root 2103 0.0 0.4 3724 812 tty6 Ss+ 09:18 0:00 /sbin/getty 38400 tty6
root 2104 0.0 0.3 2044 736 ? Ss+ 09:18 0:00 /sbin/getty -L ttyAMA0 115200 vt100
root 2107 0.0 1.6 10704 3152 ? Ss 09:31 0:00 sshd: joan [priv]
root 2112 0.0 1.9 26560 3708 ? Sl 09:31 0:00 /usr/sbin/console-kit-daemon --no-daemon
root 2179 0.0 1.5 22324 2940 ? Sl 09:31 0:00 /usr/lib/policykit-1/polkitd --no-debug
joan 2185 0.0 0.7 10704 1504 ? S 09:31 0:01 sshd: joan@pts/0
joan 2186 0.0 1.8 6180 3412 pts/0 Ss 09:31 0:01 -bash
root 2290 0.1 0.0 0 0 ? S 10:44 0:04 [kworker/u:0]
root 2296 0.0 0.0 0 0 ? S 11:16 0:00 [kworker/u:2]
root 2304 0.0 0.0 0 0 ? S 11:26 0:00 [kworker/0:1]
root 2306 0.0 0.0 0 0 ? S 11:39 0:00 [flush-179:0]
root 2307 0.0 0.0 0 0 ? S 11:39 0:00 [kworker/0:0]
joan 2310 0.0 0.5 4436 1128 pts/0 R+ 11:40 0:00 ps aux
User avatar
Posts: 11269
Joined: Thu Jul 05, 2012 5:09 pm
Location: UK
by dom » Sat Oct 06, 2012 12:34 pm
thogue wrote:edit: after update q3 GLimp_Init() - could not load OpenGL subsystem

Yes, I see this. I think the problem is quake is usually built against the static opengl library (which gives a couple more fps than the .so version) and it needs rebuilding.
Just trying that now.
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by thogue » Sat Oct 06, 2012 12:48 pm
Would the picture from the pandora crash help at all? It also printed what looks like a trace dump of some kind
Posts: 131
Joined: Wed Sep 19, 2012 2:16 am
by dom » Sat Oct 06, 2012 12:58 pm
thogue wrote:Would the picture from the pandora crash help at all? It also printed what looks like a trace dump of some kind

I think that's okay. I know what's happening with that, but I need the VCHIQ guy to suggest the correct fix. I believe it only occurs when killing an application that is playing audio.
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by gzz » Sat Oct 06, 2012 1:36 pm
Interesting, in a 192 memsplit, omxplayer now only gives a grey screen (with working audio) when playing movies. It worked fine before the gpu update.

128/128 memsplit, omxplayer plays the file fine.

This seems to be only with reasonably high bit 1080p rips, the 720p and SD content play fine on 192.
Posts: 45
Joined: Fri Sep 14, 2012 2:02 pm
Location: Canada
by dom » Sat Oct 06, 2012 1:43 pm
Quake does work after a recompile. E.g.
https://dl.dropbox.com/u/3669512/temp/ioquake3.arm
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by Frank B » Sat Oct 06, 2012 1:59 pm
joan wrote:
joan wrote:
dom wrote:...
After doing what?

Switching on and ssh'ing in. No X running.

Seems to have stopped after 22 minutes (last dmesg timed at 1321 seconds).



Yes,the same here (messages stop after 1321 seconds). Headless, ssh, 240/16.
Frank.
Posts: 61
Joined: Fri Sep 14, 2012 8:02 pm
Location: Germany
by kulve » Sat Oct 06, 2012 2:05 pm
Could there be an official sticky thread in the announcements forum that somebody would use to post about new firmwares/releases? Posts could have only a few words and a pointer to the actual thread about the new release.

The sticky thread would be locked so that there wouldn't be anything else but the announcements. It would make it easy for people to get immediate notification about new releases.
User avatar
Posts: 26
Joined: Mon Sep 24, 2012 7:05 pm
Location: Finland
by dom » Sat Oct 06, 2012 2:18 pm
kulve wrote:Could there be an official sticky thread in the announcements forum that somebody would use to post about new firmwares/releases? Posts could have only a few words and a pointer to the actual thread about the new release.

The sticky thread would be locked so that there wouldn't be anything else but the announcements. It would make it easy for people to get immediate notification about new releases.

https://twitter.com/RPF_Dev_Updates
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 4864
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge
by kulve » Sat Oct 06, 2012 2:21 pm
dom wrote:https://twitter.com/RPF_Dev_Updates


I wonder if that would be good enough reason to start using twitter :)
User avatar
Posts: 26
Joined: Mon Sep 24, 2012 7:05 pm
Location: Finland
by joan » Sat Oct 06, 2012 2:44 pm
kulve wrote:
dom wrote:https://twitter.com/RPF_Dev_Updates


I wonder if that would be good enough reason to start using twitter :)

NO.

@firmware updaters: Why not add a changed file and place it in the boot directory? Even if it's just a tweet.
User avatar
Posts: 11269
Joined: Thu Jul 05, 2012 5:09 pm
Location: UK
by thogue » Sat Oct 06, 2012 2:50 pm
dom wrote:
thogue wrote:Would the picture from the pandora crash help at all? It also printed what looks like a trace dump of some kind

I think that's okay. I know what's happening with that, but I need the VCHIQ guy to suggest the correct fix. I believe it only occurs when killing an application that is playing audio.


Its locking up while playing audio, if im in lxde it hardlocks the machine.

if im on the command line, the application locks 10seconds to 60seconds into audio but as soon as you attempt to interact with the application , including killing the pid from another session, it panics and hardlocks.
Posts: 131
Joined: Wed Sep 19, 2012 2:16 am