ďťż
 
 
   Kernel 2.6.27.5 - brak obsługi kart MMC
 
 

Tematy

 
    
 

 

 

 

Kernel 2.6.27.5 - brak obsługi kart MMC





SobonPiotr - 08-11-2008 16:13
Ostatnio skompilowałem sobie nową wersję Kernela, 2.6.27.5. Samodzielnie kompilowałem go sobie już od dłuższego czasu, odkąd w repozytoriach wprowadzono wersję Xen. Wszystko zaczęło działać naprawdę ładnie, aż do początku listopada, kiedy to postanowiłem zgrać sobie coś nowego na telefon, na kartę MMC, niestety nijak nie dało się tego zamontować.

Pierwsze co sobie pomyślałem, to że pewnie kiedyś "wyciąłem" obsługę kart MMC i stąd te problemy. Skompilowałem więc jeszcze raz, ale niestety z tym samym rezultatem. W końcu "ukradłem" pliki konfiguracyjne z oficjalnej gałęzi i jedyne co zmieniłem to wyłączyłem obsługę Xen. Ku mojemu zdziwieniu dalej było to samo, jak kart MMC nie było w systemie, tak dalej ich nie mam.

System normalnie wykrywa telefon wraz z kartą jaką posiada:
Bus 003 Device 002: ID 0421:0429 Nokia Mobile Phones 6230i MultiMedia Card Polecenie dmesg niestety nie wyświetla tego co bym chciał, nie mogę sprawdzić niczego, prócz tysięcy linijek z błędami (im dłużej podpięte tym więcej tego będzie):
[  837.817052] sd 2:0:0:0: [sda] Sense Key : No Sense [current]
[  837.817062] sd 2:0:0:0: [sda] Add. Sense: No additional sense information
[  837.828054] sd 2:0:0:0: [sda] Sense Key : No Sense [current]
[  837.828064] sd 2:0:0:0: [sda] Add. Sense: No additional sense information
[  837.837058] sd 2:0:0:0: [sda] Sense Key : No Sense [current]
[  837.837068] sd 2:0:0:0: [sda] Add. Sense: No additional sense information Standardowo sprawdziłem jeszcze poleceniem fdisk -l, tutaj niestety wyskoczyło, że karty nie ma w podpiętych dyskach (jedynie dwa dyski, które są podpięte na stałe):
Disk /dev/hda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000b2ded                   

  Device Boot      Start        End      Blocks  Id  System
/dev/hda1  *          1        2611    20971520    7  HPFS/NTFS
/dev/hda2          14084      30401  131074335  83  Linux
/dev/hda3            2612      14083    92148840    5  Extended
/dev/hda5            2612        5875    26218048+  7  HPFS/NTFS
/dev/hda6            5876        9139    26218048+  7  HPFS/NTFS
/dev/hda7            9140      12403    26218048+  7  HPFS/NTFS
/dev/hda8          12404      14083    13494568+  7  HPFS/NTFS

Partition table entries are not in disk order

Disk /dev/hdd: 120.0 GB, 120060444672 bytes
255 heads, 63 sectors/track, 14596 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x1c62b405

  Device Boot      Start        End      Blocks  Id  System
/dev/hdd1              1        1824    14651248+  83  Linux
/dev/hdd2            1825        7903    48829567+  83  Linux
/dev/hdd3            7904      13982    48829567+  83  Linux
/dev/hdd4          13983      14596    4931955    5  Extended
/dev/hdd5          14111      14596    3903795  82  Linux swap / Solaris
/dev/hdd6  *      13983      14109    1020064+  83  Linux

Partition table entries are not in disk order Zazwyczaj jednak montowałem tę kartę (jeśli sama się wcześniej automatycznie nie zamontowała) poprzez komendę mount /dev/sda /home/gdziestam mount /dev/sda /home/gdziestam tym razem to nie pomogło, w ogóle dziwne to jest, gdyż przy sprawdzanie /dev/sda: miszczq@giebe:~$ dir /dev |grep sd Nie zwraca żadnego komunikatu, nie mam żadnego sda w katalogu /dev. W przypadku działającego kernela (tego z włączonym Xen) wszystko jest dobrze.

Ktoś wie o co może chodzić? Przypomnę jeszcze, że .config w nowym jądrze mam taki sam jak w poprzednim, jedyna różnica to Xen.

P.S. Mały dodatek. Możliwe, że MMC i inne karty tego typu zostały skonfigurowane jako moduły i teraz trzeba je jakoś załadować, ja niestety nie wiem jak. Może teraz ktoś będzie w stanie mi pomóc.



Utumno - 09-11-2008 16:39
Wydaje mi sie, ze bawisz sie w kompilacje kernela dlatego, ze nie podoba Ci sie Xen i chcesz go wywalic, prawda? Jesli tak, to w Debianie sa wersje kernela bez Xen:

utumno:/home/leszek# apt-cache search linux-image
linux-image-2.6-486 - Linux 2.6 image on x86
linux-image-2.6-686 - Linux 2.6 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6-686-bigmem - Linux 2.6 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6-amd64 - Linux 2.6 image on AMD64
linux-image-2.6-k7 - Linux 2.6 image on AMD K7 - transition package
linux-image-2.6-openvz-686 - Linux 2.6 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6-vserver-686 - Linux 2.6 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6-vserver-686-bigmem - Linux 2.6 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6-xen-686 - Linux 2.6 image on i686
linux-image-2.6.26-1-486 - Linux 2.6.26 image on x86
linux-image-2.6.26-1-686 - Linux 2.6.26 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6.26-1-686-bigmem - Linux 2.6.26 image on PPro/Celeron/PII/PIII/P4
linux-image-2.6.26-1-amd64 - Linux 2.6.26 image on AMD64
linux-image-2.6.26-1-openvz-686 - Linux 2.6.26 image on PPro/Celeron/PII/PIII/P4, OpenVZ support
linux-image-2.6.26-1-vserver-686 - Linux 2.6.26 image on PPro/Celeron/PII/PIII/P4, Linux-VServer support
linux-image-2.6.26-1-vserver-686-bigmem - Linux 2.6.26 image on PPro/Celeron/PII/PIII/P4, Linux-VServer support
linux-image-2.6.26-1-xen-686 - Linux 2.6.26 image on i686
linux-image-486 - Linux image on x86
linux-image-686 - Linux image on PPro/Celeron/PII/PIII/P4
linux-image-686-bigmem - Linux image on PPro/Celeron/PII/PIII/P4
linux-image-amd64 - Linux image on AMD64
linux-image-k7 - Linux image on AMD K7 - transition package
linux-image-openvz-686 - Linux image on PPro/Celeron/PII/PIII/P4
linux-image-vserver-686 - Linux image on PPro/Celeron/PII/PIII/P4
linux-image-vserver-686-bigmem - Linux image on PPro/Celeron/PII/PIII/P4
linux-image-xen-686 - Linux image on i686 Z powyzszego tylko kernele z 'xen' w nazwie maja Xen, wiekszosc nie ma. Wiec po prostu radzilbym Ci zainstalowac jeden z oficjalnych kerneli Debiana.



SobonPiotr - 09-11-2008 18:57

Wydaje mi sie, ze bawisz sie w kompilacje kernela dlatego, ze nie podoba Ci sie Xen i chcesz go wywalic, prawda? Nie tylko, bawiłem się kompilacją dlatego by poznać Debiana bardziej, wywalić wszystko to co nie jest mi potrzebne (moduły laptopów, irdę i inne). Xen jest jednak podstawową przeszkodą, która mnie do tego zmusiła.

linux-image-2.6.26-1-686-bigmem - Przy nagrywaniu tego, niestety sterowniki karty graficznej nie dawały się nagrać, za każdym razem wyskakiwał komunikat, że kernel jest "xen enabled", więc dupa. Była też długa rozmowa o tym i wyszło na to, ze jednak od teraz Xen będzie włączany zawsze.
Nie wiem czy to się zmieniło, ale póki co staram się rozwiązać problem. :D Z telefonu i kart MMC/SD korzystam naprawdę rzadko, ale jednak lepiej mieć to w głównym systemie niż kombinować. :D



Utumno - 09-11-2008 19:43
Ok. Chociaz w to ze kazdy kernel Debiana ma Xen to szczerze mowiac mocno watpie...

Jestes pewien, ze prawidlowo wkompilowales wszystkie moduly? CONFIG_USB_STORAGE masz? CONFIG_MMC?
Trzeba tez uruchomic czesc subsystemu SCSI. Mnie MMC dziala, config mozesz sobie obejrzec na:
www.koltunski.pl/config-2.6.27.4
Porownujac zwracaj uwage na USB, SCSI i MMC.

Przychodzi mi do glowy jeszcze jeden powod, dla ktorego moze nie dzialac: czytnik kart jest dla komputera widoczny jako urzadzenie SCSI. Jezeli ten czytnik obsluguje wiele kart (MMC, SD, MemoryStick itp.) jednoczesnie, to jest jednym z niewielu urzadzen SCSI prezentujacych wiecej niz 1 interfejs (tzw. LUN). Kernel domyslnie sprawdza tylko pierwszy LUN na SCSI (prawie kazde urzadzenie ma tylko 1 LUN). Wtedy trzeba w configu wlaczyc opcje 'CONFIG_SCSI_MULTI_LUN'.

Nawiasem mowiac, najwygodniejsze polaczenie komputera z telefonem jest przez bluetooth. Ja montuje sobie filesystem telefonu bezposrednio spod gnome-bluez:
aptitude install gnome-bluez i potem smigam Nautilusem bez zadnego wyjmowania MMC...



SobonPiotr - 21-11-2008 12:56
Tak, gdybym w komputerze miał bluetooth to sprawa byłaby prosta, chociaż też pewnie nie za dobra, gdyż bluetooth jest chyba zdecydowanie wolniejszy niż kopiowanie metodą bezpośrednią, ale niestety nie mam, więc to odpada. W dodatku to byłoby tylko obejście problemu, a ja wolałbym problem rozwiązać. :P

Druga sprawa, kartę MMC/SD mam w telefonie, nie muszę nic wyciągać, by ją uruchomić, po prostu podpinam telefon, wciskam jeden przycisk (akceptuj połączenie z kartą pamięci - Nokia) i wszystko działa, ale nie na własnoręcznie skompilowanym kernelu.

Kolejna sprawa, dopiero ostatnio znalazłem czas, by znowu przechodzić przez kompilację i... znou nic, Twoje podpowiedzi nie pomogły. Dalej nie udało mi się tego uruchomić. Nawet z Twoim configiem (zmieniony tylko typ procesora i wyłączona architektura 64 bitowa) nie udaje mi się odpalić kart MMC/SD w telefonie. Przyznam, że jest to dziwne... dziwne bardzo.

Jakieś kolejne pomysły? Moje się pomalutku kończą. :D Co takiego jeszcze może mieć wpływ na odczyt kart? Bo to chyba jednak wina kernela nie jest, skoro bez jakichkolwiek zmian w configu dalej nic nie działa?



lis6502 - 21-11-2008 13:11
Może nie mam laptopa i doświadczenia w tych kwestiach, ale przecież Nokia w trybie UMS działa jak... UMS, czyli każdy pendrive. Do czego Ci obsługa MMC w kernelu? Z tego co mi wiadomo potrzebujesz modułów do obsługi ohci i usb-storage (gdzieś to siedzi w sekcji SCSI konfiguracji kernela). Jak będę miał kroplę czasu to znajdę te opcje w w swoim konfigu.
Tak samo ma się sprawa z czytnikiem, to też w zasadzie pendrive, tyle że z wymmienym nośnikiem. Jeśli się mylę, popraw mnie.



SobonPiotr - 21-11-2008 14:12

Może nie mam laptopa i doświadczenia w tych kwestiach, ale przecież Nokia w trybie UMS działa jak... UMS, czyli każdy pendrive. Do czego Ci obsługa MMC w kernelu? Z tego co mi wiadomo potrzebujesz modułów do obsługi ohci i usb-storage (gdzieś to siedzi w sekcji SCSI konfiguracji kernela). Jak będę miał kroplę czasu to znajdę te opcje w w swoim konfigu.
Tak samo ma się sprawa z czytnikiem, to też w zasadzie pendrive, tyle że z wymmienym nośnikiem. Jeśli się mylę, popraw mnie.
Też tak myślałem, ale widać nie jest tak do końca. Karta z telefonu nie chce się odczytać na własnym kernelu, na oryginalnym wchodzi bez problemów. Pędrak działa poprawnie zarówno na moim jak i na domyślnym. Ale posprawdzam te moduły, może u mnie nie są domyślnie ładowane?



lis6502 - 21-11-2008 16:47
Rzuć okiem.
Module                  Size  Used by
nvidia              7803032  26
ipt_MASQUERADE          7296  1
iptable_nat            9872  1
nf_nat                23192  2 ipt_MASQUERADE,iptable_nat
nf_conntrack_ipv4      19352  3 iptable_nat,nf_nat
nf_conntrack          71440  4 ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv4
ip_tables              21520  1 iptable_nat
x_tables              25224  3 ipt_MASQUERADE,iptable_nat,ip_tables
battery                16904  0
ppdev                  11656  0
lp                    14724  0
powernow_k8            17156  0
cpufreq_userspace      8452  0
cpufreq_powersave      6400  0
cpufreq_conservative    11784  0
cpufreq_ondemand      11792  1
cpufreq_stats          9120  0
freq_table              9344  3 powernow_k8,cpufreq_ondemand,cpufreq_stats
ipv6                  288328  22
fuse                  53184  1
dm_snapshot            19400  0
dm_mirror              20608  0
dm_log                13956  1 dm_mirror
dm_mod                58864  3 dm_snapshot,dm_mirror,dm_log
snd_pcm_oss            41760  0
snd_mixer_oss          18816  1 snd_pcm_oss
it87                  28696  0
hwmon_vid              7296  1 it87
loop                  19468  0
parport_pc            31016  1
parport                41776  3 ppdev,lp,parport_pc
arc4                    6272  2
ecb                    7296  2
crypto_blkcipher      21636  1 ecb
serio_raw              9860  0
pcspkr                  7040  0
psmouse                42268  0
snd_ca0106            37760  1
k8temp                  9216  0
snd_seq_midi          11072  0
snd_seq_midi_event    11904  1 snd_seq_midi
snd_rawmidi            26784  2 snd_ca0106,snd_seq_midi
snd_ac97_codec        115416  1 snd_ca0106
snd_pcm                81800  3 snd_pcm_oss,snd_ca0106,snd_ac97_codec
snd_seq                54304  2 snd_seq_midi,snd_seq_midi_event
snd_timer              25744  2 snd_pcm,snd_seq
snd_seq_device        11668  3 snd_seq_midi,snd_rawmidi,snd_seq
ath5k                  98048  0
snd                    63688  11 snd_pcm_oss,snd_mixer_oss,snd_ca0106,snd_rawmidi,snd_ac97_codec,snd_pcm,snd_seq,snd_timer,snd_seq_device
mac80211              162864  1 ath5k
soundcore              12064  1 snd
ac97_bus                6272  1 snd_ac97_codec
snd_page_alloc        13072  2 snd_ca0106,snd_pcm
cfg80211              30224  2 ath5k,mac80211
i2c_nforce2            10752  0
i2c_core              27936  2 nvidia,i2c_nforce2
button                11680  0
evdev                  14208  3
ext3                  124688  2
jbd                    51240  1 ext3
mbcache                12804  1 ext3
ide_cd_mod            36360  0
cdrom                  37928  1 ide_cd_mod
ide_disk              16512  2
sd_mod                29376  3
ata_generic            10116  0
amd74xx                13448  0 [permanent]
sata_nv                27528  3
libata                165472  2 ata_generic,sata_nv
scsi_mod              160760  2 sd_mod,libata
dock                  14112  1 libata
floppy                61672  0
forcedeth              54032  0
ide_pci_generic        9220  0 [permanent]
ide_core              128284  4 ide_cd_mod,ide_disk,amd74xx,ide_pci_generic
ehci_hcd              36108  0
ohci_hcd              25092  0
thermal                22688  0
processor              42304  2 powernow_k8,thermal
fan                    9352  0
thermal_sys            17728  3 thermal,processor,fan To przed włożeniem pendriva
Module                  Size  Used by
usb_storage            94400  0
nvidia              7803032  26
ipt_MASQUERADE          7296  1
iptable_nat            9872  1
nf_nat                23192  2 ipt_MASQUERADE,iptable_nat
nf_conntrack_ipv4      19352  3 iptable_nat,nf_nat
nf_conntrack          71440  4 ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv4
ip_tables              21520  1 iptable_nat
x_tables              25224  3 ipt_MASQUERADE,iptable_nat,ip_tables
battery                16904  0
ppdev                  11656  0
lp                    14724  0
powernow_k8            17156  0

cpufreq_userspace      8452  0
cpufreq_powersave      6400  0
cpufreq_conservative    11784  0
cpufreq_ondemand      11792  1
cpufreq_stats          9120  0
freq_table              9344  3 powernow_k8,cpufreq_ondemand,cpufreq_stats
ipv6                  288328  22
fuse                  53184  1
dm_snapshot            19400  0
dm_mirror              20608  0
dm_log                13956  1 dm_mirror
dm_mod                58864  3 dm_snapshot,dm_mirror,dm_log
snd_pcm_oss            41760  0
snd_mixer_oss          18816  1 snd_pcm_oss
it87                  28696  0
hwmon_vid              7296  1 it87
loop                  19468  0
parport_pc            31016  1
parport                41776  3 ppdev,lp,parport_pc
arc4                    6272  2
ecb                    7296  2
crypto_blkcipher      21636  1 ecb
serio_raw              9860  0
pcspkr                  7040  0
psmouse                42268  0
snd_ca0106            37760  1
k8temp                  9216  0
snd_seq_midi          11072  0
snd_seq_midi_event    11904  1 snd_seq_midi
snd_rawmidi            26784  2 snd_ca0106,snd_seq_midi
snd_ac97_codec        115416  1 snd_ca0106
snd_pcm                81800  3 snd_pcm_oss,snd_ca0106,snd_ac97_codec
snd_seq                54304  2 snd_seq_midi,snd_seq_midi_event
snd_timer              25744  2 snd_pcm,snd_seq
snd_seq_device        11668  3 snd_seq_midi,snd_rawmidi,snd_seq
ath5k                  98048  0
snd                    63688  11 snd_pcm_oss,snd_mixer_oss,snd_ca0106,snd_rawmidi,snd_ac97_codec,snd_pcm,snd_seq,snd_timer,snd_seq_device
mac80211              162864  1 ath5k
soundcore              12064  1 snd
ac97_bus                6272  1 snd_ac97_codec
snd_page_alloc        13072  2 snd_ca0106,snd_pcm
cfg80211              30224  2 ath5k,mac80211
i2c_nforce2            10752  0
i2c_core              27936  2 nvidia,i2c_nforce2
button                11680  0
evdev                  14208  3
ext3                  124688  2
jbd                    51240  1 ext3
mbcache                12804  1 ext3
ide_cd_mod            36360  0
cdrom                  37928  1 ide_cd_mod
ide_disk              16512  2
sd_mod                29376  3
ata_generic            10116  0
amd74xx                13448  0 [permanent]
sata_nv                27528  3
libata                165472  2 ata_generic,sata_nv
scsi_mod              160760  3 usb_storage,sd_mod,libata
dock                  14112  1 libata
floppy                61672  0
forcedeth              54032  0
ide_pci_generic        9220  0 [permanent]
ide_core              128284  4 ide_cd_mod,ide_disk,amd74xx,ide_pci_generic
ehci_hcd              36108  0
ohci_hcd              25092  0
thermal                22688  0
processor              42304  2 powernow_k8,thermal
fan                    9352  0
thermal_sys            17728  3 thermal,processor,fan Tak wygląda po.

Ew spróbuj odpalić fabryczny kernel, skopiuj .config z niego i na tym konfigu (bez zmian) wybuduj własny.



obuch - 21-11-2008 16:48
Jest to problem z bodajże z każdą wersją kernela > 26.27.x, wyczytałem że jest patch, innym sposobem jest podłączenie karty/pendriva przed uruchomieniem systemu. Niestety totalnie nie pamiętam źródłem informacji.



lis6502 - 21-11-2008 23:06
Co mam dopisać do /etc/apt/sources.list by móc odkopać takie nowoczesne kernele i obalać mity, ewentualnie szukać rozwiązań?



obuch - 22-11-2008 19:01
2.6.28-rc6 - czytnik i pendrive - wsio trybi ;-)



SobonPiotr - 22-11-2008 23:35

Co mam dopisać do /etc/apt/sources.list by móc odkopać takie nowoczesne kernele i obalać mity, ewentualnie szukać rozwiązań? ÂŻeby mieć tak nowoczesne kernele to musisz sam sobie skompilować. Tutaj jest wszystko opisane jak trzeba. http://www.howtoforge.com/kernel_com...on_debian_etch.


2.6.28-rc6 - czytnik i pendrive - wsio trybi Właśnie skompilowałem, ale swój mocno okrojony, jutro sprawdzę co się stanie, jak wezmę ten idealnie działający, bezpośrednio z repozytoriów, moze rzeczywiście to tylko jakiś głupi błąd? :D Mam taką wielką nadzieję. :P

edit:
Jeśli możesz podeślij mi swój plik konfiguracyjny, dla tego kernela, bo w tym też niestety u mnie nie działa, mimo, że mam wszystko żywcem skopiowane z jądra, w którym to działało. Teraz dodatkowo mi nie działają sterowniki nvidii, ale to podejrzewam, jest łatwiejsze do rozwiązania. :P

Muszę sprawdzić gdzieś na liście czy ktoś ten błąd zgłosił, bo mam kilka nowych ciekawostek z tym co zwraca konsola po podpięciu sprzętu (zamieszczę później, bo teraz niestety mam mało czasu) i ewentualnie zgłosić im błąd. No i czekać aż 2.6.28 wejdzie do stabilnej gałęzi.[/quote]



obuch - 24-11-2008 11:22
Przepraszam ale właśnie usunąłem Sida na rzecz zabawy z Solarisem.

U mnie też były drobne problemy z kartą graficzną ale był to zestaw istnie diabelny - ogromna liczba paczek z experimental + testowe jadro.

Jestem prawie pewien, że widziałem właśnie zgłoszony błąd i informacje o patchu.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis