Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Howto] SDHCI
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Spanish
View previous topic :: View next topic  
Author Message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Sat Feb 11, 2006 1:01 am    Post subject: [Howto] SDHCI Reply with quote

Hola ,antes de nada agradecer a Pierre Ossman el trabajo realizado , y que tantos agradecemos.


Manual para kernel 2.6.28 a 2.6.24 (testeado y comprobado con el 2.6.28 )
(testeado con portatil Sony-Vaio FZ21E )

Bueno , como comprendereis han cambiado algunas cosas en el kernel , y este driver no ha sido diferente.

Tecleamos como root :

Code:
#lspci


Code:
09:03.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller
09:03.1 FireWire (IEEE 1394): Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller
09:03.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)


Nos aparece la famosa controladora de texas instruments que montan muchos portátiles , lo más importante aqui para identificar el driver es que aparezca PCIxx12 , ya que segun lo que aparezca el proceder es diferente.


Vamos ahora al kernel :

Code:
Device Drivers  --->
    [m] Misc devices  --->
        <m>   TI Flash Media interface support
        <m>     TI Flash Media PCI74xx/PCI76xx host adapter support
    <m> MMC/SD card support  --->
        <m>   TI Flash Media MMC/SD Interface support


Code:
Device Drivers  --->
    <m> MMC/SD card support  --->
        <m>   Secure Digital Host Controller Interface support


Seleccionamos todo como módulos , no compilar directamente en el kernel o no funcionará ,es importante tener esto claro.

Una vez realizado esto no hace falta recompilar el kernel , salvo que aprovechásemos para hacer más cambios y compilásemos algo directamente en el.

Code:
make modules


Code:
make modules_install


Ya tenemos nuestros nuevos módulos listos para cargar.

Ahora necesitamos editar un archivo de configuración para que nos cargue un módulo automaticamente (debería de hacerlo udev por si solo pero en la realidad no es asi )

Code:
echo "mmc_block" >>  /etc/modules.autoload.d/kernel-2.6


Code:
echo "tifm_core" >>  /etc/modules.autoload.d/kernel-2.6


Code:
echo "tifm_7xx1" >>  /etc/modules.autoload.d/kernel-2.6


es importante respetar el orden de carga de los módulos.......


Ahora necesitamos bloquear 1 módulos en el momento del arranque , sino hacemos esto no funcionará :

Code:
echo "blacklist tifm_sd" >>  /etc/modules.d/blacklist


el módulo se cargará cuando insertemos la tarjeta en la ranura ( si se carga en el arranque no detecta la tarjeta aunque lo carguemos el último ), esto no debería de ser asi ,pero en mi caso es el unico modo de que funcione .


Bien , ahora procederemos a reiniciar , y una vez estemos logueados insertamos la tarjeta SD :

Code:
tifm_core: MMC/SD card detected in socket 0:1
[ 2082.205568] mmc0: new SD card at address b368
[ 2082.205766] mmcblk0: mmc0:b368 SDC   121 MiB
[ 2082.205820]  mmcblk0: p1


Como veis en el dmesg funciona perfectamente , en mi caso he configurado mi kde 4 para que me lo monte automaticamente .Si quereis hacerlo de forma manual , teneis que editar el /etc/fstab con nano por ej :

Code:
/dev/mmcblk0p1          /mnt/sd         vfat            noauto,rw,users  0 0


y crear el punto de montaje por ej :

Code:
mkdir /mnt/sd


ya está todo listo , podeis montar vuestras tarjetas SD en vuestro linux.

Si no funciona probad a cambiar :

Code:
setpci -s 09:03.2 4c=0x02
o
Code:
setpci -s 09:03.2 4c=0x22
sino funciona dejad el que venia predeterminado en mi caso

Code:
setpci -s 09:03.2 4c=0x44


esto varia según cada placa , para obtener los datos del comando hacer un
Code:
lspci -xxx
y os saldrá algo como esto :

Code:
09:03.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)
00: 4c 10 3b 80 06 01 10 02 00 00 80 01 10 39 80 00
10: 00 10 10 fc 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 4d 10 05 90
30: 00 00 00 00 44 00 00 00 00 00 00 00 07 03 07 04
40: 00 00 00 00 01 00 02 7e 00 80 00 00 44 00 00 00
50: 4d 10 05 90 05 01 00 00 00 00 00 00 00 00 00 00
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


donde 5 fila 14 columna es el valor que hemod de modificar , en este caso es el número 44 , el otro dato que necesitamos es la cifra que va antes del
Code:
Mass storage controller
lo digo porque muchos haceis copy paste en los howto y hay variables que no son iguales en todos los equipos.


Recordad que en esta versión del driver no debería de hacer falta cambiar registros con setpci , como se muestra en el manual antiguo , cuidado con lo que cambiais ,recordad que los cambios con setpci permancen con los reinicios , si os olvidasteis del valor original apagad y volver a arrancar el PC.Tambien recordad que el cambiar el registro con setpci activa el modo sdhci exclusivamente .






--------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------





Manual para kernel inferiores a 2.6.24


(testeado con portatil toshiba satellite A80)

Una aclaracion este driver funciona con portatiles que monten controladoras texas instruments y ricoh.

A partir del kernel 2.6.17 no es necesareo parchear

Para comenzar nos bajamos los 3 parches de :

http://list.drzeus.cx/pipermail/sdhci-devel/2006-February/000426.html


Lo segundo sera parchear nuestro kernel (para quien no sepa parchear es muy sencillo) ,nos vamos al directorio /usr/src/linux y tecleamos lo siguiente:

Code:
patch -p1 < /ruta/del/parche


y hacemos eso con los parches que nos hemos descargado

luego tenemos que configurar nuestro kernel y habilitar los modulos para poder compilarlos,nos vamos a :

DEVICES DRIVERS buscas MMC/SD CARD SUPPORT ,logicamente debes de habilitar el que necesites ,que se supone que debe de ser SECURE DIGITAL HOST CONTROLLER que es el que hemos añadido con el parche.Los compilamos como modulos y si quieres opcion de debug pues tb.
Una vez efectuado esto guardamos los cambios y compilamos el kernel.
Hacemos un make modules_install ,metemos imagen en /boot (bueno lo de siempre)

Y arrancamos ........ como vereis 2 modulos se cargan ya en el arranque,y si no fuese asi pues los insertamos:

Code:
modprobe mmc_core sdhci mmc_block


este ultimo es importante y no se inserta solo.Si no lo insertamos no tendremos los nodos en /dev ya que Udev no los creara............

una vez realizado comprobamos con un :

Code:
# lsmod
Module                  Size  Used by
mmc_block               6664  0
sdhci                  12800  0
mmc_core               18688  2 mmc_block,sdhci


todo esta OK

Lo siguiente es para los que tenemos Texas Instruments (TI)
ahora hacemos un :
Code:
lspci -xxx


y no saldra algo como esto:

Code:
0000:06:04.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
00: 4c 10 33 80 06 00 10 02 00 00 80 01 08 39 80 00
10: 00 40 00 b4 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 79 11 01 ff
30: 00 00 00 00 44 00 00 00 00 00 00 00 0a 02 07 04
40: 00 00 00 00 01 00 02 7e 00 00 00 00 20<-- 00 00 00
50: 79 11 01 ff 05 01 00 00 00 00 00 00 00 00 00 00
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


bueno pues esto puede variar en cada caso ,antes de nada nosotros necesitamos conocer el valor actual del reg,esta en subfuncion 3 en offset 4C :

Code:

0: 00 00 00 00 01 00 02 7e 00 00 00 00 [b]20[/b] 00 00 00


El bit que queremos cambiar es 2 ,entonces cambiamos lo de arriba por 22 de la siguiente manera :

Code:
setpci -s 06:04.3 4c=0x22


si volvemos a teclear :
Code:
lspci -xxx
nos saldra esto:

Code:
00: 4c 10 33 80 06 00 10 02 00 00 80 01 08 39 80 00
10: 00 40 00 b4 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 79 11 01 ff
30: 00 00 00 00 44 00 00 00 00 00 00 00 0a 02 07 04
40: 00 00 00 00 01 00 02 7e 00 00 00 00 22<-- 00 00 00
50: 79 11 01 ff 05 01 00 00 00 00 00 00 00 00 00 00
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


bien observamos que ha cambiado ;)

ahora insertamos una tarjeta en la unidad y nos fijamos que en /dev tenemos creados los siguientes /dev:

Code:
/dev/mmcblk0 /dev/mmcblk0p1


pues nada montamos la unidad :

Code:
mount /dev/mmcblk0p1 /mnt/flash -t vfat


y ya tendremos nuestro unidad montada y lista para usarse.



Este driver ha sido probado con exito en un toshiba satellite a80,con un kernel 2.6.15-r2.

El driver esta disponible sin necesidad de parchear en los ultimos kernel a partir del 2.6.17 en adelante.

FAQ

Es necesario ejecutar
Code:
setpci -s 06:04.3 4c=0x22
con TI en cada sesion???

Si es necesario ,pero lo podeis meter en
Code:
/etc/conf.d/local.start


No soi capaz de montarlo como usuario

Debes editar tu
Code:
/etc/fstab
y añadir lo siguiente
Code:
/dev/mmcblk0p1          /mnt/sd         vfat            noauto,rw,users  0 0
el punto de montaje es a gusto de cada uno.


Espero haberos ayudado :wink:
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |


Last edited by artic on Mon Jan 19, 2009 2:20 am; edited 12 times in total
Back to top
View user's profile Send private message
zorth
l33t
l33t


Joined: 17 Feb 2004
Posts: 780
Location: Lovin' Gentoo

PostPosted: Sat Feb 11, 2006 5:55 am    Post subject: Reply with quote

hola.

bueno, tan solo comentar, que tras darle soporte al nucleo en las tipicas opciones sobre usb y emulacion scsi, yo tengo montado como /dev/sdX, las 4 ranuras y los tipos de tarjetas soportados sin problema alguno ( SD, MMC, MS, SM, CF ) que son las que tienen mi hardcano13 y como digo, tan solo he de insertar una tarjeta como la mmc de mi nokia, como si pongo el pendrive de 128 mbs, tanto da y hacer un dmesg para ver donde esta asignada... si /dev/sdc, /dev/sdd, /dev/sdb.... el que sea. mount -t vfat /dev/sdX /mnt/sdX y ya esta todo.


Code:


  Vendor: Generic   Model: STORAGE DEVICE    Rev: 9144
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 2:0:0:0: Attached scsi removable disk sdb
sd 2:0:0:0: Attached scsi generic sg1 type 0
  Vendor: Generic   Model: STORAGE DEVICE    Rev: 9144
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 2:0:0:1: Attached scsi removable disk sdc
sd 2:0:0:1: Attached scsi generic sg2 type 0
  Vendor: Generic   Model: STORAGE DEVICE    Rev: 9144
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 2:0:0:2: Attached scsi removable disk sdd
sd 2:0:0:2: Attached scsi generic sg3 type 0
  Vendor: Generic   Model: STORAGE DEVICE    Rev: 9144
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 2:0:0:3: Attached scsi removable disk sde
sd 2:0:0:3: Attached scsi generic sg4 type 0
usb-storage: device scan complete



no se si sera lo mismo al howto.... pero bueno :)

saludos.
_________________
Geŋtoo Worłd Rułe§
Back to top
View user's profile Send private message
Tambor
n00b
n00b


Joined: 07 Apr 2005
Posts: 53
Location: Girona (CAT)

PostPosted: Sat Feb 11, 2006 9:57 am    Post subject: Reply with quote

Buenas prove lo que decias pero no me ha funcionado, te pongo un poco de informacion:

parchee el kernel como dijiste, hasta aquí ningún problema, luego con

Code:

lspci -xxx

02:0d.0 System peripheral: Toshiba America Info Systems SD TypA Controller (rev 03)
00: 79 11 05 08 02 00 10 02 03 00 80 08 00 00 00 00
10: 00 7c ef fc 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 79 11 01 00
30: 00 00 00 00 80 00 00 00 00 00 00 00 0b 01 00 00
40: 00 00 00 00 37 5f 00 00 00 00 00 00 02 00 00 00
50: 01 00 00 00 00 00 00 00 02 01 00 00 00 00 00 00
60: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 01 00 02 fe 00 80 00 00 02 02 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 ff 00 00 00 01 00 00 00 00 00 00



Por lo qual vi que no tengo una controladora TI sino que la controladora es de toshiba, pero vi en el help del parche del kernel, que se supone que la controladora de toshiba esta suportada.

La cosa esta que como es normal no puedo modificar el valor del registro asi como asi sin saber que toco, admas los valores no coinciden con los de la TI. I si miro si se han creado los /dev veo que no ha passado, al igual como al hacer dmesg no me da ninguna informacion de que entre ninguna tarjeta SD.

Alguien sabe de algo relacionado?
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Sat Feb 11, 2006 10:46 am    Post subject: Reply with quote

Hola, este driver es para lectoras de portatiles integradas para controladoras texas y ricoh,que utilizan interface sdhci.Las usb no tienen nada que ver,se configuran de manera distinta y se montan como dispositivos scsi.Las Usb hace años que estan soportadas,y ya hay howto al respecto .

salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |


Last edited by artic on Sat Feb 11, 2006 11:09 am; edited 2 times in total
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Sat Feb 11, 2006 11:01 am    Post subject: Reply with quote

Hola tambor ,tu controladora no es de Texas instruments ,como la de mi toshiba .Que portatil tienes???? que tipo de bios tiene pheonix?????Que kernel usas???
Hecha un vistazo aqui :
http://mmc.drzeus.cx/wiki/Controllers/SDHCI aunque creo que va ser que no

Este driver soporta ricoh y texas instruments ,y fuera de ahi nada mas que yo sepa.Estas controladoras estan presentes en portatiles toshiba,dell,etc.....
Creo haber leido que para las controladoras toshiba no hay proyecto,ya que toshiba se niega a dar especificaciones de su hardware.
salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |
Back to top
View user's profile Send private message
Tambor
n00b
n00b


Joined: 07 Apr 2005
Posts: 53
Location: Girona (CAT)

PostPosted: Sat Feb 11, 2006 2:17 pm    Post subject: Reply with quote

Haver,

ordenador: Toshiba Satellite 2450-s203
bios: ACPI BIOS version 1.30
kernel: linux-2.6.15-gentoo-r1 de gentoo-sources

Por lo que veo en la pàgina no se comenta nada de Toshiba

en la informacion de Secure Digital Host Controller Interface support (EXPERIMENTAL) sale:

Code:

CONFIG_MMC_SDHCI:

  x This select the generic Secure Digital Host Controller Interface.
  x It is used by manufacturers such as Texas Instruments(R), Ricoh(R) 
  x and Toshiba(R). Most controllers found in laptops are of this type.
  x If you have a controller with this interface, say Y or M here.   


Por lo que si habla de toshiba, pero no se especifica que controladoras.

No se si alguien sabe algo más que informe.
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Sat Feb 11, 2006 2:34 pm    Post subject: Reply with quote

Hola ,has probado a saltarte ese paso ya que al no tener una TI no es necesareo .Los dev se crean al meter la tarjeta,pero si el dmesg no es cupe nada mal asunto.
Mi dmesg suelta esto:

Code:
sdhci: Secure Digital Host Controller Interface driver, 0.10
sdhci: Copyright(c) Pierre Ossman
sdhci [sdhci_probe()]: found at 0000:06:04.4
sdhci [sdhci_probe()]: found 3 slot(s)
ACPI: PCI Interrupt 0000:06:04.4[D] -> GSI 19 (level, low) -> IRQ 19
sdhci [sdhci_probe_slot()]: slot 0 at 0xb4009000, irq 19
sdhci: ============== REGISTER DUMP ==============
sdhci: Sys addr: 0x00000000 | Version:  0x00008400
sdhci: Blk size: 0x00000000 | Blk cnt:  0x00000000
sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
sdhci: Present:  0x00020000 | Host ctl: 0x00000000
sdhci: Power:    0x00000000 | Blk gap:  0x00000000
sdhci: Walk up:  0x00000000 | Clock:    0x00000002
sdhci: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci: Int enab: 0x11ff00cf | Sig enab: 0x11ff00cf
sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci: Caps:     0x01821090 | Max curr: 0x00000000
sdhci: ===========================================
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 1 cs 0 Vdd 21 width 0
mmc0: SDHCI at 0xb4009000 irq 19 PIO
sdhci [sdhci_probe_slot()]: slot 1 at 0xb4008c00, irq 19
sdhci [sdhci_set_ios()]: clock 62500Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0
sdhci: ============== REGISTER DUMP ==============
sdhci: Sys addr: 0x00000000 | Version:  0x00008400
sdhci: Blk size: 0x00000000 | Blk cnt:  0x00000000
sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
sdhci: Present:  0x00020000 | Host ctl: 0x00000000
sdhci: Power:    0x00000000 | Blk gap:  0x00000000
sdhci: Walk up:  0x00000000 | Clock:    0x00000002
sdhci: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci: Int enab: 0x11ff00cf | Sig enab: 0x11ff00cf
sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci: Caps:     0x01821090 | Max curr: 0x00000000
sdhci: ===========================================
sdhci [sdhci_set_ios()]: clock 62500Hz busmode 1 powermode 2 cs 1 Vdd 21 width 0
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0
MMC: starting cmd 00 arg 00000000 flags 00000000
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (0)
MMC: req done (00): 1: 00000000 00000000 00000000 00000000
sdhci [sdhci_set_ios()]: clock 62500Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 01 arg 00000000 flags 00000001
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (1)
MMC: req done (01): 1: 00000000 00000000 00000000 00000000
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 1 cs 0 Vdd 21 width 0
mmc1: SDHCI at 0xb4008c00 irq 19 PIO
sdhci [sdhci_probe_slot()]: slot 2 at 0xb4008800, irq 19
sdhci: ============== REGISTER DUMP ==============
sdhci: Sys addr: 0x00000000 | Version:  0x00008400
sdhci: Blk size: 0x00000000 | Blk cnt:  0x00000000
sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
sdhci: Present:  0x000a0000 | Host ctl: 0x00000000
sdhci: Power:    0x00000000 | Blk gap:  0x00000000
sdhci: Walk up:  0x00000000 | Clock:    0x00000002
sdhci: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci: Int enab: 0x11ff00cf | Sig enab: 0x11ff00cf
sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci: Caps:     0x01821898 | Max curr: 0x00000000
sdhci: ===========================================
sdhci [sdhci_set_ios()]: clock 62500Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0
sdhci [sdhci_set_ios()]: clock 62500Hz busmode 1 powermode 2 cs 1 Vdd 21 width 0
mmc2: SDHCI at 0xb4008800 irq 19 PIO
MMC: starting cmd 00 arg 00000000 flags 00000000
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (0)
MMC: req done (00): 1: 00000000 00000000 00000000 00000000
sdhci [sdhci_set_ios()]: clock 62500Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 01 arg 00000000 flags 00000001
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (1)
MMC: req done (01): 1: 00000000 00000000 00000000 00000000
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 1 cs 0 Vdd 21 width 0
sdhci [sdhci_set_ios()]: clock 93750Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0
sdhci [sdhci_set_ios()]: clock 93750Hz busmode 1 powermode 2 cs 1 Vdd 21 width 0
MMC: starting cmd 00 arg 00000000 flags 00000000
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (0)
MMC: req done (00): 1: 00000000 00000000 00000000 00000000
sdhci [sdhci_set_ios()]: clock 93750Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 37 arg 00000000 flags 00000029
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (37)
MMC: req done (37): 1: 00000000 00000000 00000000 00000000
MMC: starting cmd 01 arg 00000000 flags 00000001
sdhci [sdhci_tasklet_finish()]: Ending request, cmd (1)
MMC: req done (01): 1: 00000000 00000000 00000000 00000000
sdhci [sdhci_set_ios()]: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0


lo de la ayuda del kernel estoi de acuerdo contigo,ya que aunque mi portatil sea toshiba lleva controladora texas y no toshiba como el tuyo.Creo que dentro de toshiba se montan diferentes tipos de controladoras,si mal no he leido unas utilizan el bus pcmcia y otras no.De ahi que no todas esten soportadas.

salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |
Back to top
View user's profile Send private message
Tambor
n00b
n00b


Joined: 07 Apr 2005
Posts: 53
Location: Girona (CAT)

PostPosted: Sat Feb 11, 2006 8:06 pm    Post subject: Reply with quote

Pues no el dmesg lamentablemente no escupe nada, o sea que mal lo veo. I por lo que a /dev creados pues tampoco como es normal, sino ya me informaria de ello.
Bueno veo que tocara esperar, o desear que toshiba sea más generosa.
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Sun Feb 12, 2006 11:30 am    Post subject: Reply with quote

Bueno creo haber leido por aquella pagina que hay mas gente desarrollando drivers.Estoi un poco cansado de que cuando vas a las paginas de los fabricantes de portatiles te recomienden o diseñen los equipos para el XP.Ademas de que imagino que la licencia que va pegada debajo del portatil nos la cobran en el precio.Deberian dar la posibilidad de elegir.Otras marcas minoritarias si lo hacen ,pero sus equipos fallan mas que escopetas de feria.
salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Thu Feb 16, 2006 5:52 pm    Post subject: Reply with quote

Actualizado a version 0.11
;)

El driver esta ya en las mm-sources a partir de la 2.6.16-rc6-mm2 en adelante.......... es interesante ya que han añadido un driver para escribir el doble de rapido.

Salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Sun Jun 25, 2006 12:18 am    Post subject: Reply with quote

A partir de la version 2.6.17 no hace falta parchear el kernel .

Salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |
Back to top
View user's profile Send private message
dmery
Apprentice
Apprentice


Joined: 15 Sep 2004
Posts: 225
Location: Coral Gables, Florida, USA

PostPosted: Wed Jul 26, 2006 5:58 pm    Post subject: Sigo teniendo problemas Reply with quote

Artic,

Tengo el kernel 2.6.17-gentoo-r4, en el cual habilite (*) los siguientes:

(*) MMC support
(*) MMC block device driver
(*) Secure Digital Host Controller Interface support (EXPERIMENTAL)

luego realizo el lspci -xxx y modifico el valor 20 a 22, como bien explicas en tu howto, pero nada (intento colocar un memory stick de 4 mb Sony, cuando cargo la particion windows funciona perfecto, por lo cual descarto problemas de hard)
el dmesg me tira lo siguiente en la parte referida a los drivers:
sdhci: Secure Digital Host Controller Interface driver, 0.11
sdhci: Copyright(c) Pierre Ossman
GSI 22 sharing vector 0xE9 and IRQ 22
ACPI: PCI Interrupt 0000:03:04.4[D] -> GSI 23 (level, low) -> IRQ 233
mmc0: SDHCI at 0xb0209000 irq 233 PIO
mmc1: SDHCI at 0xb0208c00 irq 233 PIO
mmc2: SDHCI at 0xb0208800 irq 233 PIO

te envio la salida del lspci
linuxfour linux # lspci
00:00.0 Host bridge: ATI Technologies Inc RS480 Host Bridge
00:01.0 PCI bridge: ATI Technologies Inc Unknown device 5a3f
00:04.0 PCI bridge: ATI Technologies Inc Unknown device 5a36
00:13.0 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller
00:13.1 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller
00:13.2 USB Controller: ATI Technologies Inc IXP SB400 USB2 Host Controller
00:14.0 SMBus: ATI Technologies Inc IXP SB400 SMBus Controller (rev 10)
00:14.1 IDE interface: ATI Technologies Inc Standard Dual Channel PCI IDE Controller ATI
00:14.3 ISA bridge: ATI Technologies Inc IXP SB400 PCI-ISA Bridge
00:14.4 PCI bridge: ATI Technologies Inc IXP SB400 PCI-PCI Bridge
00:14.5 Multimedia audio controller: ATI Technologies Inc IXP SB400 AC'97 Audio Controller (rev 01)
00:14.6 Modem: ATI Technologies Inc ATI SB400 - AC'97 Modem Controller (rev 01)
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 ATI Radeon XPRESS 200M 5955 (PCIE)
03:00.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
03:02.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)
03:04.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
03:04.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
03:04.4 Class 0805: Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD) Controller
03:06.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
linuxfour linux #

pero no puedo ponerla a funcionar, lo mismo me paso con el kernel 2.6.15-gentoo-r9 y los "parches" agregados, no hay forma.
Tienes alguna idea ??? me he salteado algun paso ??? :evil: :?:
Te agradezco cualquier ayuda que me puedas brindar :idea:

Salu2
Daniel Mery :D
_________________
"El conocimiento es patrimonio de la humanidad, por lo tanto no tiene propietarios ni necesita de licencias"
Usuario linux registrado: 364487
Gentoo user
Arch user
Back to top
View user's profile Send private message
capira
Tux's lil' helper
Tux's lil' helper


Joined: 02 May 2005
Posts: 147
Location: Spain

PostPosted: Fri Aug 18, 2006 5:17 pm    Post subject: Reply with quote

Antes de nada quiero dar las gracias a artic por su mini howto.
Lo he seguido y casi sin problema he conseguido leer una tarjeta MMC.
Sin embargo me quedan algunas dudas sin resolver:
  • Cada vez que reinicio tengo que ejecutar setpci. ¿Hay alguna forma de evitar esto?
  • No he conseguido leer tarjetas XD o MS
  • ¿Es posible conseguir un comportamiento igual que cuando inserto mi pendrive de manera que se me pregunte si quiero montar mi unidad?

Para dmery, ¿puedes pegar lo que te sale al ejecutar lsmod | grep -e sd -e mmc?
Back to top
View user's profile Send private message
capira
Tux's lil' helper
Tux's lil' helper


Joined: 02 May 2005
Posts: 147
Location: Spain

PostPosted: Fri Aug 18, 2006 5:20 pm    Post subject: Reply with quote

Por cierto, mi configuración es:
Hardware: Portatil Toshiba Satellite M40-285
Kernel: 2.6.17-gentoo-r5
Back to top
View user's profile Send private message
dmery
Apprentice
Apprentice


Joined: 15 Sep 2004
Posts: 225
Location: Coral Gables, Florida, USA

PostPosted: Fri Aug 18, 2006 5:36 pm    Post subject: Te envio la salida.... Reply with quote

capira, gracias por tu ayuda,

aqui va la salida

[root@gentoo]: ~ # lsmod | grep -e sd -e mmc
sdhci 12416 0
mmc_core 19288 1 sdhci

Te comento -por si te sirve- que para el setpci construi un "alias" y es mas facil. Ya que segun el mini howto de Artic hay que realizarlo cada vez "levantas" el sistema.

un salu2

Daniel Mery :D
_________________
"El conocimiento es patrimonio de la humanidad, por lo tanto no tiene propietarios ni necesita de licencias"
Usuario linux registrado: 364487
Gentoo user
Arch user
Back to top
View user's profile Send private message
capira
Tux's lil' helper
Tux's lil' helper


Joined: 02 May 2005
Posts: 147
Location: Spain

PostPosted: Fri Aug 18, 2006 5:54 pm    Post subject: Re: Te envio la salida.... Reply with quote

dmery wrote:
capira, gracias por tu ayuda,

aqui va la salida

[root@gentoo]: ~ # lsmod | grep -e sd -e mmc
sdhci 12416 0
mmc_core 19288 1 sdhci

Te comento -por si te sirve- que para el setpci construi un "alias" y es mas facil. Ya que segun el mini howto de Artic hay que realizarlo cada vez "levantas" el sistema.

un salu2

Daniel Mery :D

Vale, era lo que me suponía. A mi me ha pasado lo mismo al principio. En algún punto del post inicial, artic dice que hay que cargar el módulo mmc_block. Dice que no se carga por defecto. Una vez echo esto, mira a ver si necesitas utilizar le comando setpci, pero asegurate del que el id del dispositivo, está bien escrito, que yo he estado a punto de liarla:
Quote:
# lspci -xxx
...
06:06.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
...
# setpci -s 06:06.3 4c=0x22
Back to top
View user's profile Send private message
dmery
Apprentice
Apprentice


Joined: 15 Sep 2004
Posts: 225
Location: Coral Gables, Florida, USA

PostPosted: Fri Aug 18, 2006 6:53 pm    Post subject: gracias por tu respuesta Reply with quote

Capira,

Correcto ya realice: modprobe mmc_block,
la salida es:
[root@gentoo]: ~ # lsmod | grep -e sd -e mmc
mmc_block 6792 0
sdhci 12416 0
mmc_core 19288 2 mmc_block,sdhci

respecto a setpci:
[root@gentoo]: ~ # lspci -xxx
[b]03:04.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
........

40: 00 00 00 00 01 00 02 7e 00 00 00 00 22 00 00 00
........

o sea que ahora esta todo bien, pero cuando coloco un memory stick en dispositivo lector multiple "no pasa nada". Realmente no se si puede leer este tipo de "memory-stick". Pasa que con el mismo equipo en una particion Ubuntu lee perfectamente este "stick memory" en el "sd-card reader"; igual que la particion Guin2. Mi pregunta seria tu puedes leer este tipo de "memory stick" ?

Gracias por tu ayuda
Salu2
Daniel Mery :D
_________________
"El conocimiento es patrimonio de la humanidad, por lo tanto no tiene propietarios ni necesita de licencias"
Usuario linux registrado: 364487
Gentoo user
Arch user
Back to top
View user's profile Send private message
pcmaster
Advocate
Advocate


Joined: 04 Dec 2003
Posts: 2218
Location: Barcelona

PostPosted: Sat Aug 19, 2006 9:01 am    Post subject: Reply with quote

dmery: si puedes leer una tarjeta mmc/sd pero no una en otro slot, puede ser que no tengas activado el soporte para LUN múĺtiple en el kernel.

Normalmente, cada dispositivo scsi contiene un sólo disco, con una tabla de particiones, por lo que esa opción no hace falta activarla, pero en el caso de los lectores múltiples de tarjetas, hay un sólo dispositivo, donde cada slot se comporta como una unidad de disco independiente con su propia tabla de particiones, por lo que debes activarla.

Si os liáis con los nombres de los dispositivos, y tenéis udev, podéis mirar en /dev/disk a ver si se os crean automáticamente nombres permanentes. por ejemplo, con mi lector compacto de tarjetas (con dos ranuras), se crean /dev/sda, /dev/sdb, etc según haya otro dispositivo o no, pero en /dev/disk/by-id se crean enlaces que siempre se llaman igual:

usb-Hama_MS_Card_Reader_000000000003
usb-Hama_SD_Card_Reader_000000000003

uno para cada slot, y al insertar una tarjeta SD:

usb-Hama_MS_Card_Reader_000000000003
usb-Hama_SD_Card_Reader_000000000003
usb-Hama_SD_Card_Reader_000000000003-part1

Si os parecen demasiado largos, siempre podéis añadir reglas a udev para que os cree otros a gusto.

Saludos
_________________
pcmaster
Back to top
View user's profile Send private message
dmery
Apprentice
Apprentice


Joined: 15 Sep 2004
Posts: 225
Location: Coral Gables, Florida, USA

PostPosted: Sat Aug 19, 2006 5:55 pm    Post subject: PCmaster, gracias por tu ayuda Reply with quote

Hoy mismo vere el kernel y activare de ser necesario el "Lun multiple", despues te comentare como marcha la cuestion, por si me "como" algun paso. Es que a este asunto de "SD card reader" lo vengo siguiendo desde hace rato y no lo pude resolver con Gentoo. Gracias nuevamente pos tu soporte.

Salu2
Daniel Mery :D
_________________
"El conocimiento es patrimonio de la humanidad, por lo tanto no tiene propietarios ni necesita de licencias"
Usuario linux registrado: 364487
Gentoo user
Arch user
Back to top
View user's profile Send private message
pcmaster
Advocate
Advocate


Joined: 04 Dec 2003
Posts: 2218
Location: Barcelona

PostPosted: Sat Aug 19, 2006 7:50 pm    Post subject: Reply with quote

Pues yo lo tengo funcionando, por USB. Así que ánimo. :)
_________________
pcmaster
Back to top
View user's profile Send private message
dmery
Apprentice
Apprentice


Joined: 15 Sep 2004
Posts: 225
Location: Coral Gables, Florida, USA

PostPosted: Sat Aug 19, 2006 10:10 pm    Post subject: Bueno, no puedo leer MS Reply with quote

Finalmente compile el kernel con el "Lun multiple" y realizo todos los pasos del minihowto, pero nada... no puedo leer los "Memory Stick". Realmente no se mas por donde ir y ya llevo mucho "tiempo invertido" en este asuntillo....mucho me temo que quedara asi hasta que quiza mas adelante sea mas facil este "merequetenge". Com Guin2 y Ubuntu Edgy no tengo problemas, inserto el "Memory Stick" se enciende un "led" verde y me abre la ventana con los datos. Pero en Gentoo no he logrado leer ese bendito MS. :twisted:
Bueno de todos modos, muchas gracias por la colaboracion a todos los companieros del foro.

fraternos salu2
Daniel Mery :D
_________________
"El conocimiento es patrimonio de la humanidad, por lo tanto no tiene propietarios ni necesita de licencias"
Usuario linux registrado: 364487
Gentoo user
Arch user
Back to top
View user's profile Send private message
pcmaster
Advocate
Advocate


Joined: 04 Dec 2003
Posts: 2218
Location: Barcelona

PostPosted: Sat Aug 19, 2006 10:26 pm    Post subject: Reply with quote

1- Asegúrate de tener udev y hotplug actualizados a la última versión.

2- A ver si te sirve esto:

http://www.webcon.ca/~imorgan/tifm21/
_________________
pcmaster
Back to top
View user's profile Send private message
dmery
Apprentice
Apprentice


Joined: 15 Sep 2004
Posts: 225
Location: Coral Gables, Florida, USA

PostPosted: Sat Aug 19, 2006 11:05 pm    Post subject: Me parece lo siguiente... Reply with quote

pcmaster wrote:
1- Asegúrate de tener udev y hotplug actualizados a la última versión.

2- A ver si te sirve esto:

http://www.webcon.ca/~imorgan/tifm21/


Efectivamente tengo actualizado el sistema, antes de compilar el kernel realice un "emerge --sync" y despues un "emerge -uDav world".
en cuanto al enlace que me envias (muchas gracias) en una parte plantea que no trabaja para las "memory stick"

It was merged in 2.6.17-rc1, and also worked for me when backported to 2.6.16. This will give you read/write access (albeit quite slow, < 500 kB/s) to SD cards (and maybe MMC?) only. This will not work for Memory Stick, XD, or SM.


Esa es precisamente el tipo de tarjeta que me interesa poder "leer" ya que las utilizan la camara de foto digital mia (CyberShot de Sony). De todas maneras maniana le "echare" otra "encarada" a ver que pasa...esperemos la victoria !!! Obviamente te comentare que tanto pude o no avanzar. Reitero -la gratitud nunca esta de mas- mi mas sincero agradecimiento por tu ayuda.

Salu2
Daniel Mery :D
_________________
"El conocimiento es patrimonio de la humanidad, por lo tanto no tiene propietarios ni necesita de licencias"
Usuario linux registrado: 364487
Gentoo user
Arch user
Back to top
View user's profile Send private message
capira
Tux's lil' helper
Tux's lil' helper


Joined: 02 May 2005
Posts: 147
Location: Spain

PostPosted: Sun Aug 20, 2006 11:06 am    Post subject: Reply with quote

dmery, haznos saber tus avances ... yo también quiero leer las MS. He coseguido leer una SD, pero no escribir, a ver si luego le echo otro rato.

Saludos
Back to top
View user's profile Send private message
artic
Veteran
Veteran


Joined: 22 Nov 2003
Posts: 1208

PostPosted: Thu Nov 09, 2006 5:04 pm    Post subject: Reply with quote

Actualizado a 9 /11/06 añadida una pequeña FAQ.

salu2
_________________
Pwd by Gentoo | 2.6.28-gentoo-x64 | kde4.2| ext4 | xorg 7.4 |
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
Goto page 1, 2  Next
Page 1 of 2

 
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