Мне нужно будет получить указатель на конкретное устройство, зарегистрированное в Linux. Вкратце, это устройство представляет объект mii_bus
. Проблема в том, что это устройство, похоже, не относится к шине (его dev->bus
- NULL
), поэтому я не могу использовать, например, функцию bus_for_each_dev
. Однако устройство зарегистрировано на уровне Open Firmware, и я могу видеть относительный of_device
(который является родителем интересующего меня устройства) в /sys/bus/of_platform
. Мое устройство также зарегистрировано в class
, поэтому я могу найти его в /sys/class/mdio_bus
. Теперь вопросы:Каков более чистый способ получить указатель на устройство struct в Linux?
Это можно получить указатель, используя указатель на
of_device
, который является предком устройства мы хотим?Как я могу получить указатель на уже созданный класс, используя только имя? Если бы это было возможно, я мог бы перебирать устройства этого класса.
Любой другой совет был бы очень полезен! Спасибо вам всем.
Помните, что device_find_child() увеличивает опорный счетчик найденного дочернего устройства. Итак, когда вы закончили использовать дочернее устройство, вы ** должны ** сделать put_device(); – Federico