Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Nov 2007 02:42:46 +0100
From:      Max Laier <max@love2party.net>
To:        Benjamin Close <Benjamin.Close@clearchain.com>
Cc:        Bachilo Dmitry <root@solink.ru>, mobile@freebsd.org, current@freebsd.org, Alexandre Sunny Kovalenko <alex.kovalenko@verizon.net>, Rene Ladan <r.c.ladan@gmail.com>
Subject:   Re: PCI Cardreader
Message-ID:  <200711090242.57554.max@love2party.net>
In-Reply-To: <4733B96C.2010307@clearchain.com>
References:  <200711071056.13466.root@solink.ru> <e890cae60711080112u6235ebecg67bd7fa4ec4631e8@mail.gmail.com> <4733B96C.2010307@clearchain.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2916183.KU7U9Qqipb
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Friday 09 November 2007, Benjamin Close wrote:
> Rene Ladan wrote:
> > 2007/11/8, Rene Ladan <r.c.ladan@gmail.com>:
> >> Alexandre "Sunny" Kovalenko schreef:
> >>> On Wed, 2007-11-07 at 22:13 +0100, Rene Ladan wrote:
> >>>> Bachilo Dmitry schreef:
> >>>>> Hello all.
> >>>>> I always used USB cardreaders and had no problem with it, but now
> >>>>> in my notebook I have a cardreader, that appears to be onboard
> >>>>> PCI device. And so FreeBSD sees it as this:
> >>>>> pci6: <memory, flash> at device 4.1 (no driver attached)
> >>>>> pci6: <base peripheral> at device 4.2 (no driver attached)
> >>>>> pci6: <memory, flash> at device 4.3 (no driver attached)
> >>>>> pci6: <memory, flash> at device 4.4 (no driver attached)
> >>>>>
> >>>>>
> >>>>> That's even more odd because three are recognized as flash and
> >>>>> one is not. pciconf -lv shows this:
> >>>>>
> >>>>> none13@pci6:4:1:        class=3D0x050100 card=3D0x009f1025
> >>>>> chip=3D0x05301524 rev=3D0x01 hdr=3D0x00
> >>>>>     vendor     =3D 'ENE Technology Inc'
> >>>>>     device     =3D 'PCI Memory Stick Card Reader Controller'
> >>>>>     class      =3D memory
> >>>>>     subclass   =3D flash
> >>>>>
> >>>>> Well, in 7.0-CURRENT it showed all four devices and now in BETA-2
> >>>>> only this one.
> >>>>
> >>>> On my 8.0-CURRENT box (20071105) it shows all four devices:
> >>>>
> >>>> cbb0@pci0:4:1:0:     class=3D0x060700 card=3D0x14371043
> >>>> chip=3D0x04761180 rev=3D0xb3 hdr=3D0x02 vendor     =3D 'Ricoh Compan=
y,
> >>>> Ltd.'
> >>>>     device     =3D 'unknown Ricoh R/RL/5C476(II)'
> >>>>     class      =3D bridge
> >>>>     subclass   =3D PCI-CardBus
> >>>> fwohci0@pci0:4:1:1:  class=3D0x0c0010 card=3D0x14371043
> >>>> chip=3D0x05521180 rev=3D0x08 hdr=3D0x00 vendor     =3D 'Ricoh Compan=
y,
> >>>> Ltd.'
> >>>>     device     =3D 'RL5c552 IEEE-1394 Controller'
> >>>>     class      =3D serial bus
> >>>>     subclass   =3D FireWire
> >>>> none0@pci0:4:1:2:    class=3D0x080500 card=3D0x14371043
> >>>> chip=3D0x08221180 rev=3D0x17 hdr=3D0x00 vendor     =3D 'Ricoh Compan=
y,
> >>>> Ltd.'
> >>>>     device     =3D 'R5C832, R5C843 SDA Standard Compliant SD Host
> >>>> Controller' class      =3D base peripheral
> >>>> none1@pci0:4:1:3:    class=3D0x088000 card=3D0x14371043
> >>>> chip=3D0x05921180 rev=3D0x08 hdr=3D0x00 vendor     =3D 'Ricoh Compan=
y,
> >>>> Ltd.'
> >>>>     device     =3D '13871043 Ricoh Memory Stick Host Controller'
> >>>>     class      =3D base peripheral
> >>>>
> >>>>> Is there any way I can make them work?
> >>>>
> >>>> You can add these lines to your kernel configuration:
> >>>>
> >>>> device          mmc
> >>>> device          mmcsd
> >>>>
> >>>> But don't expect any magic.  mmc(4) and mmcsd(4) tell that nothing
> >>>> currently works, which seems to be true on my Asus A6JE (using a
> >>>> Kingston micro-SD card with adapter).
> >>>>
> >>>> imp@ is the last person who touched the driver which lives in
> >>>> /usr/src/sys/dev/mmc/
> >>>
> >>> Thing below is on my list to try out when I get enough breathing
> >>> room (or when I would have a dire need to read SD cards on my
> >>> ThinkPad X60 ;). Did you, by any chance, try it? Any experiences to
> >>> share?
> >>>
> >>> http://www.freebsd.org/cgi/getmsg.cgi?fetch=3D17399+21119
> >>> +/usr/local/www/db/text/2007/freebsd-mobile/20070916.freebsd-mobile
> >>
> >> Not yet, I didn't see the message until now since I'm not (yet) on
> >> the mobile list. A quick try showed that it does not compile on my
> >> box.  I'll investigate why. The author did not leave an email
> >> address in the files.
> >
> > The short story is bus_setup_intr() gained some parameters, I'll
> > figure out which.  According to a blog at bsdimp.blogspot.com, Ricoh
> > based readers should work with this driver :)
>
> The attached patch gets it compiling but I think there might be some
> locking issues still as I got an immediate panic at module load. Not
> sure who put up the tar.gz but I know Max has done some work porting it
> from OpenBSD in p4:
>
> http://perforce.freebsd.org/changeList.cgi?CMD=3Dchanges&FSPC=3D//depot/u=
se
>r/mlaier/sdmmc/sys/...

Nah, that's crap.  Never got anywhere.  Just me toying around.

>
> diff -ur sdmmc-20070627/dev/sdmmc/sdshc.c
> sdmmc-20070627-devel/dev/sdmmc/sdshc.c
> --- sdmmc-20070627/dev/sdmmc/sdshc.c    2007-06-25 19:55:52.000000000
> +0930 +++ sdmmc-20070627-devel/dev/sdmmc/sdshc.c      2007-11-09
> 11:45:00.779789122 +1030
> @@ -42,6 +42,8 @@
>  #include <sys/systm.h>
>  #include <sys/conf.h>
>  #include <sys/malloc.h>
> +#include <sys/bus.h>
> +#include <machine/bus.h>
>
>  #include <dev/pci/pcireg.h>
>  #include <dev/pci/pcivar.h>
> @@ -342,7 +344,7 @@
>       * Hook our interrupt after all initialization is complete.
>       */
>      LOG(0x10, (dev, "Setup Intr\n"));
> -    error =3D bus_setup_intr(dev, sc->irq, INTR_TYPE_NET|INTR_MPSAFE ,
> +    error =3D bus_setup_intr(dev, sc->irq, INTR_TYPE_NET|INTR_MPSAFE ,
> NULL, sdshc_intr, sc, &sc->ih);
>      if (error !=3D 0) {
>         MSG((dev, "could not set up interrupt\n"));
> diff -ur sdmmc-20070627/dev/sdmmc/sdshcbus.c
> sdmmc-20070627-devel/dev/sdmmc/sdshcbus.c
> --- sdmmc-20070627/dev/sdmmc/sdshcbus.c 2007-06-20 03:12:28.000000000
> +0930 +++ sdmmc-20070627-devel/dev/sdmmc/sdshcbus.c   2007-11-09
> 11:49:18.706315189 +1030
> @@ -41,6 +41,8 @@
>  #include <sys/conf.h>
>  #include <sys/malloc.h>
>  #include <sys/ctype.h>
> +#include <sys/bus.h>
> +#include <machine/bus.h>
>
>  #include "sdbus_if.h"



=2D-=20
/"\  Best regards,                      | mlaier@freebsd.org
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier@EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News

--nextPart2916183.KU7U9Qqipb
Content-Type: application/pgp-signature; name=signature.asc 
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4 (FreeBSD)

iD8DBQBHM7shXyyEoT62BG0RAmWsAJkBZbXkX8vFAuO2Da3wUwUbQSgGiACdH5p7
e9CKfIvD9Na+2eZKEAZr34Q=
=nOh4
-----END PGP SIGNATURE-----

--nextPart2916183.KU7U9Qqipb--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200711090242.57554.max>