Open Source - How to disable the Linux frame buffer if it's causing problems
The Linux framebuffer allows graphics to be displayed on the console without needing to run X-Windows. However, it can also can cause a variety of problems for Sangoma interface cards. Here are some symptoms that it may cause:
Hard underuns (IE. "wctdm24xxp 0000:01:01.0: Host failed to service card interrupt within 128 ms which is a hardunderun.")
IRQ Misses
Pattern loopback errors
D-Channel drops
Unexpected hangups
Poor audio quality
Determine if framebuffer is being used
Run the following command from the shell: ls -l /dev/fb*
If the frame buffer is enabled, the above command will usually return /dev/fbX (X being a number; usually 0). For example: brw-rw---- 1 root disk 8, 0 Jan 12 16:25 /dev/fb0
OR
Run the following command from the shell: grep -i "frame buffer" /var/log/syslog
If the frame buffer is enabled is enabled, it should return something such as:
Console: switching to colour frame buffer device 160x64
fb0: inteldrmfb frame buffer device
How to disable Framebuffer
Modifying the Grub menu:
Open the Grub menu file (IE. /boot/grub/menu.lst) in a text editor.
One of the following options should disable frame buffering:
vga=normal
nofb
nomodeset
video=vesafb:off
i915.modeset=0
You would specify one (or more) of the above on the 'kernel' line of the Grub menu file. You can specify them all instead of trying each individual one.
In modern Debian systems (from Wheezy onward), it's best to modify the "linux_entry" function in /etc/grub.d/10_linux, and add the appropriate parameters to the "linux" line.
Open the /etc/grub.d/10_linux file in a text editor and look for the following line:
linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
Change that line to look like this:
linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} nomodeset
Save the /etc/grub.d/10_linux file and reboot.
Modifying the BIOS:
Go into the systems BIOS to look for the line referring to the frame buffer, and disable it. (Note: The BIOS on some systems does not mention anything about it or provide a way to disable it.)
Disabling the KMS (Kernel Mode Setting):
For Debian Wheezy systems with an AMD/ATI video chipset and driver, you can disable the KMS (Kernel Mode Setting), and thus the frame buffer. First, open the /etc/modprobe.d/radeon-kms.conf file in a text editor.
Add the following line to the file:
options radeon modeset=0
Save the file and exit from the text editor.
Reboot the system for the change to take effect.
(Note: For nVidia based cards, add "nomodeset" to the kernel command line (in /etc/grub.d/10_linux), as the first solution above suggests.)
Return to Documentation Home | Sangoma Support