Subject: ndfc ecc byte order

From: Sean MacLennan <[email-masked]>
Date: Wed, 30 Jan 2008 14:52:28 -0500

There seems to be a byte order conflict between the u-boot and Linux 
ndfc drivers.

u-boot has the following:

    /* The NDFC uses Smart Media (SMC) bytes order*/
    ecc_code[0] = p[2];
    ecc_code[1] = p[1];
    ecc_code[2] = p[3];

the kernel has:

    ecc_code[0] = p[1];
    ecc_code[1] = p[2];
    ecc_code[2] = p[3];

I think u-boot has it right since u-boot and kernel software calculated 
ECCs agree. Anybody know a reason *not* to switch to the SMC byte order?

Note that the kernel version will work if you are reading/writing from 
the kernel since they agree on the wrong ECC :p

Cheers,
   Sean