On 04/06/10 15:13, Carl-Daniel Hailfinger wrote:
Oh, it looks really nice. In fact, we could commit this instantly except for two reasons:
- It's untested, and completely untested drivers should default to no
in the Makefile. Once we have the first successful test, we can change it to yes. 2. The INB/OUTB for data contradicts the datasheet (I know, the datasheet might very well be wrong), so a comment would be appreciated in those places, e.g. "The datasheet says this register can only be accessed with full 32 bit width, but that would make 8 bit writes impossible. Due to that, we assume the meaning was garbled in translation."
Hm. It is entirely possible that the datasheet means the register access mode is 32 bit. The contents of the data register might only care about the lowest 8 bits. That would also mean your driver could work...
Change those two things, and you get an ack from me and I'll commit.
Regards, Carl-Daniel
Thanks for looking at the previous patch! New patch attached... This is now for DP83815/DP83816 (same PCI ID) and DP83820 (same flash access). I disabled compilation by default, and added the comment in both places. I was hoping that now I have had a chance to solder a boot ROM socket to the card I could test the code and make it work. I have done some tests and it looks like this is very close, in fact it may well be that this code works but my soldering is no good! I've been getting some good data read & written, and some random data appearing. Probing seems to work fine. Erasing seems to work too, but read and/or write sometimes get random data. I believe a dry solder joint would explain this behavior.
Signed-off-by: Andrew Morganziltro@ziltro.com