AGP devices are a super set of PCI. They have PCI
config spaces and
sit on what looks (in some ways) like a PCI bus. However that bus is
physically completely separate from all of your PCI and cardbus buses,
so I don't think it's real likely.
it was just an idea
As I've watched you go through this (rather
painful) debug I must
say
that after everything you've done I also think that it is possibly an
interrupt problem. My thought is that (unfortunately) either the
cardbus controller or the PC chipset itself is somehow missing every
other interrupt coming from the RME cardbus card. In this idea the
first interrupt gets through, the system sends the first block of
data, and then the second interrupt is lost. When the 3rd interrupt
arrives the system thinks it's the second interrupt and send the data.
This sort of misoperation would possibly result in something looking
like the waveforms you recorded. (I think)
i thought about something like this, too
... well the problem is, that
the sound i hear is not related to the the block size ... that's why i
doubt that it's related to the interrupts sent to the hdsp ...
the block size i used when recording the file was the default value
(4096 ???) but the blocks of samples and silence and sound are 32
samples each ...
i suppose an interrupt is sent with every block of data, but the errors
occur more often ...
To delve a bit further into this idea, I think you
should consider
transmitting a known waveform and look carefully at what is actually
transmitted. RME's web site has some sine waves (or used to) that are
meant for purposes like this. If you transmit a known waveform at a
known frequency you should be able to tell if the HDSP is operating at
the right rate (or wrong rate) and what (if anything) is missing.
from samples i
used i can say the hdsp uses the right sample rate, the
blocks that are played are played correctly, playing a soundfile takes
twice as long as it should ... no samples seem to miss ...
well, i'll try to verify it with a sine wave next week...
As you send this data possibly you can collect info
from cat
/proc/interrupts and see how many interrupts are generated. One
problem with Alsa is that you don't know (or I don't know) what its
default settings are for plain Alsa transmissions. I'm finding that
playing alsaplayer for 10 seconds at 44.1K seems to generate about 440
interrupts every 10 seconds. I suppose that means 44 interrupts/second
with a block size of 1K bytes? If you transmit for a known time and
get a different number of interrupts then that's probably important.
i used
aplay to play sound files which has the possibility of changing
the block size, too ...
1K is about the size of 4096 (default block size) times 24bit (size of a
sample) ... so it should be one interrupt per block ...
Beyond that, and I don't think you'll like
this idea, but it would
make a *lot* of sense to install Windows on this laptop as a dual boot
configuration and test that. It is a lot of work, but then you could
tell whether the problem is specifically that the hardware just
doesn't work or whether it's a Linux specific problem. Maybe this is
not even hardware or Alsa, but rather a kernel issue and how it
handles your cardbus chipset? I think the kernel guys, or who ever
works on cardbus, would want info like this.
well, i installed winxp and tried to
get some sounds of the absynth demo
... it works FINE ... both on irq 5 and on irq 11 ... that's one reason
why i doubt that's a hardware problem (i can even use settings of
block sizes of 64 samples!!!)
about the cardbus implementation: i used both the kernel and the
pcmcia_cs cardbus modules both produce absolutely the same behaviour ...
i don't know whats the difference in their approach ... but since both
modules don't work i somehow doubt that it's related to this ...
anyway, i'll tell them about the problem i have ...
thnx...
Tim mailto:TimBlechmann@gmx.de
ICQ: 96771783
--
The only people for me are the mad ones, the ones who are mad to live,
mad to talk, mad to be saved, desirous of everything at the same time,
the ones who never yawn or say a commonplace thing, but burn, burn,
burn, like fabulous yellow roman candles exploding like spiders across
the stars and in the middle you see the blue centerlight pop and
everybody goes "Awww!"
Jack Kerouac