Re: [alsa-devel] snd-hda-intel support for SPDIF-in wiht vt1708 card?
![](https://secure.gravatar.com/avatar/1e7f006fd590afc9882bbaadffcc064d.jpg?s=120&d=mm&r=g)
For VIA platforms, to avoid the driver compile error in pci.h, reconfigure your kernel to remove SMP support, and set the architecture type to PC-compatible.
(you already know this, I'm sure): Recompile the kernel (as a paranoid, I always trash /lib/modules/<kernel_version> before making modules_install). Install the kernel, of course, and reconfigure your boot loader and/or initrd and reboot.
There are still several fixes that need to be made to get all of this to compile cleanly, but I haven't got the permanent fixes nailed down yet. I'm almost positive that these are alsa-driver configure errors or omissions. I can't (yet) find a kernel config that will avoid them. The fixes below are harmless, and they will allow you to get the driver compiled.
Add this definition to the top section of acore/memory_wrapper.c after the line that reads #include <linux/version.h>
#define VMALLOC_VMADDR(x) ((unsigned long)(x))
Change these lines (45 and 46 or close to that) of acore/memory_wrapper.c from:
pmd = pmd_offset(pgd, lpage); pte = pte_offset(pmd, lpage);
to
pmd = pmd_offset((pud_t *)pgd, lpage); pte = pte_offset_kernel(pmd, lpage);
The driver will then compile cleanly (at least with no errors or warnings relating to any of these changes)
I will work more as time allows to find or create configure tests to make sure that the correct versions of these functions get included or patched.
![](https://secure.gravatar.com/avatar/5b19e9d0e834ea10ef75803718ad564b.jpg?s=120&d=mm&r=g)
At Thu, 20 Dec 2007 00:37:46 +0000, forumjunk@comcast.net wrote:
For VIA platforms, to avoid the driver compile error in pci.h, reconfigure your kernel to remove SMP support, and set the architecture type to PC-compatible.
(you already know this, I'm sure): Recompile the kernel (as a paranoid, I always trash /lib/modules/<kernel_version> before making modules_install). Install the kernel, of course, and reconfigure your boot loader and/or initrd and reboot.
There are still several fixes that need to be made to get all of this to compile cleanly, but I haven't got the permanent fixes nailed down yet. I'm almost positive that these are alsa-driver configure errors or omissions. I can't (yet) find a kernel config that will avoid them. The fixes below are harmless, and they will allow you to get the driver compiled.
My guess is that the error of configure script is the only point we need to fix.
Add this definition to the top section of acore/memory_wrapper.c after the line that reads #include <linux/version.h>
#define VMALLOC_VMADDR(x) ((unsigned long)(x))
Change these lines (45 and 46 or close to that) of acore/memory_wrapper.c from:
pmd = pmd_offset(pgd, lpage); pte = pte_offset(pmd, lpage);
to
pmd = pmd_offset((pud_t *)pgd, lpage); pte = pte_offset_kernel(pmd, lpage);
The driver will then compile cleanly (at least with no errors or warnings relating to any of these changes)
Don't do this. This part shouldn't be compiled at all for recent kernels. This is, again, the problem of configure script that detected the codes wrongly.
So, could you guys show config.log? Otherwise it's hard to know what's really wrong.
thanks,
Takashi
![](https://secure.gravatar.com/avatar/a9b5133b1643aae2f009b0a1d417bd2a.jpg?s=120&d=mm&r=g)
On Thu, 2007-12-20 at 12:09 +0100, Takashi Iwai wrote:
At Thu, 20 Dec 2007 00:37:46 +0000, forumjunk@comcast.net wrote:
For VIA platforms, to avoid the driver compile error in pci.h, reconfigure your kernel to remove SMP support, and set the architecture type to PC-compatible.
(you already know this, I'm sure): Recompile the kernel (as a paranoid, I always trash /lib/modules/<kernel_version> before making modules_install). Install the kernel, of course, and reconfigure your boot loader and/or initrd and reboot.
There are still several fixes that need to be made to get all of this to compile cleanly, but I haven't got the permanent fixes nailed down yet. I'm almost positive that these are alsa-driver configure errors or omissions. I can't (yet) find a kernel config that will avoid them. The fixes below are harmless, and they will allow you to get the driver compiled.
My guess is that the error of configure script is the only point we need to fix.
Add this definition to the top section of acore/memory_wrapper.c after the line that reads #include <linux/version.h>
#define VMALLOC_VMADDR(x) ((unsigned long)(x))
Change these lines (45 and 46 or close to that) of acore/memory_wrapper.c from:
pmd = pmd_offset(pgd, lpage); pte = pte_offset(pmd, lpage);
to
pmd = pmd_offset((pud_t *)pgd, lpage); pte = pte_offset_kernel(pmd, lpage);
The driver will then compile cleanly (at least with no errors or warnings relating to any of these changes)
Don't do this. This part shouldn't be compiled at all for recent kernels. This is, again, the problem of configure script that detected the codes wrongly.
So, could you guys show config.log? Otherwise it's hard to know what's really wrong.
I recompiled the kernel without SMP support, and as PC-compatible (per forumjunk@comcast.net). In config.log, vmalloc_to_page shows a warning starting at line 540. "function cpuid_count causes a warning: pointer targets in passing argument 4 of 'native_cpuid' differ in signedness". Since config.long is so long... I posted it here: http://pastebin.ca/825772
participants (3)
-
forumjunkļ¼ comcast.net
-
John Stile
-
Takashi Iwai