L'Xtreme

Are we there yet?

SysKonnect/Marvell ethernet board issues

As I told yesterday, I've got a new toy to play with, a Shuttle SN95G5. Unfortunately, there's a small problem with its onboard ethernet controller, as it keeps shouting something about unable to read the VPD keys.

I dug deeper into this problem today, and found out that its source lies in the checksum of this VPD area. During the initialisation of this area, the VpdInit routine calculates the checksum (by means of a simple AND-function) of the used data locations. The checksum should result in 0, however, on my FN95-board it returns 187 instead, causing the driver to (partially) fail.

However, if I make the checksum error non-fatal, the driver loads just fine, stops shouting about the VPD error and no other errors show up (as far as I can see and tell). I've made a small patch (against the 2.6.9 kernel) that enables this workaround for the FN95 board. You need to apply this patch directly in the /PATH_TO_KERNEL_SRC/drivers/net/sk98lin directory.

Note that this patch is non-official and does not fix the problem, it simply works around it. I do not guarantee it will work, nor that it does not break your hardware/software. If you apply this patch, please notify me of the results, as I am interested in whether this is a FN95 related bug or not!