Sie sind nicht angemeldet.

1

01.06.2008, 10:11

Wie internen Card Reader mounten?

Hi Leute,

ich hab hier ein Notebook (Acer Travelmate 4502 LMi) mit nem eingebauten Multi-Card Reader, den ich gern nutzen würde (wenn Karte rein, automount und erscheinen in nautilus o.ä.). Derzeit hab ich einen Sony MemoryStick Duo mit 64MB zum testen (mit so nem Adapter, damit das Ganze die Größe einer SD-Karte hat.) Hab mir die diversen Threads hier im Forum und im Internet durchgesehen, allerdings beziehen sich die meisten auf das einsetzen der Module, was in meinem Fall (kernel 2.6.22-r9) aber unnötig ist, oder enden schon vorher. Hier erstmal ein paar outputs:

Quellcode

1
2
3
lspci | grep Card

02:06.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller

Quellcode

1
2
3
4
5
cat /usr/src/linux/.config | grep LUN

CONFIG_PREEMPT_VOLUNTARY=y
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
CONFIG_SCSI_MULTI_LUN=y

Quellcode

1
2
3
4
dmesg | tail

tifm0 : demand removing card from socket 0:2
tifm_core: MemoryStick card detected in socket 0:2

Quellcode

1
2
3
4
5
6
7
8
udevmonitor

udevmonitor will print the received events for:
UDEV the event which udev sends out after rule processing
UEVENT the kernel uevent

UDEV  [1212307599.459148] add      /devices/pci0000:00/0000:00:1e.0/0000:02:06.3/tifm_ms0:2 (tifm)
UDEV  [1212307600.887956] remove   /devices/pci0000:00/0000:00:1e.0/0000:02:06.3/tifm_ms0:2 (tifm)

Wenn ich den Stick ein- und ausstecke erhalte ich abwechselnd o.a. Meldungen in dmesg und udevmonitor, mit dem Erkennen siehts also gut aus, nur wie ich den Stick mounten kann (per Hand oder auto) weiß ich nicht, hat jemand Tipps für mich?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tausche« (05.06.2008, 16:25)


2

02.06.2008, 07:09

Wenn ich den Stick ein- und ausstecke erhalte ich abwechselnd o.a. Meldungen
Die Vorgehensweise geht schon in die richtige Richtung denke ich, starte doch mal ein

Quellcode

1
# tail -f /var/log/messages
bevor du den Stick ein u. aus steckst
und poste die Ausgabe hier.

MfG
josef.95

3

02.06.2008, 07:59

Also da erhalte ich das gleiche wie bei dmesg | tail, hätte mich auch gewundert, nach dem dmesg ja auch die /var/log/messages zurückgreift

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
tail -f /var/log/messages

Jun  2 07:30:01 gentooBox cron[13174]: (root) CMD (test -x /usr/sbin/run-crons && /usr/sbin/run-crons )
Jun  2 07:36:03 gentooBox acpid: received event "battery BAT0 00000080 00000001"
Jun  2 07:36:03 gentooBox acpid: notifying client 7072[103:1006]
Jun  2 07:36:03 gentooBox acpid: notifying client 7254[0:0]
Jun  2 07:36:03 gentooBox acpid: executing action "/etc/acpi/default.sh battery BAT0 00000080 00000001"
Jun  2 07:36:03 gentooBox acpid: action exited with status 0
Jun  2 07:36:03 gentooBox acpid: executing action "/etc/acpi/actions/lm_battery.sh battery BAT0 00000080 00000001"
Jun  2 07:36:03 gentooBox logger: ACPI event unhandled: battery BAT0 00000080 00000001
Jun  2 07:36:03 gentooBox acpid: action exited with status 0
Jun  2 07:36:03 gentooBox acpid: completed event "battery BAT0 00000080 00000001"
Jun  2 07:36:41 gentooBox su[13254]: Successful su for root by tausche
Jun  2 07:36:41 gentooBox su[13254]: + pts/0 tausche:root
Jun  2 07:36:41 gentooBox su[13254]: pam_unix(su:session): session opened for user root by tausche(uid=1000)
Jun  2 07:36:59 gentooBox tifm_core: MemoryStick card detected in socket 0:2
Jun  2 07:37:15 gentooBox tifm0 : demand removing card from socket 0:2
Jun  2 07:40:02 gentooBox cron[13267]: (root) CMD (test -x /usr/sbin/run-crons && /usr/sbin/run-crons )
Jun  2 07:40:02 gentooBox cron[13269]: (tausche) CMD (/home/tausche/storage/scripts/wallpaper-change.sh)
Jun  2 07:50:01 gentooBox cron[13308]: (root) CMD (test -x /usr/sbin/run-crons && /usr/sbin/run-crons )


Ich würd die zwei Zeilen ja fett hervorheben, hab aber keine Ahnung wie man das innerhalb vom code-tag macht.

4

02.06.2008, 08:47

Hänge doch bitte mal deine komplette Kernelkonfiguration als Anhang bei.
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

5

02.06.2008, 09:29

bitteschön, hoffe es gibt kein problem mit den zeilenumbrüchen - erstellt mit

Quellcode

1
cat /usr/src/linux/.config > config.txt
»tausche« hat folgende Datei angehängt:
  • config.txt (41,77 kB - 3 mal heruntergeladen - zuletzt: 02.06.2008, 10:07)

6

02.06.2008, 10:25

Eine Möglichkeit wäre mal das ganze tifm, mmc und sd Zeugs als Modul zu bauen und schauen was beim Laden für Ausgaben erstellt werden.
Und ebenso nochmals danach
"udevmonitor --env" und "udevmonitor"

Übrigens, ich seh gerade bei mir ist "udevmonitor" nicht mehr vorhanden.
Weiß wer, wann das entfernt wurde?
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

7

02.06.2008, 11:04

Das mit den Modulen hab ich mir auch schon überlegt, konnte mich aber nicht genau festlegen, was denn jetzt fest drin bleibt und was als modul nachgeladen wird.

Quellcode

1
2
3
gentooBox ~ # equery belongs udevmonitor
[ Searching for file(s) udevmonitor in *... ]
sys-fs/udev-119 (/usr/sbin/udevmonitor -> /sbin/udevadm)

Hier nochmal das jetzige output, alles fix im kernel:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
gentooBox ~ # udevmonitor --env
udevmonitor will print the received events for:
UDEV the event which udev sends out after rule processing
UEVENT the kernel uevent

UDEV  [1212397389.382233] add      /devices/pci0000:00/0000:00:1e.0/0000:02:06.3/tifm_ms0:2 (tifm)
UDEV_LOG=3
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:1e.0/0000:02:06.3/tifm_ms0:2
SUBSYSTEM=tifm
SEQNUM=1866
TIFM_CARD_TYPE=MS
UDEVD_EVENT=1

UDEV  [1212397391.834953] remove   /devices/pci0000:00/0000:00:1e.0/0000:02:06.3/tifm_ms0:2 (tifm)
UDEV_LOG=3
ACTION=remove
DEVPATH=/devices/pci0000:00/0000:00:1e.0/0000:02:06.3/tifm_ms0:2
SUBSYSTEM=tifm
SEQNUM=1867
TIFM_CARD_TYPE=MS
UDEVD_EVENT=1

ich werd das ganze mal modular basteln und poste dann die ergebnisse

8

02.06.2008, 11:12

Du könntest natürlich auch noch folgendes probieren:

Karte raus

Quellcode

1
find /dev -type f > /tmp/vorher

Karte rein

Quellcode

1
find /dev -type f > /tmp/nachher

Quellcode

1
diff -Naur /tmp/vorher /tmp/nachher




Und falls es jemand interessiert, Betreff "udevmonitor" (sys-fs/udev-122)

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
NAME
       udevadm - udev management tool

SYNOPSIS
       udevadm info [options]

       udevadm trigger [options]

       udevadm settle [options]

       udevadm control [options] instruction

       udevadm monitor [options]

       udevadm test [options] devpath

       udevadm version

       udevadm help

DESCRIPTION
       udevadm expects a command and command specific options.
       It controls the runtime behavior of udev, requests kernel events,
       manages the event queue, and provides simple debugging mechanisms.
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

9

02.06.2008, 11:44

also die Ausgabe von diff sollte ja, wenn ich recht verstehe, aufm stdout, der konsole erscheinen.
da tut sich nix, also kein output. die vorher u. nachher files werden zwar schön befüllt aber diff bringt kein output.

Ich dachte eigentlich, wenn der Stick schon von udev erkannt wird wäre nur mehr irgendwie ein /dev zuzuordnen, lieg ich da falsch?

EDIT: hat jetzt tifm_sd, tifm_core und tifm_7xx1 also modul im kernel, neu gebootet, module hatte ich schon in der /etc/modules.autoload.d/kernel-2.6 eingetragen, wurden alle 3 anstandslos geladen, am Bild ändert sich jedoch nix, immer noch dieselben einträge in der messages und selbes output von udevmonitor

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tausche« (02.06.2008, 12:24)


10

02.06.2008, 14:16

Quellcode

1
lspci -nn -vv

würde noch mehr Informationen geben (genaue Vendor und Device ID).
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

11

02.06.2008, 14:20

Ah, danke, guter Tipp, hatte ich nicht drauf gedacht:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
lspci -nn -vv
...
02:06.0 CardBus bridge [0607]: Texas Instruments PCIxx21/x515 Cardbus Controller [104c:8031]
	Subsystem: Acer Incorporated [ALI] Unknown device [1025:0064]
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 64, Cache Line Size: 32 bytes
	Interrupt: pin A routed to IRQ 10
	Region 0: Memory at d0209000 (32-bit, non-prefetchable) [size=4K]
	Bus: primary=02, secondary=03, subordinate=06, sec-latency=176
	Memory window 0: 30000000-33fff000 (prefetchable)
	Memory window 1: 38000000-3bfff000 (prefetchable)
	I/O window 0: 00004000-000040ff
	I/O window 1: 00004400-000044ff
	BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt- PostWrite-
	16-bit legacy interface ports at 0001
...
02:06.3 Mass storage controller [0180]: Texas Instruments PCIxx21 Integrated FlashMedia Controller [104c:8033]
	Subsystem: Acer Incorporated [ALI] Unknown device [1025:0064]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 64 (1750ns min, 1000ns max), Cache Line Size: 32 bytes
	Interrupt: pin A routed to IRQ 10
	Region 0: Memory at d0206000 (32-bit, non-prefetchable) [size=8K]
	Capabilities: [44] Power Management version 2
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME+
	Kernel driver in use: tifm_7xx1
	Kernel modules: tifm_7xx1

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tausche« (02.06.2008, 14:35)


12

02.06.2008, 14:22

Mal mit sdhci probiert?
http://ubuntuforums.org/showpost.php?p=1614392&postcount=1
Finden sich doch eigentlich sehr viele Threads zu diesem Controller.

--edit--

Bzw. davor das mal mit dem setpci probieren.
http://www.linuxquestions.org/questions/…5888/page2.html
Achte aber darauf, dass du das richtige Device bei dir verwendest!
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

13

02.06.2008, 14:38

Hab mir die Threads schon durchgesehen, das sieht mir aber alles so nach Bastellösung aus, und ich war auf der suche nach dem eleganten (gentoo-) way.

Hab auch schon mehrfach gelesen, dass die derzeitigen (!) kernel-module zwar für sd und mmc karten funktionieren, aber nicht für den Memory Stick, den ich hier hab zum testen. Da ich leider keine andere Speicherkarte (außer noch einen Memory Stick ;-) zum Testen hab, könnte natürlich auch das der Grund sein, das eigentlich alles iO läuft, nur die Speicherkarte nicht unterstützt wird.
Gestört hat mich daran immer nur das "derzeit", da bei fast all diesen Posts ältere Kernel-Versionen verwendet wurden.

14

04.06.2008, 19:19

also ich benutz immer ivman und hald zum automounten
wenn du die richtigen kernelmodule hast, sollte es damit ganz einfach gehen
einfach emerge ivman hald und rc-update add ivman default

mfg nowhereman

15

04.06.2008, 21:55

Das hat aber mit seinem Problem wenig zu tun.
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

16

05.06.2008, 16:25

Ich hatte jetzt gerade eine SD-Karte zum Testen hier, reinstecken und schon öffnet sich nautilus mit dem gemounteten verzeichnis -> funktioniert alles prima. Dürfte in dem Fall dann immer noch an der fehlenden Unterstützung für die Sony Memory Sticks liegen.
Ich setz das Thema dann mal auf gelöst, danke an alle

17

05.06.2008, 16:43

Aber unter Windows kann er das?
"Erst nachdem wir alles verloren haben, haben wir die Freiheit, alles zu tun."
"It's only after we've lost everything, that we're free to do anything!"

Jabber: Die ID kann via PN erfragt werden.

18

05.06.2008, 17:45

Ich sags nicht gern...ja, ohne Probleme.

Edit: lt diesem link funktioniert der memory stick ab kernel 2.6.25, werd meinen mal updaten und schaun was passiert...

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tausche« (05.06.2008, 18:00)