Hi, I recently bought a Connectland PCI RAID ATA 133 controller card, which has a Silicon Image CMD-0680 chipset and uses Silicon Image's "Medley" software in Windows. I am having problems getting Linux to correctly recognise a RAID 0 set attached to this card. It gets the geometry of the physical disks completely wrong. Here's what I've tried: I first connected 2 identical disk to the controller, each one as the primary disk of the card's 2 separate IDE channels. I then used these disks to create RAID 0 set using the card's firmware utility with a 4096 byte stripe size. I picked this stripe size because I mistook bytes for kbytes and thought that having a stripe size equal to the block (and cluster) size would be optimal. I then booted a Windows 98 Second Edition Full CD-ROM and used it to partition the RAID drive, half for windows and half for Linux. This worked fine after I realised that although win98se fdisk doesn't display the right sizes for big disks it will partition them properly if you give it a percentage of space to allocate to a partition instead of a size. I then rebooted, formatted the first partition and then installed win98se on it which worked fine and windows now runs without any (unusual ;-) problems. I then booted Linux from another hard drive connected to my motherboard's controller and compiled and installed a new kernel with added support for my new RAID card (tried kernel versions 2.4.19, 2.4.22 & 2.4.23). When this new kernel starts I get a message saying the card is properly recognised as a CMD-0680. Then the two disks are recognised, but with different geometries and warnings about partition tables on the second disk. why is it even trying to get partition tables on physical disk that are part of a RAID set? Then I get a message saying that the kernel has found a RAID 0 set consisting of 1 disk (obviously this should be 2). Here is the IDE and RAID parts of the dmesg output. This is for kernel 2.4.23 and hde, hdg, ide2 & ide3 are the devices that make up the RAID array: Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx PIIX4: IDE controller at PCI slot 00:07.1 PIIX4: chipset revision 1 PIIX4: not 100% native mode: will probe irqs later ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd:DMA SiI680: IDE controller at PCI slot 00:08.0 SiI680: chipset revision 2 SiI680: not 100% native mode: will probe irqs later SiI680: BASE CLOCK == 133 ide2: MMIO-DMA , BIOS settings: hde:pio, hdf:pio ide3: MMIO-DMA , BIOS settings: hdg:pio, hdh:pio hda: WDC WD200EB-00BHF0, ATA DISK drive blk: queue c031aaa0, I/O limit 4095Mb (mask 0xffffffff) hdd: CREATIVE CD-RW RW2410E, ATAPI CD/DVD-ROM drive hde: ST340014A, ATA DISK drive blk: queue c031b378, I/O limit 4095Mb (mask 0xffffffff) hdg: ST340016A, ATA DISK drive blk: queue c031b7e4, I/O limit 4095Mb (mask 0xffffffff) ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ide1 at 0x170-0x177,0x376 on irq 15 ide2 at 0xc4807080-0xc4807087,0xc480708a on irq 11 ide3 at 0xc48070c0-0xc48070c7,0xc48070ca on irq 11 hda: attached ide-disk driver. hda: host protected area => 1 hda: 39102336 sectors (20020 MB) w/2048KiB Cache, CHS=2434/255/63, UDMA(33) hde: attached ide-disk driver. hde: host protected area => 1 hde: 78165360 sectors (40021 MB) w/2048KiB Cache, CHS=4865/255/63, UDMA(100) hdg: attached ide-disk driver. hdg: host protected area => 1 hdg: 78165360 sectors (40021 MB) w/2048KiB Cache, CHS=77545/16/63, UDMA(100) Partition check: /dev/ide/host0/bus0/target0/lun0:<7>ldm_validate_partition_table(): Found an MS-DOS partition table, not a dynamic disk. p1 p2 < p5 p6 p7 > /dev/ide/host2/bus0/target0/lun0:<7>ldm_validate_partition_table(): Found an MS-DOS partition table, not a dynamic disk. p1 p2 < > /dev/ide/host2/bus1/target0/lun0:<7>ldm_validate_partition_table(): No MS-DOS partition table found. unknown partition table Guestimating sector 39101311 for superblock Guestimating sector 78139904 for superblock Guestimating sector 78164335 for superblock ataraid/d0:<7>ldm_validate_partition_table(): No MS-DOS partition table found. unknown partition table Drive 1 is 38166 Mb (34 / 0) Raid0 array consists of 1 drives. Guestimating sector 39101311 for superblock Guestimating sector 78139904 for superblock driver for Silicon Image(tm) Medley(tm) hardware version 0.0.1 md: raid0 personality registered as nr 2 md: md driver 0.90.0 MAX_MD_DEVS=256, MD_SB_DISKS=27 md: Autodetecting RAID arrays. md: autorun ... md: ... autorun DONE. I then tried many different combinations of CONFIG_BLK_DEV_CMD64X, CONFIG_BLK_DEV_CMD680 and also the ATA RAID, Medley software RAID and software RAID options when compiling the various kernels, but the symptoms didn't change. As per the instructions of the ATA-RAID-HOWTO I passed kernel parameters like ideX=IOPort,IOPort,IRQ using IO Addresses & IRQs which I got from windows device manager. The HOWTO, which only covers the Promise cards in any detail, says that you have to add 2 to the second IO Port number, which didn't work for my CMD-0680 so I also tried it without the added 2, but it still didn't work. I also tried connecting one of the disks to my motherboard's IDE controller and using the BIOS utility to autodetect the drive's geometry (the RAID card's firmware is too stupid to tell you it's idea of the geometry). I then tried passing each of the three sets of C/H/S numbers (LBA, large & normal) as kernel parameters (eg. hde=C,H,S hdg=C,H,S), but none of these worked either. None of the geometries my motherboard reported matched what Linux detected. I also tried hdg=4865,255,63 which is what Linux thinks the first disk is and also the same geometry of the RAID set except that the RAID set has twice as many cylinders, which made sense to me, but again it didn't work. PartionMagic 8.0 Demo under windows says that the geometry of the RAID set is 9730 cylinders, 255 heads & 63 sectors, which strangely enough is exactly what Linux fdisk thinks that the geometry of the RAID set is, even though it added only one disk. Perhaps this means only one of the disks is incorrectly detected by the kernel? I have tried searching several permutations of the card and chipset name and have come up with many requests for help but no solutions that I haven't already tried. The output of the fdisk expert mode print command for both the IDE drives and RAID set follow (the device names are a little different because I'm using devfs): Disk /dev/ataraid/disc0/disc: 255 heads, 63 sectors, 9730 cylinders Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID 1 00 0 0 0 0 0 0 0 0 00 2 00 0 0 0 0 0 0 0 0 00 3 00 0 0 0 0 0 0 0 0 00 4 00 0 0 0 0 0 0 0 0 00 Disk /dev/hde: 255 heads, 63 sectors, 4865 cylinders Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID 1 80 1 1 0 254 63 768 63 78156162 0c 2 00 0 1 769 254 63 513 78156225 78156225 0f 3 00 0 0 0 0 0 0 0 0 00 4 00 0 0 0 0 0 0 0 0 00 5 00 0 0 0 0 0 0 0 0 00 Disk /dev/hdg: 16 heads, 63 sectors, 77545 cylinders Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID 1 00 0 0 0 0 0 0 0 0 00 2 00 0 0 0 0 0 0 0 0 00 3 00 0 0 0 0 0 0 0 0 00 4 00 0 0 0 0 0 0 0 0 00 I apologise for the length of this post but it seemed better to include all relevant detail rather than sending a "My Computer doesn't work, please fix it" type message. Thanks for your time, Cian Moriarty __________________________________ Do you Yahoo!? New Yahoo! Photos - easier uploading and sharing. http://photos.yahoo.com/