Looking for a driver for Compact Flash access

Hi, I'm have an embedded system using Compact Flash device. I'm trying to figure out what is the right driver to access the CF.

The HW configuration is as following: The CF is connected directly to MPC8541 CPU (PowerQUICC III, Freescale), via local bus. It is connected in Memory Mode, with 8-bit interface.

The questions I have:

  1. What is the appropriate driver? Since memory mode is PCMCIA- compatible PC Card ATA, I assume it is ide-cs. Is it right?

  1. The card doesn't issue interrupts in this mode. I got the impression the IDE driver relies on interrupts. Does it make it unusable for accessing a CF in Memory Mode?

Most grateful for your help, Michael

Reply to
Mic
Loading thread data ...

As the CF uses a standard IDE interface, the IDE driver for the hardware in question should work.

-Michael

Reply to
Michael Schnell

Is this your own design or did you purchase this board from somewhere ??

What Operating system are you using ?

A little more info about the design of this board would be nice.

donald

Reply to
Donald

Hi.

  1. This is my our own design. Do you think connecting the CF in other mode (IO/IDE) will make things consederably easier? Even so, is it doable also in memory-mode connection?

  1. Sorry - I should've mentioned it. It is Linux (2.6.14).

Reply to
Mic

The problems I have using an IDE driver are:

  1. Looks like the IDE driver relys on interrupt-driven IO, and the CF does not issue any interrupts when connected in memory mode.
  2. I'm not sure which one to choose: ide-cs (but then, I don't have IDE-controller), ide-ata? I guess some adaptation will be necessary in any case, right now I don't know what it is and what is the closest driver to what I need.

Thanks, Michael.

Reply to
Mic

Ah, I see that you have a non-standard hardware with no existing IDE driver.

I would try to modify the IDE driver (from PPC or ARM if you use a memory mapped hardware).

Of course, if your hardware does not use interrupts, the performance of the driver will not be very good, as you will need to use polling instead. But modifying the driver by using a Kernel timer, polling the original interrupting pin of the IDE interface, instead of an interrupt should not introduce a too massive change.

-Michael

Reply to
Michael Schnell

Yes, looks like this is the general direction... I'm still trying to find my way there. What do you mean by an IDE driver from PPC?

register the specific read/write etc. functions with it. Can you please help me with narrowing-down the search for the potential modules to change (i.e. some "vanila" ide module I can use as a basis), or some good reference on how to add an IDE device?

Thanks, Michael

Reply to
Mic

formatting link

regards

Wolfgang

Reply to
Wolfgang Mües

Thanks

Reply to
Mic

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.