CF Card for the / (root) filesystem.

This board posts about running linux on your webdt366
Post Reply
evilbob
Newbie
Newbie
Posts: 7
Joined: Wed Oct 14, 2009 12:01 pm

CF Card for the / (root) filesystem.

Post by evilbob »

Ok working on this still I have a 4gb CF card in the CF card slot and 64 Mb of space total on the internal Flash Hdd in a DT360.

This is the theory I will install a full version of Ubuntu (I know it will be slow) with the /boot partition on the internal flash and the root partition on the CF card.

The install works just fine and everything is put where it needs to go on boot up I get the Ubuntu splash screen but then it gives me an error that the root fs cannot be found. So my Initrd image doesn't have the kernel modules needed to activate the CF card slot.

Does anyone know what modules are needed for the CF card slot?
I'm trying to narrow it down using lsmod off the Ubuntu live cd because the cf card works there. once I find this out the DT360 should be able to boot of the internal drive and use the Root fs on the CF card making it a nice complete internal package.

Thanks
quotaholic
Administrator
Administrator
Posts: 569
Joined: Tue Mar 24, 2009 9:11 pm

Re: CF Card for the / (root) filesystem.

Post by quotaholic »

Hey evilbob,

I am toying with slackware on a 360 and as I watch the os init I see a few modules load that may pertain to the pcmcia bus.

pcmcia
pcmcia_core
pcmcia_socket
yenta
yenta_cardbus

Looks like CSCINIT takes the interupts and routes them to PCI.

Dont know if this helps or not.

quotaholic
cadgear
Newbie
Newbie
Posts: 3
Joined: Fri Jul 10, 2009 2:02 am

Re: CF Card for the / (root) filesystem.

Post by cadgear »

A bit old, but wondering if anyone managed to solve this mystery?

Currently I use a CF card for my /home folder, but I'd love to get the entire root fs offloaded to it with the Puppy image Matt posted up (installing now).

Follow up, and this is even longer of a shot, but has anyone had success with the Seagate ST1.2 microdrives? I know they're not supposed to work in CF devices, using some form of communication which most CF readers lack (can't remember if it's an IDE-only protocol or what, been a number of years), but having used them in external readers, I'd love to get one in the DT366 and have the / filesystem live there instead of internal flash. Save on the flash chip life cycle, hopefully.

Poked around a bit in DSL's kernel, but I'm a little confused when it comes to the kernel modules and such.
quotaholic
Administrator
Administrator
Posts: 569
Joined: Tue Mar 24, 2009 9:11 pm

Re: CF Card for the / (root) filesystem.

Post by quotaholic »

We once had a technician who worked on DT's posting here. Life cycle may not be as much of a concern as you think. I installed over 100 times on my first chip and it is still going today.

That being said I stopped by IEC today. Innovative Electronics Solutions. They make custom cables for many industries. They told me if I drop off the hardware they would take the time to try to figure out the cable needed and put a upc code to it making a standard product in their inventory. The problem is this would replace the flash chip and force one to mod the case or remove the CF card to put a drive in place of. I will ask them about the ST1.2 when I drop off a DT366 sometime next week.
evilbob
Newbie
Newbie
Posts: 7
Joined: Wed Oct 14, 2009 12:01 pm

Re: CF Card for the / (root) filesystem.

Post by evilbob »

Solved! 8)

This is not for the feint of heart!

Ok took me a long time but the theory was right. I have a full version of Kubuntu running on my DT360. The Initrd file doesn't have the necessary modules to recognize the hardware in the DT360. So you need to add the following modules to your Initrd.

etc/pcmcia
etc/pcmcia/config.opts
etc/default/pcmciautils
etc/init.d
etc/init.d/pcmciautils
bin/hotplug-pcmcia
sbin/lspcmcia
sbin/pccardctl
lib/udev/pcmcia-socket-startup
lib/udev/rules.d/85-pcmcia.rules
lib/udev/pcmcia-check-broken-cis
lib/libsysfs.so.2.0.1
lib/modules/2.6.31-16-generic/kernel/drivers/pcmcia/yenta_socket.ko
lib/modules/2.6.31-16-generic/kernel/drivers/pcmcia/rsrc_nonstatic.ko
lib/libsysfs.so.2

Basically the CF Card slot is part of the PCMCIA socket not the IDE.

Basic concept is this:
boot from the internal flash HDD which is mounted as /boot and contains grub and the initrd file. Grub looks for the / "root" partition on the CF card. The system boots. Be sure to look at your /boot/grub/menu.lst and make sure the UUID is correct for your CF card.

I have a DD image of my internal 35mb hdd I will make available when I find somewhere to put it online. I'll also share my Initrd file. Please note that any kernel updates will blow away the modified initrd file with a stock one and your system will not boot.

Good Luck.
quotaholic
Administrator
Administrator
Posts: 569
Joined: Tue Mar 24, 2009 9:11 pm

Re: CF Card for the / (root) filesystem.

Post by quotaholic »

Rock on evilbob, that is amazingly great news!!!

Thank you for your contribution. I would be happy to host these files. I will pm you a login to my server when I get home tonight.

quotaholic
volkswagner
Administrator
Administrator
Posts: 144
Joined: Sat Mar 28, 2009 2:27 am
Location: NewYork's 1st Capitol
Contact:

Re: CF Card for the / (root) filesystem.

Post by volkswagner »

evilbob, can you please post your steps to modify init or initrd?

I have attempted a couple how to's.

I am not sure where to insert into the extracted init, or if I should create a new file in the modules directory then recreate the initrd.gz.

I was attempting it on 8.04, which has initrd.img.

EDIT:  I have found an excellent how-to.  Thanks evilbob for the comprehensive list.
Last edited by volkswagner on Wed Feb 24, 2010 6:38 pm, edited 1 time in total.
Nothing is ever easy, but if it is difficult you must be doing it wrong.
My Wife's invention Doll Carrier
Post Reply