Lixin Yao wrote: > I redefined io functions in libata-sff.c, byte operations are converted > to 16bit word operations. Maybe I should ask for HW changes in new > revisions of the board. >
I do recommend that. We got it wrong on our first board too. :-) It is much better to get the hardware right than to carry your endian SW patch forever. Two other potential issues: 1) making sure the "most significant byte enable" is used, so that byte writes work correctly. You most likely have this correct already, or you would not have gotten this far. And 2) make sure you allow for the hold time / turn-off time of the CF. We use a 440EPx, and cannot set up the external bus controller to generate valid cycles in all cases. So, we added some flip-flops to stretch the rising edge of the chip select, which guarantees proper timing. (I'm going a bit far afield from the purpose of this mailing list, so if you want more details, please contact me directly.) Steve _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev