Help - Search - Members - Calendar
Full Version: Driver for Laptop Card-Readers (Internal PCI Bus)
InsanelyMac Forum > OSx86 Project > Hardware and Drivers > Other Peripheral Devices
Pages: 1, 2, 3
quinielascom
This driver is intended to be used on any machine running Mac OS X with a PCI based JMicron SD Card reader such as the Dell Mini 9 or the Acer Aspire One.

It may also be extended to work with other SDHCI compliant hosts.

For compatibility check this file: Click to view attachment
And maybe others with this device:

The driver is available in the development page.

http://redirectingat.com/?id=292X457&u...11-release.html

Another development: http://forum.voodooprojects.org/index.php/board,14.0.html

Thanks.
Slice
QUOTE (quinielascom @ Oct 23 2008, 04:11 AM) *
Works ? No

Or this is not possible because Apple laptops no have internal cardreaders ?

Thanks.

Yes, Apple has only USB cardreader. For PCI no any drivers. - edited: now yes!
aliasa_anderson
QUOTE (quinielascom @ Nov 23 2008, 01:11 AM) *
This driver works fine for me:

http://forum.insanelymac.com/index.php?act...st&id=38976

Here is the original driver:

http://sourceforge.net/projects/osxsdhci/

This driver is in alpha development phase but i only changed the Vendor and device ID and works fine.



Hi quinielascom,
my specs for the same are:

07:05.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 19)
07:05.2 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 0a)
07:05.3 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 05)
07:05.4 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev ff)



Do you think i should give it a try....

how is the performance ?
are all cards supported ?
AlexanderZhang
it make the system slowly,if the card you used is low speed.
sorry for my english... happy.gif
AcerOSX
I have tested the kext and works fine. I can confirm that it only read SD cards, but its an amazing start because it is stilll in development. I have got beta 2. My SD controller id follows :

SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822]
yopale
Tested on HP dv2700 whith Ricoh SD/MMC Host Controller and it works very well
read and write supported and quite fast

tested only with a micro sd card
dell700m
Does NOT work for me. Thinkpad R61.

15:00.2 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 21)

Kill my USB mouse every time i insert a SD card, and SD card doesn't mount on desktop.

Any thoughts?
izernet
this kext works for me
thks quinielas u r great
macgirl
Didn't work for my XPS M1330 but I hope soon could work biggrin.gif
Slice
Didn't work for me. If I'll get the sources (it is OpenSource or no?) then I'll try to improve it.
quinielascom
Here is the new source code:

https://osxsdhci.svn.sourceforge.net/svnroot/osxsdhci/

but originally was development here:

http://forum.insanelymac.com/index.php?showtopic=62711

after in: http://www.mydellmini.com/forum/sd-card-sl...on-t360s20.html

make improvements to sd driver.
Slice
QUOTE (quinielascom @ Nov 27 2008, 05:41 AM) *


Very thanx for sources. I begin to study.
J0hn Demented
Is this going to be the page for this project or can we expect a new posting so that we can become beta testers
Onzarob
Installed and working perfectly........well done.

thumbsup_anim.gif
J0hn Demented
Congrads Onzarob. I hope that Slice will be able to make it functional for everyone. Glad quinielascom found the drivers and started up this cause it is hope for everyone that has build in card readers.
quinielascom
J0hn Demented, what are your Vendor & Device ID ? some people (including me) got working the card reader with only change this value in two places into kext; first the under Content Info.plist and other Info.plist under Content/Resources folder. I not sure if edit the Content/Resources/Info.plist is necessary but i changed the ID also when i installed this kext.

Regards.
kazzi
Not work for me. Mine is 0x11800843
kazzi
Thanks quinielascom for correcting me. I changed the value but it seems doesn't work either. What should I do to check if it is detected by Leopard? The kext is loaded but I can't find it in System Profiler.

Regards,
Ha Le-Viet.
rschultz101
using pci express card reader,

works, think it goes over the usb , so compatible,
does not stick out, also need to disable usb boot in bios,
otherwise, it will try to boot from SD ,...
works with SDHC .

hardware hack,... otherwise, to use a usb reader, and hardwire it to an existing usb port,
most usefull , for a netbook, without an express card slot.
wingrunr21
This is interesting. I was planning on porting sdhci after I finished with my current project (I know, it's taking awhile, I'm very busy...). Anyway, the FreeBSD driver is just as functional as the Linux one (meaning SD and MMC card support). Here's the source:

http://people.freebsd.org/~mav/sdhci/
J0hn Demented
QUOTE (quinielascom @ Dec 1 2008, 08:07 PM) *
J0hn Demented, what are your Vendor & Device ID ? some people (including me) got working the card reader with only change this value in two places into kext; first the under Content Info.plist and other Info.plist under Content/Resources folder. I not sure if edit the Content/Resources/Info.plist is necessary but i changed the ID also when i installed this kext.

Regards.


02:09.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)
02:09.2 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 12)
02:09.3 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 12)
02:09.4 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 12)

I am not sure what I am suppose to add. Do you need any additional info from me?
quinielascom
QUOTE (kazzi @ Dec 3 2008, 12:10 PM) *
Thanks quinielascom for correcting me. I changed the value but it seems doesn't work either. What should I do to check if it is detected by Leopard? The kext is loaded but I can't find it in System Profiler.

Regards,
Ha Le-Viet.


With IORegistryExplorer you can check if it loads (of course if SD is available in the desktop it is not necessary), anyway attach a print screen showing the IORegistryExplorer with the SD driver loaded and there is a SD in the Card Reader.

Click to view attachment

Regards.
talisman
Works on XPS M1530. SD only.... thanks
kazzi
I made it works now. Detects a card after around 1 minute and can't read the FAT partition card.

Thanks so much for making it work.

Regards,
Ha Le-Viet.
J0hn Demented
Click to view attachment

IoReg see everything I believe. Its a little different then yours but it show up. I think my problem is I have a SanDisk Memory Stick Pro (MagicGate) so its not seeing that. I need to go find my regular SD Cards I suppose.
krrr
humm. guys in it goes into beta of final please update here. also ping here if the 50% or high usage bug is solved smile.gif i will try it then.
fran1987
Donīt work for my (Acer Travelmate 5720):

0f:06.0 CardBus bridge [0607]: Texas Instruments PCIxx12 Cardbus Controller [104c:8039]
0f:06.2 Mass storage controller [0180]: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) [104c:803b]
0f:06.3 SD Host controller [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller [104c:803c]
aliasa_anderson
QUOTE (fran1987 @ Dec 5 2008, 09:08 PM) *
Donīt work for my (Acer Travelmate 5720):

0f:06.0 CardBus bridge [0607]: Texas Instruments PCIxx12 Cardbus Controller [104c:8039]
0f:06.2 Mass storage controller [0180]: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) [104c:803b]
0f:06.3 SD Host controller [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller [104c:803c]



Try changing the device IDs in Info.plist file to match the one you have.
There are two plist files in this kext.

1. IOSDHCIBlockDevice.kext\IOSDHCIBlockDevice.kext\Contents\Resources

and

2. IOSDHCIBlockDevice.kext\IOSDHCIBlockDevice.kext\Contents

Change the string in :

<key>IOPCIMatch</key>
<string>0x08221180</string>

to the device id you have.


The default value in the kext is for Ricoh i guess.
0a:09.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)


I am not sure but try using:

<key>IOPCIMatch</key>
<string>0x803c104c</string>
bob2600
Yeah it doesn't seem to work with texas instruments sd controllers since I edited the two plist files and it still would not detect the sd card... Any ideas?
wingrunr21
QUOTE (bob2600 @ Dec 8 2008, 01:38 AM) *
Yeah it doesn't seem to work with texas instruments sd controllers since I edited the two plist files and it still would not detect the sd card... Any ideas?


I think it'll only work with JMicron and Ricoh devices. I looked at the source briefly. I got the card reader to be detected but upon card insertion my laptop hardlocked (killed the HFS+ partition map, had to rebuild that, it was loads of fun...). For those that want high-speed support/4-bit data path support I can upload the recompiled kext with those features enabled if you want to give it a whirl.
Boombeng
Works well on my dell studio, thanks!

SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)
System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 12)
System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 12)
System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 12)

What I noticed :
i can not boot when a card is in the slot
SDHC 4GB (EMTEC class 4) doesn't work (and freeze my mouse)
SD 1GB (SanDisk Ultra II) works well
aliasa_anderson
QUOTE (wingrunr21 @ Dec 8 2008, 07:22 AM) *
I think it'll only work with JMicron and Ricoh devices. I looked at the source briefly. I got the card reader to be detected but upon card insertion my laptop hardlocked (killed the HFS+ partition map, had to rebuild that, it was loads of fun...). For those that want high-speed support/4-bit data path support I can upload the recompiled kext with those features enabled if you want to give it a whirl.



Yeah that would be great.Currently,as reported it is quite slow,any ideas why CPU utilization increses.
Does it use use DMA mode or PIO for I/O ?
I will also have a look at the sources to see if anything could be done in this regard.

Regards
aliasa
Smo3
Hi smile.gif
on asus Z53S aka F3Sc test results:
<= 1Gb SD - works fine, but if card is removed without unmount, system after some time hangs up.
2Gb SD - system hangs up, card not detected
8Gb SDHC - not detected, not working if OSX booting with card in card reader, system hangs up on blue screen smile.gif

And biggest problem - after installing drivers it takes about 5-10 minutes system to mount other HD partitions.

Thanks for your work! Waiting new versions wink.gif
lwy7814
I have Acer 5580 with PCI card reader.:

02:09.2 Mass storage controller [0180]: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) [104c:803b]

Subsystem: Acer Incorporated [ALI] Device [1025:0110]

Flags: bus master, medium devsel, latency 64, IRQ 20

Memory at a0101000 (32-bit, non-prefetchable)

Capabilities: [44] Power Management version 2


I had change those number in info.plist to 803b104c. SD card still can not be read in Leopard.
wingrunr21
QUOTE (aliasa_anderson @ Dec 8 2008, 09:15 AM) *
Yeah that would be great.Currently,as reported it is quite slow,any ideas why CPU utilization increses.
Does it use use DMA mode or PIO for I/O ?
I will also have a look at the sources to see if anything could be done in this regard.


It has high CPU utilization because the driver does not use interrupts. Apparently that is on the developer's todo list. I'll check out the latest source tomorrow and upload the kext.
J0hn Demented
I finally got it to work. I only have a 2gb wii sd card and it works perfectly. Of course you cant boot with it in the system but once you put it in after the system is up and running its perfect.
Fourof4
Another success here.. on Dell Inspiron E1705
It recognizes my Toshiba 256mb smile.gif
muhandis
Tried it on my wife's Acer Travelmate 4320

0f:06.3 SD Host controller [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller [104c:803c]

no success, but will look forward to further developments. biggrin.gif
DuBmastah
thanks for trying to switch those ricoh card readers back to live !

i'll give a try tonight fingers crossed.

will i be able to read cards from my phone or my camera ?

gast, can't stand waiting ;-)
PaulOSX
Hi fellows,

Here my modificated Kext to read SD card in a Dell XPS M1530, the PCI adress had to change from ... to 0x08221180 thats all foks!

Greetings!

Hi fellows,

Here my modificated Kext to read SD card in a Dell XPS M1530, the PCI adress had to change from ... to 0x08221180 thats all foks!

Greetings!
Yobin
no working on my lenovo F31G
not detected anything...

05:09.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)
05:09.2 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 12)
05:09.3 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 12)
05:09.4 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 12)
Merlin Corey
It works perfect on my ASUS X51L, but when the card is in use, overall system performance is slightly decreased.

Looking forward to further development.
tivimac
This kext works without any modification on Dell Inspiron 1525 (Vanilla Kernel 10.5.6)

Tested on Standard SD card (Actually a microSD card with adapter 2GB)

I only hope that we can make the MEMORYSTICK PRO Available also.


QUOTE (quinielascom @ Nov 22 2008, 09:11 PM) *
This driver works fine for me:

IOSDHCIBlockDevice.kext.zip already have changed the string value.

Here is the original driver:

http://sourceforge.net/projects/osxsdhci/

This driver is in alpha development phase, i only changed the Vendor & Dev ID and works fine.
tivimac
The new version (v3) works without problems (you'll have to change the id on the kext though)

To Do for this kext: Memory Stick/XD

Also with this revision, is possible to boot with with the SD Card inserted.
quinielascom
I test this new release here are results:

1.- Minimum Processor usage (less 10%)
2.- Double speed rate (read/write)
3.- Support SDHC Cards (Still no tested)

I used the Xbench v1.3 Application below some screenshots

Click to view attachmentClick to view attachment

Attach the new release with string 0x08221180 already changed.

Click to view attachment

Thanks to all developers for this great work.
Slice
QUOTE (quinielascom @ Dec 24 2008, 10:12 PM) *
I test this new release here are results:

1.- Minimum Processor usage (less 10%)
2.- Double speed rate (read/write)
3.- Support SDHC Cards (Still no tested)

I used the Xbench v1.3 Application below some screenshots

Attach the new release with string 0x08221180 already changed.

Click to view attachment

Thanks to all developers for this great work.

Thank you for this! Works fine!
Read ~ 1,65Gb @ 160sec Write 32Mb @ 5 sec.
I think you need to update the topic.
aliasa_anderson
QUOTE (Slice @ Dec 25 2008, 05:15 PM) *
Thank you for this! Works fine!
Read ~ 1,65Gb @ 160sec Write 32Mb @ 5 sec.
I think you need to update the topic.



I dont know why but it doesnt seem to work for me!!!
When i reboot after changing perm/ownerships,deleting the mkext and doing kextcache -k /S/L/E .
I find that the meaasges during verbose scroll slowly,then i get IOKitTimeouts and black screen only,i had to remove the kext.I used the kext with 0x08221180.
Am I missing something ?

unsure.gif
hackinthebox
Im getting almost the same problem... I'm getting these messages:

class "AppleEHCIedMemoryBlock" is duplicate
Duplicate class
kmod_control/start failed for com.orByte.driver.PCGenUSBEHCI; destroying kmod
Failed to load extension com.orByte.driver.PCGenUSBEHCI.
Class "AppleEHCIedMemoryBlock" is duplicate

I can't find a duplicate kext, and everything seems to fail after I load the iosdhciblockdevice kext...
I have to go into -s mode, delete kext, clear extensions cache and then reboot, otherwise
I get a blue screen forever and evers. Can someone help meeee??

I don't know what I'm doing wrong... here is my output from lspci if it helps:

00:00.0 Host bridge [0600]: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub [8086:2a00] (rev 0c)
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller [8086:2a02] (rev 0c)
00:02.1 Display controller [0380]: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller [8086:2a03] (rev 0c)
00:19.0 Ethernet controller [0200]: Intel Corporation 82566MM Gigabit Network Connection [8086:1049] (rev 03)
00:1a.0 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 [8086:2834] (rev 03)
00:1a.1 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 [8086:2835] (rev 03)
00:1a.7 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 [8086:283a] (rev 03)
00:1b.0 Audio device [0403]: Intel Corporation 82801H (ICH8 Family) HD Audio Controller [8086:284b] (rev 03)
00:1c.0 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 [8086:283f] (rev 03)
00:1c.1 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 [8086:2841] (rev 03)
00:1c.2 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 [8086:2843] (rev 03)
00:1c.3 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 [8086:2845] (rev 03)
00:1c.4 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 [8086:2847] (rev 03)
00:1d.0 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 [8086:2830] (rev 03)
00:1d.1 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 [8086:2831] (rev 03)
00:1d.2 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 [8086:2832] (rev 03)
00:1d.7 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 [8086:2836] (rev 03)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev f3)
00:1f.0 ISA bridge [0601]: Intel Corporation 82801HBM (ICH8M-E) LPC Interface Controller [8086:2811] (rev 03)
00:1f.2 IDE interface [0101]: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA IDE Controller [8086:2828] (rev 03)
00:1f.3 SMBus [0c05]: Intel Corporation 82801H (ICH8 Family) SMBus Controller [8086:283e] (rev 03)
03:00.0 Ethernet controller [0200]: Atheros Communications Inc. AR5212 802.11abg NIC [168c:1014] (rev 01)
15:00.0 CardBus bridge [0607]: Ricoh Co Ltd RL5c476 II [1180:0476] (rev ba)
15:00.1 FireWire (IEEE 1394) [0c00]: Ricoh Co Ltd R5C832 IEEE 1394 Controller [1180:0832] (rev 04)
15:00.2 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 21)
15:00.3 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 11)
15:00.4 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 11)
15:00.5 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 11)
gondor69
Hi, tried it with:

07:06.0 CardBus bridge [0607]: Texas Instruments PCIxx12 Cardbus Controller [104c:8039]
07:06.2 Mass storage controller [0180]: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) [104c:803b]
07:06.3 SD Host controller [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller [104c:803c]

No success so far...
Slice
QUOTE (hackinthebox @ Dec 28 2008, 07:16 AM) *
class "AppleEHCIedMemoryBlock" is duplicate
Duplicate class
kmod_control/start failed for com.orByte.driver.PCGenUSBEHCI; destroying kmod
Failed to load extension com.orByte.driver.PCGenUSBEHCI.
Class "AppleEHCIedMemoryBlock" is duplicate

Don't use com.orByte.driver.PCGenUSBEHCI. It is too old! And conflict with AppleUSBEHCI.kext.
Both located in IOUSBFamily/Contents/PlugIns/

QUOTE (gondor69 @ Dec 28 2008, 02:17 PM) *
Hi, tried it with:

07:06.0 CardBus bridge [0607]: Texas Instruments PCIxx12 Cardbus Controller [104c:8039]
07:06.2 Mass storage controller [0180]: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) [104c:803b]
07:06.3 SD Host controller [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller [104c:803c]

No success so far...

This kext is not for Texas, only for Ricoh.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.