设备表¶
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(hash_of_some_string)),
如果哈希值不正确,内核将在模块初始化时通过 “dmesg” 告知您,并告诉您正确的哈希值。
您可以通过在 PCMCIA 设备的 sysfs 目录中 cat “modalias” 文件来确定产品 ID 字符串的哈希值。它会生成以下形式的字符串: pcmcia:m0149cC1ABf06pfn00fn00pa725B842DpbF1EFEE84pc0877B627pd00000000
“pa” 后面的十六进制值是产品 ID 字符串 1 的哈希值,“pb” 后面的值是字符串 2 的哈希值,依此类推。
或者,您可以使用 crc32hash(参见 tools/pcmcia/crc32hash.c)来确定 crc32 哈希值。只需将您要评估的字符串作为参数传递给该程序,例如:$ tools/pcmcia/crc32hash “Dual Speed”