[linux-audio-user] Latency timer issues

Mark Knecht mknecht at controlnet.com
Wed Apr 28 19:20:13 EDT 2004

rix wrote:
> Hi all,
>    I'm trying to reset the latency_timer on my on-board nforce2 sound to 
> 32 instead of 0, but it doesn't seem to work. I issue the command 
> "setpci -v -s 00:06.0 latency_timer=20 as root, but lspci still shows 
> the latency as being 0. Any ideas?

Since your device reports it is a PCI Bus Master is is possible that it 
is wrteable, but not guaranteed so.

The PCI spec does not require the latency timer be a writeable register. 
You may have a device that has a hard coded value.

1) The latency timer register only needs to be writeable if the PCI 
device is a Bus Master and capable of bursting more than two data 
phases.  If the device bursts two or fewer data phases then the 
read-only value must be less than 16. (0 is less than 16 so this fits 
the rule.)

2) If the device is capable of bursting more than two data phases then 
it's reset value should be 0, which you are seeing, and hence your 
command is not correctly writing it. This could be that you ae writing 
to the wrong device or that setpci is doing something wrong. Unlikely, 
but to check this you might try writing a different register like 
possibly Base Address or some other register known to be writable. (If 
you do use Base Address then reboot after testing.

I suspect that #1 is the real cause.


More information about the Linux-audio-user mailing list