Bug 182022 - RFE: include sdhci driver
RFE: include sdhci driver
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Dave Jones
Brian Brock
: FutureFeature
Depends On:
  Show dependency treegraph
Reported: 2006-02-19 01:55 EST by Kim Lux
Modified: 2015-01-04 17:25 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-10-16 21:44:41 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Picture of the device I am speaking of. (342.38 KB, image/jpeg)
2006-02-21 15:16 EST, Kim Lux
no flags Details

  None (edit)
Description Kim Lux 2006-02-19 01:55:58 EST
Description of problem:     
No smartcard reader gets installed on the ZD7000 notebook computers.      
Version-Release number of selected component (if applicable):     
FC4 latest update as of today.      
How reproducible:     
Every time.      
Steps to Reproduce:     
1. Insert smartcard     
Actual results:     
Nothing happens on the desktop or in the system logs.      
Expected results:     
Something should happen to allow me to mount the card.      
Additional info:     
It appears that Mandriva has this working, as well as a few other things on    
the ZD7000 that Fedora doesn't.  There are a ton of these notebooks around.  I    
am sure that I am not the only person missing this functionality.     
The driver for the smartcard appears to 'opensc'. 
Note also that the Nvidia driver automatically loads,  PCMCIA works, etc.
Comment 1 Pete Zaitcev 2006-02-20 14:19:37 EST
This "driver" has no kernel component, as far as I can tell. It is just
a daemon, which may sit on top of "pcsc-lite". The word "driver" is just
misuse of the term by some silly people in some silly web forum.

See also bug 180075, which requests ccid (on RHEL 4). The ccid sits on pcsc.

This obviously requires some serious decision making about which API to
adopt, should they conflict. Mandriva may not be the best guide, but at
least it's something.
Comment 2 Pete Zaitcev 2006-02-20 14:21:42 EST
Returning the bug to Bill - he'll probably be the one to make the determination.
I'm going to ask on fedora-devel-list about this, too.
Comment 3 Bill Nottingham 2006-02-20 14:37:20 EST
This is already in Extras.
Comment 4 Kim Lux 2006-02-20 20:16:26 EST
What is already in "Extras" ?  A bug report ?  A daemon ?  What is it called ?
Comment 6 Kim Lux 2006-02-20 23:11:42 EST
Any hints on how to make opensc work in FC4 ?  The README is a little sparce and
the doc at http://www.opensc-project.org/files/doc/opensc.html seems to think
one should be installing "pcsc-lite".  

I am wondering, since Fedora has this in Extras, if they have another plan for
how it would be used ?  (I saw the Deferred status below, but if it is in
Extras, someone must be using it now ?) 

Comment 7 Kim Lux 2006-02-20 23:13:05 EST
Oh.. btw: it built fine using ./configure, make, make install.
Comment 8 Bill Nottingham 2006-02-21 12:04:48 EST
Assigning to the extras package, you can ask the maintainer about FC4 support.
Comment 9 Ville Skyttä 2006-02-21 13:03:32 EST
opensc is a framework for smart cards, and it can use services for smart card
_readers_ provided by openct and pcsc-lite.

pcsc-lite is another framework (for readers) and needs the actual driver for the
smart card reader in order to be able to provide it for other apps (such as
opensc).  Extras ships two pcsc-lite driver packages: ccid and pcsc-lite-openct.

opensc can use openct directly without pcsc-lite, so if openct has support for
your reader, you don't need pcsc-lite in order to use opensc.

It is not clear to me what you mean by "mounting" the smart card (what kind of
card do you have?) nor do I know what reader does the ZD7000 have, but the first
steps in determining if the basic support for the reader is working would be to:
install the ccid, pcsc-lite, pcsc-lite-openct, pcsc-tools and opensc packages
from Extras, start the pcscd daemon and openct (/sbin service pcscd start ;
/sbin/service openct start), and run "pcsc_scan" and see if inserting/removing
the card results in some output on the console.  And/or after starting pcscd,
see what "opensc-tool -l" outputs.
Comment 10 Kim Lux 2006-02-21 13:36:39 EST
Exactly what info do you want ? (Please provide a list.) I assume you want me to
install pcsc-lite and go from there and report what I get ?  Anything else ? 

By "mount", I meant handle it like KDE does with a USB reader for the same card.
 I think udev intercepts the USB plug in event (or card insertion event) and a
window appears asking me what I want to do with the new device. Something like that.

I've got a USB reader for other memory cards and they work like that. 

At this point a device showing up in /dev would be OK to get me going.  I've got
 a USB reader for CF cards that works great, but now I need to read SD cards and
I don't see a reason why at some point we shouldn't get the built in reader
working properly.  

Comment 11 Kim Lux 2006-02-21 13:38:51 EST
How is Mandriva doing things ?  They have this all working, right ?
Comment 12 Ville Skyttä 2006-02-21 14:15:37 EST
Okay, so we're most likely talking about two different things.

opensc, pcsc-lite and friends are software packages for smart cards and smart
card readers in the sense of cryptography related devices.  As far as I know,
they cannot be used for storage kind of memory cards such as CF or SD, and also
that the same readers cannot be used for both the crypto kind of smart cards and
those memory devices.

In fact, reading http://www.pcmag.com/article2/0%2C1759%2C1568068%2C00.asp tells
me that the ZD7000 has a memory card reader and does not mention a smart card
reader (I'm not a native English speaker, so forgive me if the terms aren't spot
on) -> reassigning to FC/distribution and adjusting summary accordingly.
Comment 13 Bill Nottingham 2006-02-21 14:31:19 EST
Kim: the forum said they were using opensc, which is why I assigned this to that
package. If they're not using that (if the poster was mistaken), then I'm not
100% sure what they're using.

Can you post the output of a) lspci b) lsusb?
Comment 14 Pete Zaitcev 2006-02-21 15:06:08 EST
A picture of the slot won't hurt either. Smartcard slot is twice wider
than SD slot. Should be easy to tell, no?
Comment 15 Kim Lux 2006-02-21 15:10:33 EST
With a SD card inserted into the "Digital Media" port on my HP ZD7280:

# /sbin/lspci
00:00.0 Host bridge: Intel Corporation 82865G/PE/P DRAM Controller/Host-Hub
Interface (rev 02)
00:01.0 PCI bridge: Intel Corporation 82865G/PE/P PCI to AGP Controller (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB2 EHCI
Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev c2)
00:1f.0 ISA bridge: Intel Corporation 82801EB/ER (ICH5/ICH5R) LPC Interface
Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801EB/ER (ICH5/ICH5R) IDE Controller
(rev 02)
00:1f.5 Multimedia audio controller: Intel Corporation 82801EB/ER (ICH5/ICH5R)
AC'97 Audio Controller (rev 02)
00:1f.6 Modem: Intel Corporation 82801EB/ER (ICH5/ICH5R) AC'97 Modem Controller
(rev 02)
01:00.0 VGA compatible controller: nVidia Corporation NV36 [GeForce FX Go5700]
(rev a1)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
RTL-8139/8139C/8139C+ (rev 10)
02:01.0 CardBus bridge: ENE Technology Inc CB-710/2/4 Cardbus Controller (rev 02)
02:01.1 FLASH memory: ENE Technology Inc CB710 Memory Card Reader Controller
02:02.0 FireWire (IEEE 1394): Texas Instruments TSB43AB21 IEEE-1394a-2000
Controller (PHY/Link)
02:03.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN
Controller (rev 03)

# /sbin/lsusb
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 002: ID 046d:c512 Logitech, Inc.
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 002 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

I have 2 USB serial ports running at the moment, for a project I am running,
which is why you see the 2 PL2303 devices. 

# /sbin/lsmod
Module                  Size  Used by
pl2303                 23877  1
usbserial              34345  3 pl2303
appletalk              44785  2
ipx                    37477  2
parport_pc             31749  1
lp                     16713  0
parport                39561  2 parport_pc,lp
autofs4                23493  1
i2c_dev                13761  0
i2c_core               25409  1 i2c_dev
nfs                   212361  2
lockd                  64201  2 nfs
nfs_acl                 7745  1 nfs
sunrpc                145541  4 nfs,lockd,nfs_acl
pcmcia                 42617  2
dm_mod                 60893  0
video                  20165  0
button                 10705  0
battery                13509  0
ac                      8901  0
nvidia               3717736  12
ipv6                  267585  14
ipt_limit               6593  8
iptable_mangle          6977  0
ipt_LOG                11329  8
ipt_MASQUERADE          7617  0
iptable_nat            26229  1 ipt_MASQUERADE
ipt_TOS                 6593  0
ipt_REJECT             10049  1
ip_conntrack_irc       75985  0
ip_conntrack_ftp       76753  0
ipt_state               5953  6
ip_conntrack           46889  5
iptable_filter          7105  1
ip_tables              25409  9
ohci1394               39817  0
ieee1394              301465  1 ohci1394
yenta_socket           27725  2
rsrc_nonstatic         17473  1 yenta_socket
pcmcia_core            45529  3 pcmcia,yenta_socket,rsrc_nonstatic
uhci_hcd               37201  0
ehci_hcd               38349  0
shpchp                 97477  0
hw_random               9685  0
snd_intel8x0           36225  1
snd_ac97_codec         82237  1 snd_intel8x0
snd_seq_dummy           7749  0
snd_seq_oss            36289  0
snd_seq_midi_event     11073  1 snd_seq_oss
snd_seq                55121  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device         13133  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            54769  0
snd_mixer_oss          22209  1 snd_pcm_oss
snd_pcm                91717  3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer              29253  2 snd_seq,snd_pcm
snd                    58917  11
soundcore              13473  1 snd
8139cp                 26561  0
snd_page_alloc         14793  2 snd_intel8x0,snd_pcm
8139too                31425  0
mii                     9537  2 8139cp,8139too
ndiswrapper           166676  0
ext3                  134473  2
jbd                    62169  1 ext3

hwbrowser shows the ENE 710/2/4 under PCMCIA/PC-Card devices with the driver
being yenta_socket, if that helps.
Comment 16 Kim Lux 2006-02-21 15:16:59 EST
Created attachment 124980 [details]
Picture of the device I am speaking of.

This is the device I speak of. 

Sorry for the mix up.  I think by "smart card" you meant a device for holding
passwords and account balances, like a security card. 

I mean "smart media" cards.
Comment 17 Bill Nottingham 2006-02-21 15:21:35 EST
I can find nothing on google that suggests this card is supported. Will have to
look some more.
Comment 18 Kim Lux 2006-02-21 15:33:03 EST
I am pretty sure that the guy on zd7000forums means "Smart Media" card, not
"Smart Card", but someone would have to email them or test Mandriva to be sure.

Apparently there is a driver in BSD for it ?

Comment 19 Bill Nottingham 2006-02-21 15:40:30 EST
The bsd driver referred to there is just adding ids for the cardbus part; it
doesn't have anything to do with the media slot.
Comment 20 Kim Lux 2006-03-21 23:36:29 EST
Is this device working in "Kubuntu Dapper Drake" ?


It seems he can read a card with an ENE 710, which is the same as what is used
in the ZD7000s.  (And I've since found, Toshibas and Acers...)

Comment 22 Bill Nottingham 2006-03-22 17:54:06 EST
That patch doesn't have anything to do with the memory card reader - that's all
about the cardbus slot. The other link you posted isn't reachable for me ATM.
Comment 23 Bill Nottingham 2006-03-22 17:56:07 EST
However, the Ubuntu link does give what's needed, at least in the general sense.
Pushing to the kernel.
Comment 24 Kim Lux 2006-03-22 19:26:50 EST
I knew the patch was about the cardbus slot.  The text in the patch talked about
about work arounds and being compatible with a TI device, so I thought the guy
might know something more about the ENE hardware.

Here is the content of the page the second link points to.  My apologies if we
are contravening copyright rules and to those it might offend...

Driver for ENE Technologies Cardbus Adapters - 5/17/04 @ 02:43

Driver for ENE Technologies Cardbus Adapters

From: Paul Smedley

Modified version of the IBM Cardbus driver for Texas Instruments chipsets to
support the ENE Technologies range of Cardbus adapters.

Available from http://smedley.info/ibm2ss14-ene.zip

(Please do not upload to Hobbes or anywhere until I can confirm that it's
working OK)

The following ENE Technologies chipsets *should* be supported:

Chipset Vendor ID Device ID
ENE Technology CB-1211 0x1524 0x1211
ENE Technology CB-1225 0x1524 0x1225
ENE Technology CB-1410 0x1524 0x1410
ENE Technology CB-1420 0x1524 0x1420
ENE Technology CB-710 0x1524 0x1411 or 0x0710
ENE Technology CB-720 0x1524 0x1421 or 0x0720

Note that TI chipsets will not be detected.

Background: I'm about to buy a laptop that features the ENE Technologies CB-1410
driver. The only OS/2 support for this chipset appears to be in a commercial
Socket Services package that costs 60 Euro. After investigating Linux support -
it appears that the ENE chips are register compatible with the TI chips, so I
found the source on the DDK site, and made some changes to replace the TI
Vendor/Device IDs with the ENE ones.

Note that I haven't been able to test this yet due to lack of hardware - but
interested in feedback to paul@smedley.info!

As usual - I'm not responsible for any damage resulting from trying this driver
- and it probably requires you to install the necessary support via IBM's
cardbus.exe available from SWC or the eCS website - then replace the installed
version of ibm2ss14.sys with the one from this package to enable support for the
ENE chipset!

Source: OS2VOICE
Posted by: Martin Iturbide 

The zip link it broken.  I emailed paul@smedley.info, but have not yet received
a reply.  It doesn't look like many people used his driver. 
Comment 25 Kim Lux 2006-03-22 19:31:20 EST
OS2Voice still seems to be somewhat active.  http://www.os2voice.org/  They may
know how to track down Paul Smedley or know what happened to the code. 
Comment 26 Kim Lux 2006-03-31 14:25:51 EST
I am happy to report that the SD card driver for the ENE appears to have been 
merged into 2.6.17-rc1. 
"The driver has been merged in the main kernel starting with 2.6.17-rc1." 
If you want to participate in testing, etc. you should probably join the mmc 
mailing list.  
This is interesting. 
Comment 27 Dave Jones 2006-09-16 23:27:07 EDT
[This comment added as part of a mass-update to all open FC4 kernel bugs]

FC4 has now transitioned to the Fedora legacy project, which will continue to
release security related updates for the kernel.  As this bug is not security
related, it is unlikely to be fixed in an update for FC4, and has been migrated
to FC5.

Please retest with Fedora Core 5.

Thank you.
Comment 28 Dave Jones 2006-10-16 20:52:55 EDT
A new kernel update has been released (Version: 2.6.18-1.2200.fc5)
based upon a new upstream kernel release.

Please retest against this new kernel, as a large number of patches
go into each upstream release, possibly including changes that
may address this problem.

This bug has been placed in NEEDINFO state.
Due to the large volume of inactive bugs in bugzilla, if this bug is
still in this state in two weeks time, it will be closed.

Should this bug still be relevant after this period, the reporter
can reopen the bug at any time. Any other users on the Cc: list
of this bug can request that the bug be reopened by adding a
comment to the bug.

In the last few updates, some users upgrading from FC4->FC5
have reported that installing a kernel update has left their
systems unbootable. If you have been affected by this problem
please check you only have one version of device-mapper & lvm2
installed.  See bug 207474 for further details.

If this bug is a problem preventing you from installing the
release this version is filed against, please see bug 169613.

If this bug has been fixed, but you are now experiencing a different
problem, please file a separate bug for the new problem.

Thank you.

Note You need to log in before you can comment on or make changes to this bug.