When I built my desktop rig in 2010, I got an OCZ RevoDrive SSD, which is a PCI bus device (not SATA). But when I tried to install the OS, I learned my Asus P6X58D-E motherboard's BIOS cannot see a bootable device on the PCI bus. (A known issue if I had done the research first). So the installer could not install grub and the boot files there.
However, the RevoDrive is seen by fdisk and any OS as a hard drive. The problem is only with the BIOS.
To do the initial installation, I grabbed an old 40GB hdd and installed /boot on that, and the rest of the OS on the RevoDrive 120GB SSD. That got my system booting and running.
Then, I bought a cheap 16GB Kingston SATA SSD, made a small partition for /boot, and made the rest of it swap. I formatted the small partition ext2.
root@imerabox:/# hdparm -i /dev/sdc
/dev/sdc:
Model=KINGSTON SS100S216G, FwRev=D100719a, SerialNo=16GAA0002142
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=31277232
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=yes: unknown setting WriteCache=enabled
Drive conforms to: Unspecified: ATA/ATAPI-4,5,6,7
* signifies the current active mode
Disk /dev/sdc: 16.0 GB, 16013942784 bytes
32 heads, 32 sectors/track, 30544 cylinders, total 31277232 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0006cd49
Device Boot Start End Blocks Id System
/dev/sdc1 * 1024 1047551 523264 83 Linux
/dev/sdc2 1047552 31277055 15114752 82 Linux swap / Solaris
I copied everything in /boot to the first partition on the Kingston SSD, reinstalled grub to the SSD, made the mount line in /etc/fstab, removed the hdd, and it has been running fine ever since.