Blackfin PCMCIA Driver PCMCIA is named after the Personal Computer Memory Card International Association. http://www.pcmcia.org/ This driver as well as the cf-ide-nand only implements 16-bit PCMCIA. 32-bit CardBus is not supported. Board Configuration Connect the CF/IDE (Integrated Drive Electronics (hard drives!))/NAND (Not AND (large flash memory type)) daughter board to the U connector on the back of BF537-stamp Turn off PIN (Personal Identification Number) 3 and 4 of SW6 Turn off All PINs of SW5 Kernel Configuration Driver Options In the kernel configuration menu, turn on these options: Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> <*> PCCard (PCMCIA/CardBus) support ---> --- PCCard (PCMCIA/CardBus) support [ ] Enable PCCARD debugging <*> 16-bit PCMCIA support [*] Load CIS updates from userspace (EXPERIMENTAL) [*] PCMCIA control ioctl (obsolete) --- PC-card bridges <*> Blackfin CompactFlash PCMCIA Driver EBIU Configuration You should then tweak your External Bus Interface Unit (EBIU (External Bus Interface Unit)) timings: Blackfin Processor Options ---> EBIU_AMBCTL Control ---> (0x7BB0) Bank 0 (0x7BB0) Bank 1 (0xFFC3) Bank 2 (0xFFC3) Bank 3 Enable maximum wait states (0xFFC3) for the memory bank the interface is connected to (/AMS3). Adjusting System Clock Speed This part is optional. Tweak according to your needs. Depending on the inserted cards, System ClockSCLK (System Clock)must not exceed maximum timing requirements. User Space PCMCIA Utilities Please see the pcmciautils page for details. Driver Examples CompactFlash IDE Cards Config During kernel configuration enable following options Device Drivers ---> SCSI device support ---> <*> SCSI disk support <*> Serial ATA (prod) and Parallel ATA (experimental) drivers ---> --- Serial ATA (prod) and Parallel ATA (experimental) drivers <*> PCMCIA PATA support Insert and mount root:/>modprobe pata_pcmciapccard: PCMCIA card inserted into slot 0 pcmcia: registering new device pcmcia0.0 scsi0 : pata_pcmcia ata1: PATA max PIO0 cmd 0x20310000 ctl 0x2031000e irq 54 ata1.00: CFA: SanDisk SDCFH2-002G, HDX 4.32, max PIO4 ata1.00: 4001760 sectors, multi 0: LBA ata1.00: Drive reports diagnostics failure. This may indicate a drive ata1.00: fault or invalid emulation. Contact drive vendor for information. ata1.00: configured for PIO0 ata1.00: configured for PIO0 ata1: EH complete scsi 0:0:0:0: Direct-Access ATA SanDisk SDCFH2-0 HDX PQ: 0 ANSI: 5 sd 0:0:0:0: [sda] 4001760 512-byte hardware sectors (2049 MB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: [sda] 4001760 512-byte hardware sectors (2049 MB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sda: sda1 sd 0:0:0:0: [sda] Attached SCSI removable diskroot:/>mount /dev/sda1 /mnt/root:/>ls /mnt/busybox dcim nikon001.dsc test 802.11 CompactFlash Cards Config During kernel configuration enable following options [*] Wireless LAN drivers (non-hamradio) & Wireless Extensions --- Obsolete Wireless cards support (pre-802.11) < > STRIP (Metricom starmode radio IP) < > AT&T/Lucent old WaveLAN Pcmcia wireless support < > Xircom Netwave AirSurfer Pcmcia wireless support --- Wireless 802.11 Frequency Hopping cards support < > Aviator/Raytheon 2.4MHz wireless support --- Wireless 802.11b ISA/PCI cards support Hermes chipset 802.11b support (Orinoco/Prism2/Symbol) < > Atmel at76c50x chipset 802.11b support --- Wireless 802.11b Pcmcia/Cardbus cards support Hermes PCMCIA card support < > Symbol Spectrum24 Trilogy PCMCIA card support < > Blackfin WLAN card support < > Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards < > Planet WL3501 PCMCIA cards < > IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP) Load the Module root:~> modprobe orinoco_cs Using /lib/modules//2.6.16.11-ADI-2006R1blackfin/kernel/drivers/net/wireless/hermes.ko Using /lib/modules//2.6.16.11-ADI-2006R1blackfin/kernel/drivers/net/wireless/orinoco.ko Using /lib/modules//2.6.16.11-ADI-2006R1blackfin/kernel/drivers/net/wireless/orinoco_cs.ko root:~> Your dmesg should contain following lines : root:~> dmesg pccard: PCMCIA card inserted into slot 0 pcmcia: registering new device pcmcia0.0 orinoco 0.15rc3 (David Gibsonhermes@gibson.dropbear.id.au, Pavel Roskinproski@gnu.org, et al) orinoco_cs 0.15rc3 (David Gibsonhermes@gibson.dropbear.id.au, Pavel Roskinproski@gnu.org, et al) eth1: Hardware identity 801b:0000:0001:0000 eth1: Station identity 001f:0002:0001:0004 eth1: Firmware determined as Intersil 1.4.2 eth1: Ad-hoc demo mode supported eth1: IEEE standard IBSS ad-hoc mode supported eth1: WEP supported, 104-bit key eth1:MAC (Media Access Control (network interface))address 00:0F:66:10:C7:11 eth1: Station name“Prism I” eth1: ready eth1: index 0x01: Vcc 3.3, irq 34, io 0x20310000-0x2031003f root:~>