[Balloon] Single-bit error when reading from CF memory card

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Paul Fidler
Date:  
To: balloon
Subject: [Balloon] Single-bit error when reading from CF memory card
I've just upragded from 2.425-vrs2-tcl1 to the 2.6.8.1-tcl1 kernel to see
if it would help with my CompactFlash card woes.

When booted with a 512MB memory card in the CF slot, the ide_cs driver now
gets a lot further than it ever did before, and the scripts in
/etc/pcmcia even get as for as trying to mount it for me - trying various
fs types in turn:

hda: SajDisk SDCFH-112, ATA DISK drive
ide0 at 0xc4800000-0xc4800007,0xc480000e on irq 42
ide-cs: hda: Vcc = 5.0, Vpp = 0.0
hda: max request size: 128KiB
hda: 1000944 sectors (512 MB) w/1KiB Cache, CHS=993/16/63
hda: task_no_data_intr: status=0x51 { DriveReady SeekComplete Error }
hda: task_no_data_intr: error=0x00 { }
/dev/ide/host0/bus0/target0/lun0: p1
/dev/ide/host0/bus0/target0/lun0: p1
FAT: invalid first entry of FAT (0xfff8 != 0xfbf8)
VFS: Can't find a valid FAT filesystem on dev hda1.
/dev/ide/host0/bus0/target0/lun0: p1
FAT: invalid first entry of FAT (0xfff8 != 0xfbf8)
VFS: Can't find a valid FAT filesystem on dev hda1.
/dev/ide/host0/bus0/target0/lun0: p1
VFS: Can't find ext3 filesystem on dev hda1.
/dev/ide/host0/bus0/target0/lun0: p1
VFS: Can't find ext2 filesystem on dev hda1.
/dev/ide/host0/bus0/target0/lun0: p1
cramfs: wrong magic
/dev/ide/host0/bus0/target0/lun0: p1

I am most concerned about the first line:

hda: SajDisk SDCFH-112, ATA DISK drive

which I think should actually say:

hda: SanDisk SDCFH-512, ATA DISK drive

The 'n' and the '5' appear as 'j' and '1' respectively, which I suspect is
due to a single bit error:

  'n' = 0x6e = 01101110
  'j' = 0x6a = 01101010
                    ^
  '5' = 0x35 = 00110101
  '1' = 0x31 = 00110001
                    ^


However it's clearly not affecting every byte as (for example) 'D' is
unaffected:

  'D' = 0x44 = 01000100
                    ^
although it has the problem bit set.


The problem is repeatable, and I presume it is the reason that none of the
attempts to mount filesystems worked:

FAT: invalid first entry of FAT (0xfff8 != 0xfbf8)

0xfff8 = 11111111 11111000
0xfbf8 = 11111011 11111000
              ^


Have I got a dodgy connection somewhere on my board?



Paul Fidler
--
Cambridge University Engineering Department | Tel: +44 1223 332816
Trumpington Street, Cambridge, CB2 1PZ, UK | Fax: +44 1223 332662