————————————————————————
上述错误如下处理:
1) 把#include
2) netdevice.h 中struct net_device结构体又添上了:void *priv;
3) 把#include
把823行屏蔽掉。
4)对于错误:drivers/net/arm/cs8900.c:96: error: unknown field `init' specified in initializer
这个错误不知道怎么解决,我是把那行屏蔽掉了,同时把它改为在cs8900_init()函数中进行初始化。
按上述处理后,启动时会出现错误:操作了空指针,这是由于cs8900.c中静态定义了cs8900_dev但没有分配私有成员空间的缘故。
因此,改用alloc_etherdev()函数分配cs8900_dev就可以了。
具体的可以对比本人移植前后的的cs8900.c的源代码。