Я пытался понять код драйвера кодека на Ядро Linux 4.4. Кодек подключается к звуковой карте с использованием шины i2c, а код драйвера кодека записывается как клиент I2C. Клиент struct i2c_driver содержит как i2c_device_id информация и of_device_id информация.Что такое struct i2c_device_id, если мы уже используем struct of_device_id?
Теперь в соответствии с функцией зондовой моего понимания клиента будет вызываться, когда совместимая строки структуры of_device_id матчей с совместимой строки информации узла устройства. Тогда в чем польза struct i2c_device_id?
ПРИМЕЧАНИЕ: Драйвер кодека использует дерево устройств.
Возможный дубликат [использования драйвера \ _data члена таблицы идентификаторов устройств I2C] (http://stackoverflow.com/questions/24606448/usage-of-driver-data-member-of-i2c-device-id- Таблица) –