设备表¶
PCMCIA 设备与驱动程序的匹配是使用以下一个或多个标准完成的
制造商 ID
卡 ID
产品 ID 字符串 _以及_ 这些字符串的哈希值
功能 ID
设备功能(实际的和伪的)
您应该使用 include/pcmcia/device_id.h 中的辅助函数来生成 struct pcmcia_device_id[] 条目,这些条目将设备与驱动程序匹配。
如果要匹配产品 ID 字符串,还需要将字符串的 crc32 哈希值传递给宏,例如,如果要匹配产品 ID 字符串 1,则需要使用
PCMCIA_DEVICE_PROD_ID1(“some_string”, 0x(some_string 的哈希值)),
如果哈希值不正确,内核将在模块初始化时在 “dmesg” 中通知您,并告诉您正确的哈希值。
您可以通过 cat PCMCIA 设备的 sysfs 目录中的 “modalias” 文件来确定产品 ID 字符串的哈希值。它生成一个如下形式的字符串:pcmcia:m0149cC1ABf06pfn00fn00pa725B842DpbF1EFEE84pc0877B627pd00000000
“pa” 之后的十六进制值是产品 ID 字符串 1 的哈希值,“pb” 之后是字符串 2 的哈希值,依此类推。
或者,您可以使用 crc32hash (参见 tools/pcmcia/crc32hash.c) 来确定 crc32 哈希值。只需将您想要评估的字符串作为参数传递给此程序,例如:$ tools/pcmcia/crc32hash “Dual Speed”