В моем мире У меня нет devicetree , но у меня есть сторонний модуль ядра для некоторой части HW, которая опирается на дерево устройств.
Это функция обнаружения стороннего модуля:
static int foo_probe(struct platform_device *pdev)
{
...
struct foo_device *foo;
struct device_node *np = pdev->dev.of_node;
...
if (np) {
const struct of_device_id *match;
match = of_match_node(foo_of_ids, np);
if (match && match->data) {
foo->data = match->data;
}
}
....
}
Я знаю, как реализовать «драйвер-заглушку», который регистрирует платформенное устройство так, чтобы мой модуль стороннего производителя проходил проверку. И у меня есть еще одно требование, этот драйвер-заглушка должен быть собран из дерева ядра.
Но я не знаю, как правильно настроить «struct device_node * np» для моего платформенного устройства, чтобы Имитировать несуществующее дерево (of_ root в моей системе NULL). Любая помощь приветствуется!