Compact flash + IDE/CF adaptor + 486 ->problem

Hello.

I'm developping a new system on an industrial PC104 board. It is a Cyrix 486 DX4-100 MHz processor. The board is a Wafer 4821. I installed RedHat 8.0 succesfully and manage everything via serial console and telnet (it has no graphics adaptor).

Now, having everything work fine, my next step is moving all the system to a flash card. I have a big fs, because I need many things, samba, nfs, etc... so it is weighting 350 Mb now . If I use a DiskOnChip module (socket included in the board), I have to spend over $600 for a

1/2 - 1Gb chip.

So I decided to use a cheap Compact Flash card. I bought an IDE-CF adaptor, and I have checked it. In my XP box, it works ok. In my Linux box (not the wafer board) , it works ok passing "hdc=flash" to the kernel.

But in my Wafer board it doesn't recognize the card well. While booting, it says something like:

hda: Western Digital 80Gb..., IDE disk hdb: , Ata disk

There is an empty field before the semicolon, as if it detected something but couln't recognize it.

If I try to "fdisk -l" I receive some errors like "intr- seek error" or something like that, and if I "fdisk /dev/hdb" it says there is no valid partition table, it creates it, I create a partition, save and exit, but entering again, there's nothing there, no table.

I tried to pass "hdb=977,8,32", "hdb=noprobe", "hdb=flash", and some combinations... but no luck.

I'm using the latest 2.4.32 kernel, recompiled with all the supposed necessary options for flash devices, ide drives, etc.

The problem is also found when running on a real PC 486. Different kernels on this 486 give the same result. And different kernels on my P-IV always work well.

I have heard something about CF -> True IDE. Is this a CF or an CF-Adaptor feature? Do I need this?

I would appreciate some help, even obvious. I want to definitively discard the +12v output from the power supply!

Best regards and thanks! Eduardo

Reply to
Edu
Loading thread data ...

You can get a 1G Compact Flash Drive for less than $50.

It would depends on the IDE-CF adapter. Our cheap adapter works fine on a 486, even for a 2G CF.

It is a CF feature enabled by the adapter. Yes, you need it by default.

Reply to
linnix

I know, I was talking about a DOC chip. I know a CF is quite cheaper.

Which is your CF adapter? Maybe I need one of those...

So, I need the feature both in the CF and in the adapter?

Is there any way to modify my CF-IDE adapter to enable True-Ide mode? Some level at some pin...?

Thanks! Eduardo

Reply to
Edu

formatting link

Yes

The ATA mode pin must be grounded to enable it. This is usually not the problem. However, some adapters are wiring other pins incorrectly, which is a pain in the neck to correct. That's why we developed our boards.

Reply to
linnix

I have one by one checked every wire in my CF-IDE adapter, and it seems to comply with the true-ide mode. I used this table as a reference:

formatting link

So I assume that if my adapter is attending to this table directions, and as I am able to use the CF+Adapter on a Pentium IV, I am not having a compatibility mode issue.

How can I make it work on a 486??? I think Linux doesn't obbey to BIOS configuration for disk drives. Anyhow tried with "auto" and with "user

->977/8/32" setting. Nothing changed.

Please, give me some ide to check... My last step in this project is moving all the filesystem to a compact flash, and I have found a big obstacle here..

Thanks! Eduardo

Reply to
Edu

You might have better luck using our Embedded Slackware on a CF. Slackware is an i486 distro. The SDK is available for i486, uclibc_i486, pxa25x and uclibc_pxa25x. The makeCF utility allows you to select components etc. and creates the base bootstrapped CF automatically. You will need the 3 (12MB, 10MB and 13MB) archives:

slakbootEBS-base+i486a slakbootEBS-i486b slakbootEBS-i486c

TonyB

Fall is my favorite season in Los Angeles, watching the birds change color and fall from the trees. David Letterman (1947 - )

-- __ __ _ I N C.

formatting link
/ __|\\// __|| \ __ __ / snipped-for-privacy@sysdev.org \__ \ \/\__ \||)|/ O_)\/ / \/ System Tools / Utilities |___/ || ___/|_ /\___|\_/ WIntel / Linux Device Drivers

Reply to
Hufnus

But can I use this SDK with my RedHat distribution to enable the CF? Does is have a kernel module? How an it help me without having to switch to another distribution?

Best regards! Eduardo

Hufnus ha escrito:

Reply to
Edu

Hello,

I am using a CF2IDE adaptor on a Cyrix 486 SLC/40 based system. But it's no special board, I got it from my aunt's old pc. It works perfectly.

I didn't use it on my main system, but on the 486 I didn't need anything. I am using a 32 Mb CF from my photo camera and I also bought a 64 Mb chip for it. The third (the cameras original 8 Mb Chip) works also very well. I set up the BIOS for "AUTO" and it recognized it without any problems, then I ran fdisk on the chip (booting via loadlin on the very same system - 2.2 kernel + busybox) and filled in the settings into the system.

I ran also DOS for a while, but it couldn't satisfy me.

You could try to put the CF adaptor as hda. Is it jumpered correctly?

Are you sure the CF works flawlessly in a camera or a card reader? Did you try another (maybe smaller) CF?

You shouldn't have to use a append line.

The same version worked for me also. Right now I am running a 2.6 but it takes too much memory (I've got only 8 Mb). You should - if not needed otherwise - only include the IDE support. CF2IDE makes the system think it is using a true (spinning) IDE disk, not as a flash chip. Maybe you just have to kick out some things.

Strange.

I don't know anything about it; I just put my in and bootet. And it worked... The system and so on were put on the CF by using a simple (internal) usb card reader.

I found out that with only one CF inserted (I've got also a dual adaptor with both hda and hdb as CF disks) I don't need any power supply for it. The TTL levels are enough to power the CF :-)

Hope this helps, Sebastian

Reply to
Sebastian

You're lucky !! :-)

The are two jumpers. First selects master/slave. It works. Second, I was told that was for select the source of power, between +5v and +12v, both from a floppy connector. As I have both 5 and 12 applied to the floppy conector to the CF-IDE adapter, tried to change the jumper and nothing happened. Anyhow, I cannot configure it as a master, because it has no operating system yet, so when trying to boot from it, it will fail and I won't be able to check if Linux sees it.

Yes, I have checked both the adapter and the 128 Mb CF in my Pentium IV and it works great.

Yes, I also tried a 8 and 32 Mb CF in the adapter. Both work OK in my Pentium but neven on my 486's

I compiled with IDE and aaaaaaaaaall the modules which might have any relation with memories, flash, mtd, rom.... everything...!

I hope I can reach that stage sometime...! :-)

Thanks! Edu

Reply to
Edu

Bueno, you could. But, you would have to replace the structured component directories, which contain the burn files, with RH versions, where applicable. Particularly you would have to change the contents of slaketcs/i486 with Redhat's boot (init.d) components. The bootstrap is also set to use lilo, which might be a problem...

TonyB (Hufnus)

Fall is my favorite season in Los Angeles, watching the birds change color and fall from the trees. David Letterman (1947 - )

-- __ __ _ I N C.

formatting link
/ __|\\// __|| \ __ __ / snipped-for-privacy@sysdev.org \__ \ \/\__ \||)|/ O_)\/ / \/ System Tools / Utilities |___/ || ___/|_ /\___|\_/ WIntel / Linux Device Drivers

Reply to
Hufnus

But i'm not sure this is what I need.. Does it have any specifil kernel module? I don't need any particular application to manage the flash, this is not a problem yes. My problem is that my kernel does not see the compact flash. At the moment I can see it, I will dump the FS to it and go on...

Regards. Eduardo.

Hufnus ha escrito:

Reply to
Edu

Hello again,

no

I don't think so, because I am really tight on memory (normal 30pin-SIMMs 1 Mb each ... 8x1 = 8 and more isn't possible. I never saw any simms with more than 1 Mb and I doubt it would be recognized.)

My adaptor has only one jumper (the single CF one). I would try to jumper it as master and boot the kernel from a floppy disk (simple zimage will do), if that's possible with your board. Otherwise you could fill the CF with a operating system using DOS or Syslinux. Then you could directly boot from it and maybe you'd see the error. My adaptor doesn't work as good if I jumper it as slave. Sometimes it doesn't recognize the card, but I would have to check again to be sure. I don't need it - I don't try it :-)

If you tried other CFs in your adaptor...

... then the CF will also be alright.

CF2IDE

Maybe - I doubt it, but worth a try - all the modules disturb each other. You could try to create a kernel as small as possible. No module support, no flash support, nothing except floppy and IDE hard disk support.

The

My other problem is linux, as I can't get it to work as I want to. My only requirements are: => kernel, busybox, nfs server => serial console (now I have a graphics adaptor which I want to remove)

But I can't get it to work... no idea how shared libs and so on work. Nothing worked yet. Only static builds and simply copying the host libs (thank god they're

386-compiled *g*)

Hope this helps, Sebastian

Reply to
Sebastian

My "server" i486/33 has 4*4 + 4+1 = 20 MB of 30pin-SIMMs. It's 11 years 365*24h on line ;)

Reply to
pisz_na.mirek

Does your kernel has support for USB devices? If you can access usb devices, you should be able to map a CF mounted on a USB card reader with the loop device..

There is a program at my web site (see way below for URL) called burnit. You can use it to create or extract a filesystem from a CF, but if you run 'burnit -l', it will just query for the first USB card reader mounted, that it can find. It might also display some messages, to show what is missing in your system ...

TonyB

Fall is my favorite season in Los Angeles, watching the birds change color and fall from the trees. David Letterman (1947 - )

-- __ __ _ I N C.

formatting link
/ __|\\// __|| \ __ __ / snipped-for-privacy@sysdev.org \__ \ \/\__ \||)|/ O_)\/ / \/ System Tools / Utilities |___/ || ___/|_ /\___|\_/ WIntel / Linux Device Drivers

Reply to
Hufnus

Hello again,

[...]
30pin-SIMMs 1

more

Nice, then. I never found such memory, unfortunately. So I'm stuck.

Regards, Sebastian

Reply to
Sebastian

It is not a kernel issue. The kernel I compiled for the 486, booted in my pentium IV, is able to see the CF correctly. My CF adapter is via IDE port, not USB port.

If my kernel lacked some module, it would not work on my Pentium IV...

Regards! Eduardo

Hufnus ha escrito:

Reply to
Edu

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.