设备表

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”