阅读:2414回复:8
请问各位大虾,pcmcia网卡的COR寄存器如何读写?
愁阿愁,不知道pcmcia网卡的COR寄存器如何读写,在这里停止了许久,不知那位大虾可以指点一二?
|
|
沙发#
发布于:2001-07-02 11:53
读这个寄存器的方法有点怪,怪在这个寄存器的址并不是固定的,当然通用的网卡我想地址应该是固定的,否则就通用不起来的。
但如果做自己的网卡,地址在CTPL_XXX(1a?),自己定义的,哪个来着,记不清了,你自己看一下协议吧!!上面写着呢! 如果,你知道更好的方法也跟我说说! |
|
板凳#
发布于:2001-07-02 17:11
我们开发的是小端口的网卡驱动,已经从卡的CIS中查到COR的基地址是
0x000003E0h,应该用什么函数来修改这个寄存器的值? 谢谢! |
|
地板#
发布于:2001-07-03 11:01
你们两个人是一家的吧?
如果,地址是别的,我觉得应该用 write_port_uChar,write_register_uchar,(名称记不清楚了,你自己查DDK文挡) 至于地址是0X3E0,0X3E1我也糊涂了,这本来是对应于CARD SERIVCE里面的地址,数据端口,怎么又拿出来了呢?糊涂!!! |
|
地下室#
发布于:2001-07-03 19:54
非常感谢jeosph! :)
我们能查到的地址就是这个0x3E0,它说是base address,这个地址不对吗?到底怎样才能对COR寄存器进行正确的寻址和访问,还望多多指点,急! :( |
|
5楼#
发布于:2001-07-04 11:31
我奇怪的是,0x3e0 你是怎么得来的,是分析CIS数据的结果吗?
在我的印象中(但不一定是对的,供你参考): 0X3E0,0X3E1是提供给CARD SERVICE用的地址端口,如果你自己编写BIOS里的CARD SERVICE 你就可以用,如果不是就,我觉得最好不要去用,至于用了错不错,我不知道。 我说过,COR地址在什么地方,你是要看协议的,你必须想办法把所有的CIS数据读出来,然后按照协议去分析,自然就可以得到这个地址,然后用函数读(read_port_uchar)写(write_port_uchar)端口就可以了。 |
|
6楼#
发布于:2001-07-05 17:30
谢谢大虾,但我确实是把cis全部读了出来,然后分析了tpl_code之后的得到这个地址,没错确实是0x000003e0,愁死了,能再指点一下吗?因为将cis的bit0置1可以对我们的卡进行重启,bit7置1可以将卡置于i/o状态!!
|
|
7楼#
发布于:2001-07-05 18:33
那就用我说的函数试一试!!
|
|
8楼#
发布于:2001-07-31 09:21
我已经往里写了东西
可是不管读和写 该端口的值都是0xff 也就是说无法修改 我 就不明白到底怎么回事了 请各位大虾指点 |
|