Re: RME 9632 - Problem half solved

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Fri, 6 Oct 2006 15:53:55 +0200,
Remy Bruno wrote:
> 
> Hello,
> 
> I solved the matrix problem. In fact, it was quite obvious by looking at the
> hdsp driver code. The 9632 card was considered as a 9652 regarding the matrix,
> and so the offsets in the matrix were wrong. See the attached patch. I think
> the "switch()" statement should be replaced by an "if (hdsp->firmware_rev >=
> 0x96)", which would allow the next firmwares of the hdsp9632 to be considered
> as hdsp9632 and not as 9652.

Could you give a proper changelog text and a signed-off-by line to
merge your patch into ALSA tree?

> 
> For the frequency problem, I got an answer from RME which explains that another
> register needs to be set (together with the freq0, 1, 2 bits of the control
> register). This register is the "DDS" register. Here is how it should be
> computed:
> UINT64 CalcDDSValue(UINT64 rate)
> {
>         if (rate >= 112000)
>                 rate /= 4;
>         else if (rate >= 56000)
>                 rate /= 2;
> 
>         return 104857600000000 / rate;
> }
> MemBase[FREQ_REG] = (ULONG)CalcDDSValue(new_rate)
> 
> Any ideas of what the offset of this register is? If not, I will ask him. BTW,
> this register exists only for the 9632 and not for the 9652.

Hm, the numerator is pretty big, it's 0x100000 * 10^7.
A clock with fixed point?

Anyway, remember that you cannot use 64bit division in the linux
kernel code as it is.  You can use a macro div64_32 defined in pcm.h,
though.


Takashi

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux