Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[udev] Driver usb-storage en reproductor mp3 (cerrado)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Spanish
View previous topic :: View next topic  
Author Message
vgl
n00b
n00b


Joined: 08 Feb 2004
Posts: 45
Location: Murcia

PostPosted: Sat Nov 06, 2004 1:38 pm    Post subject: [udev] Driver usb-storage en reproductor mp3 (cerrado) Reply with quote

Tengo uno de esos reproductores mp3 usb que usan el driver usb-storage. Uso exclusivamente udev. Cuando lo conecto todo va OK:
Code:

ls -lah /dev/reproductor_mp3
brw-rw----    1 root     root       8,   1 nov  6 13:18 /dev/reproductor_mp3


Lo desconecto y lo vuelvo a conectar:
Code:

ls -lah /dev/reproductor_mp3
crw-rw----    1 root     root      21,   0 nov  6 13:22 /dev/reproductor_mp3


Ohh!! me ha cambiado el dispositivo, ahora es de carácter y no de bloque. Hasta que no reinicio no vuelve a funcionar bien. Es decir, cuando lo conecto dos veces, la primera va bien y la segunda y sucesivas va mal.

Más información:
Code:

cat /etc/udev/rules.d/memorias_usb.rules
SYSFS{product}="MusicDrive  ", NAME="reproductor_mp3"


¿Alguna idea?


Last edited by vgl on Sun Nov 07, 2004 11:19 am; edited 1 time in total
Back to top
View user's profile Send private message
Fran
Guru
Guru


Joined: 29 Feb 2004
Posts: 530
Location: Coruña (Spain)

PostPosted: Sat Nov 06, 2004 3:21 pm    Post subject: Reply with quote

Mmmm... el nombre etc/udev/rules.d/memorias_usb.rules no me parece muy adecuado... usará primero el 50-udev.rules:

Quote:
Files in /etc/udev/rules.d/ are parsed in lexical order. udev will stop processing rules as soon as it finds a matching rule in a file for the new item of hardware that has been detected. It is important that your own rules get processed before the udev defaults, otherwise your own naming schemes will not take effect! I suggest that you keep your own rules in a file at /etc/udev/rules.d/10-local.rules (this doesn't exist by default - create it). As 10 comes before 50, you know that your rules will be looked at first.


Deberías llamarlo 10memorias_usb.rules, o algo así. Es posible que esa sea la causa (que alguna regla del primer fichero se aplique). Aunque no sé por qué puede fallar sólo la 2a vez. Por otro lado, ¿has probado a dejar el nombre del kernel y poner tu nombre como link simbólico? Suele ser más conveniente:

Code:
SYSFS{product}="MusicDrive  ", NAME="%k", SYMLINK="reproductor_mp3"


Prueba ambas cosas, a ver.
Back to top
View user's profile Send private message
celeron2002
n00b
n00b


Joined: 17 Oct 2004
Posts: 49

PostPosted: Sat Nov 06, 2004 4:42 pm    Post subject: Reply with quote

a mi me paso algo similar con una impresora usb, solo funcionaba cuando estaba conectada al iniciar el pc. Lo que hice fue incluir el soporte en el kernel, antes lo tenia como modulo, talvez te pase lo mismo :wink:
Back to top
View user's profile Send private message
vgl
n00b
n00b


Joined: 08 Feb 2004
Posts: 45
Location: Murcia

PostPosted: Sun Nov 07, 2004 11:19 am    Post subject: Reply with quote

Fran wrote:
Mmmm... el nombre etc/udev/rules.d/memorias_usb.rules no me parece muy adecuado... usará primero el 50-udev.rules:

Quote:
Files in /etc/udev/rules.d/ are parsed in lexical order. udev will stop processing rules as soon as it finds a matching rule in a file for the new item of hardware that has been detected. It is important that your own rules get processed before the udev defaults, otherwise your own naming schemes will not take effect! I suggest that you keep your own rules in a file at /etc/udev/rules.d/10-local.rules (this doesn't exist by default - create it). As 10 comes before 50, you know that your rules will be looked at first.


Deberías llamarlo 10memorias_usb.rules, o algo así. Es posible que esa sea la causa (que alguna regla del primer fichero se aplique). Aunque no sé por qué puede fallar sólo la 2a vez. Por otro lado, ¿has probado a dejar el nombre del kernel y poner tu nombre como link simbólico? Suele ser más conveniente:

Code:
SYSFS{product}="MusicDrive  ", NAME="%k", SYMLINK="reproductor_mp3"


Prueba ambas cosas, a ver.


Resultado:
Code:

#ls -lah /dev/reproductor_mp3
lrwxrwxrwx    1 root     root            4 nov  7 11:03 /dev/reproductor_mp3 -> sda1

# mount /dev/reproductor_mp3
# umount /dev/reproductor_mp3

Desconecto y conecto:
Code:

#mount /dev/reproductor_mp3
mount: /dev/reproductor_mp3 no es un dispositivo de bloques

#ls -lah /dev/reproductor_mp3
lrwxrwxrwx    1 root     root            3 nov  7 11:04 /dev/reproductor_mp3 -> sg0

# ls -lah /dev/reproductor_mp3 /dev/sg0
lrwxrwxrwx    1 root     root            3 nov  7 11:04 /dev/reproductor_mp3 -> sg0
crw-rw----    1 root     disk      21,   0 nov  7 11:04 /dev/sg0


Es decir, primero es el dispositivo /dev/sda1 de bloques, y luego es /dev/sg0 de carácteres.

Indagando un poco me he dado cuenta de que cuando lo conecto la segunda vez se crea el enlace a /dev/sg0, pero ¡¡ /dev/sda1 también se crea !! (sin enlace a /dev/reproductor_mp3).

Llegando un poco más lejos.
Code:

rmmod sd_mod


Hace que la próxima vez que lo conecte funcione correcto (como si fuera la primera). A las siguientes carga otra vez sd_mod y falla.

Moraleja: La próxima vez que me compile el kernel (dentro de poco) quitaré el módulo sd_mod.

Más o menos, salvo la incomodidad de quitar el módulo sd_mod esto esta resuelto.

Gracias a Fran y Celeron2002 por sus ideas.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Spanish All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum