-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Tvservice locks up in vc_tv_hdmi_ddc_read on pi3 #585
Comments
I can reproduce this. Let me see what is going on. |
Can you try with this test firmware: |
This seems to fix the problem - ran 10000 calls to tvservice without issue. |
The bug occurs when the EDID is being read through I2C at the same time as another I2C operation occurs. The other I2C operation may be changing the voltage of the SMPS (when enabling/disabling turbo mode), and when reading state from the GPIO expander (e.g. under-voltage and HDMI hotplug). I don't see a reason why The fix will appear in next rpi-update firmware (possibly later tonight). It will come to apt-get firmware later (maybe a months time). |
See: #585 kernel: Enable hid-betopff module (#1396) See: raspberrypi/linux#1396 kernel: bcm2835-sdhost: Firmware manages the clock divisor See: raspberrypi/linux@dff460c kernel: cpufreq: Temporarily ignore io_is_busy=1
See: raspberrypi/firmware#585 kernel: Enable hid-betopff module (#1396) See: raspberrypi/linux#1396 kernel: bcm2835-sdhost: Firmware manages the clock divisor See: raspberrypi/linux@dff460c kernel: cpufreq: Temporarily ignore io_is_busy=1
The fix should now be in rpi-update firmware |
Thanks! |
Is there any chance that we could get a build with this fix based on https://github.com/raspberrypi/firmware/tree/1.20160315? I'm having some problem getting the a32be14... version to work with our OS and we're quite close to releasing so it's a bit awkward. Not sure what the problem here is yet, but it it happens to be easy to do a build of that, it would be a greate help. |
No. Firmware builds come off a single branch. |
We are still seeing problems with this. It doesn't seem to happen on the occasions when it did previously, but we've seen it lock up under ordinary usage on our OS twice, and we've got customer reports which we think can be traced back to it. I replicated it on raspbian again: |
See: raspberrypi#585 kernel: Enable hid-betopff module (raspberrypi#1396) See: raspberrypi/linux#1396 kernel: bcm2835-sdhost: Firmware manages the clock divisor See: raspberrypi/linux@dff460c kernel: cpufreq: Temporarily ignore io_is_busy=1
@Ealdwulf had this issue been resolved? |
@Ealdwulf have you tried the new firmware? How is it? |
Oops, I was missing these messages because they went to another email address. I'll check it out... |
It seems to be working now, thanks! |
Okay, thanks for testing. I'll close now. You can always reopen if the problem reoccurs. |
See: raspberrypi#585 kernel: Enable hid-betopff module (raspberrypi#1396) See: raspberrypi/linux#1396 kernel: bcm2835-sdhost: Firmware manages the clock divisor See: raspberrypi/linux@dff460c kernel: cpufreq: Temporarily ignore io_is_busy=1
tvservice locks up in vc_tv_hdmi_ddc_read (waiting for futex), on raspberry pi 3.
This happens 70% of the time in Kano OS 2.4 (which is using raspbian as a base).
It happens with a rather lower frequency, bit is still reproducable, in vanilla raspbian. I have not yet figured out what causes the variation (it's not config.txt).
To reproduce using 2016-03-18-raspbian-jessie
set
hdmi_force_hotplug=1
in/boot/config.txt
Run tvservice repeatedly, eg
for ((i=0;i<100;i++)) do tvservice -d e ; echo $i ; done
You might need to run it a few times.
Once it has locked up, further tvservice commands don't return, and the pi doesn't want to reboot either.
The text was updated successfully, but these errors were encountered: