PCMCIA driver for the m8xx series!
Magnus Damm
damm at kieraypc01.p.y.ki.era.ericsson.se
Wed Feb 16 01:36:37 EST 2000
Hello all,
I've written a PCMCIA socket driver for the m8xx family.
The driver is written to support one or two sockets, but when
compiled for two sockets the resources are limited.
See modules/m8xx_pcmcia.c for more info.
You also need to modify your kernel and I don't have a patch
for it. I will tell you more below.
I hope you find it useful, feedback is welcome!
Cheers /
Magnus
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
The driver needs the pcmcia-cs package written by David Hinds.
More information about the pcmcia-cs package can be found at:
http://pcmcia.sourceforge.org/
This patch should be applied to pcmcia-cs-3.1.10:
ftp://sourceforge.org/pcmcia/pcmcia-cs-3.1.10.tar.gz
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
The following hardware is supported:
Board Cpu Slot Status
RPX CLLF 860DT B OK
RPX LITE 823 B OK
RPX LITE 850 B OK
ADS 860 A OK
ADS 821 A untested
FADS860T 860T A OK
FADSxxx ? A or B untested
Some boards with the BMT (Bus monitor timer) enabled might
get in trouble with PCMCIA cards that are too slow.
The solution is to disable the BMT in SYPCR.
Please double-check with your manual that my board-specific
code that controls the power to the PCMCIA cards is correct.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Supported and tested PCMCIA cards:
ATA-Flash: CompactFlash cards from SanDisk, Mitsubishi and Viking.
[ide_cs.o] PCMCIA card from Feiya.
Modems: V.34 CreditCard modem from Ericsson.
[serial_cs.o] The modem part of a Xircom RealPort REM56G-100 works
only on boards with BMT disabled.
Ethernet: Xircom CE2-10.
[xirc2ps_cs.o] Xircom RealPort REM56G-100 works without BMT.
Non-supported and tested PCMCIA cards:
Ethernet: 3Com Megahertz 3CCFEM556B Ethernet/Modem.
[3c574_cs.o] I tried but I only get 0xff from it..
Non-tested PCMCIA cards:
The rest: Please tell me if you have any success!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Kernel modification:
This is not included in the patch!
1. First of all you need to ioremap 64KByte at _IO_BASE.
This is for the emulated ISA-bus.
VIRT must be PHYS and I don't know how to do that
from a module.
2. All bus operations that are 16 bit or more should be
big endian - no swapping. This is the same as APUS in io.h.
We need to figure out how this should co-exist with
the swapped ISA.
3. My driver needs a bd_t * called mpc8xx_bdinfo to figure.
out the busfrequency.
A standard with the frequencyvalues in HZ would be good.
4. Kernel drivers that are used by pcmcia-cs.
I havn't had any success with module-based ide code.
But when I compile-in the ide code I need to pass
"ide0=noprobe ide1=noprobe ide2=noprobe ide3=noprobe"
to be able to boot. You also might have to play a bit
with the ide code in m8xx_setup.c
I've added an option to serial.c to avoid
probing when the module is inserted.
5. The pcmcia code ioremaps/iounmaps quite much.
It would be nice with a working iounmap!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch-m8xx-pcmcia-cs-3.1.10.diff.gz
Type: application/x-gzip
Size: 14261 bytes
Desc: not available
Url : http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20000215/d5cd3749/attachment.bin
More information about the Linuxppc-embedded
mailing list