[SOLVED] compiling 2.6.32 doesn't detects my sound card or SD memory reader, toshiba laptop
Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
compiling 2.6.32 doesn't detects my sound card or SD memory reader, toshiba laptop
I have Debian 5 with kernel version 2.6.26, but wanted to upgrade to 2.6.32 by compiling the kernel.
I am using a Toshiba Satellite A215 SP4057 laptop with AMD64, ATI radeon graphics X1200, Realtek wireless, and Realtek sound card
The purpose for upgrading was that the 2.6.26 of my distro doesn't recognizes my wifi card (a Realtek RTL8187B), from info at the internet I know 2.6.27 already supports it. The problem I now face is that with my compilation of 2.6.32 it doesn't now recognize my sound card, or my SD memory reader (which, with the 2.6.26 that came with my distro were already detected and working OK).
In fact, when configuring 2.6.32 for compilation, trying to read the .config file from 2.6.26 gives me an error I couldn't read but which makes me think that's the reason why I couldn't get the sound (or the SD memory reader) to be configured in the 2.6.32 compilation... (my wireless is detected as I expected)
So, my question is, what should I manually configure in my 2.6.32 so I can get my sound card detected? also my SD memory reader? If not manual configuration, how can I know what's been broken between configuration of 2.6.26 and 2.6.32 and how can I manage to correctly read 2.6.26 config file in the 2.6.32 configuration, so that I can compile 2.6.32 with every thing needed for the sound and SD memory reader detected.... ? Or any other useful ideas you can give me to solve this problems?
Here it comes, my lspci output with the 2.6.26 kernel:
00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (Internal gfx)
00:04.0 PCI bridge: ATI Technologies Inc Device 7914
00:05.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Port 1)
00:06.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Port 2)
00:12.0 SATA controller: ATI Technologies Inc SB600 Non-Raid-5 SATA
00:13.0 USB Controller: ATI Technologies Inc SB600 USB (OHCI0)
00:13.1 USB Controller: ATI Technologies Inc SB600 USB (OHCI1)
00:13.2 USB Controller: ATI Technologies Inc SB600 USB (OHCI2)
00:13.3 USB Controller: ATI Technologies Inc SB600 USB (OHCI3)
00:13.4 USB Controller: ATI Technologies Inc SB600 USB (OHCI4)
00:13.5 USB Controller: ATI Technologies Inc SB600 USB Controller (EHCI)
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 14)
00:14.1 IDE interface: ATI Technologies Inc SB600 IDE
00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA)
00:14.3 ISA bridge: ATI Technologies Inc SB600 PCI to LPC Bridge
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:05.0 VGA compatible controller: ATI Technologies Inc RS690M [Radeon X1200 Series]
08:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 01)
14:06.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 05)
14:06.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22)
14:06.2 System peripheral: Ricoh Co Ltd R5C843 MMC Host Controller (rev 12)
14:06.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 12)
14:06.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev ff)
and with my compiled 2.6.32 kernel the output is almost the same, the only difference is in the last line:
14:06.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 12)
please note that it reports an ATI tech SBX00 Azalia (Intel HDA) as audio device, although, I think its a Realtek device, since I had before another distro wich also didn't detected my sound card and I used a realtek-linux-audiopack to detect it (a solution, of course, I have already tried here, but it isn't working now), but I may be wrong with this, the lspci is perhaps more trustful...
I don't know if its useful, here it is my lsusb with 2.6.26:
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 004: ID 04f2:b008 Chicony Electronics Co., Ltd
Bus 006 Device 003: ID 0bda:8197 Realtek Semiconductor Corp. RTL8187B Wireless Adapter
Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 062a:0003 Creative Labs
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
and with 2.6.32, apart from the order of almost all entries, the lines which are different:
Bus 003 Device 002: ID 062a:0003 Creative Labs
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 004: ID 04f2:b008 Chicony Electronics Co., Ltd
Bus 002 Device 003: ID 0bda:8197 Realtek Semiconductor Corp. RTL8187B Wireless Adapter
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
anything else you may need to know, just let me know...
Ubuntu is a derived debian distro so often you could use information for Ubuntu useful even for debian with procedere often almost identical.
I'm used kernelcheck on ubuntu, it's very easy.
well, I installed kernelcheck, but didn't have luck running it, it reports me that Kernel.org server couldn't fulfill request or that there are no updates available. Notice I executed kernelcheck in both kernels I have (2.6.26 and 2.6.32)
I located kernelcheck files, but couldn't find anything to manage configuration, just python source code, maybe I should try to debug it or something, but right now my priority is to manage the compilation of my kernel, supporting all my hw devices...
thanks anyway, I'll take another look to kernelcheck later
I've just gone from 184.108.40.206 to 2.6.32 with no problems. So, can you tell me which method you used to compile your new kernel? If you've used the "make-kpkg" method, then I can probably help if you give me the exact commands you used and the exact errors you got.
When I compile a new kernel, I run these steps in this order.
Note 1: those are backquotes (to the left of the "1" key) in the "cp" command, not single quotes.
Note 2: "make oldconfig" asks a lot of questions because there are a lot of new configuration options. You can almost always just take the default on them, but since you have new hardware, look out for it and answer as appropriate for your system.
If you haven't been using this method and want to try it, let me know and I'll post a link to a page with the many pre-req packages for it.
Last edited by Quakeboy02; 12-17-2009 at 11:57 PM.
I've finally found the errors that menuconfig throws when loading the old .config file... here they are:
.config:334:warning: symbol value 'm' invalid for ACPI_DOCK
.config:493:warning: symbol value 'm' invalid for INET_LRO
.config:747:warning: symbol value 'm' invalid for IP_DCCP_CCID3
.config:750:warning: symbol value 'm' invalid for IP_DCCP_TFRC_LIB
.config:1006:warning: symbol value 'm' invalid for RFKILL_INPUT
.config:1756:warning: symbol value 'm' invalid for IWL4965
.config:1934:warning: symbol value 'm' invalid for ISDN
.config:3515:warning: symbol value 'm' invalid for GFS2_FS_LOCKING_DLM
I have never tried oldconfig, I'm kinda new compiling kernels, but I may give it a try... someday hehe... if I can solve the problem with the menuconfig, that would be cool, but if I must learn to use to the oldconfig, then I will...
by now, I have done the following...
I compiled 2.6.27, from 2.6.26 config.
Then 2.6.28, from 2.6.27 config.
and so on...
When I reached 2.6.32 from 2.6.31 config, I noticed I got wiki and also sound , but not yet SD memory reader... That could be enough for me, and may use it for a while, but I will continue with what you suggest...
You mentioned something about a link to a page with the many pre-req packages for the oldconfig?? Can I know about it please? I still have to do what you said: use the oldconfig to repair the config file, so I need some help here. How do I know what to answer to all those questions?
The link wasn't for the oldconfig, it's for the make-kpkg. Since you're already using that, you already have what you need.
I forgot to address this:
I still have to do what you said: use the oldconfig to repair the config file, so I need some help here. How do I know what to answer to all those questions?
What "make oldconfig" does is to compare the .config file with the options available in the new kernel and ask you what you want to do for any new options. Generally it's OK to just press the Enter key and take the default. The default will be in capital letters in the question so that you know what you're going to get by pressing Enter. If your device appears in the questions then you can answer appropriately. If not, then run either "make menuconfig" or "make xconfig", find it, and enable it. I've found that xconfig is helpful in cases where you're having trouble finding your device, as you can just press CTL-"f" and do a search for it.
Last edited by Quakeboy02; 12-19-2009 at 11:02 AM.