драйвер не находит свойство в дереве устройств во время инициализации linux
Я пытаюсь поднять плату на базе Cortex A9 (Arria V). Во время инициализации драйвер cadence-qspi жалуется, что не может найти свойство соответствующего узла в дереве устройств и не может инициализироваться. Когда я смотрю на представление DT, особенно на /sys/bus/patform/devices/ff705000.qspi/of_node/fifo-depth, я вижу, что оно сохраняет правильное значение. В чем может быть причина такого поведения? ядро 4.14.130-ltsi от linux-socfpga.git Спасибо, Илья
1 ответ
Во время инициализации драйвер cadence-qspi жалуется, что не может найти свойство соответствующего узла в дереве устройств
...
Я вижу, что он сохраняет правильное значение.
Значение свойства не имеет значения, если проблема заключается в том, что драйвер "не может найти свойство".
"Поиск" свойства связан с названием этого свойства, а не с его значением.
В чем может быть причина такого поведения?
Наиболее вероятная причина заключается в том, что имя свойства (которое вы использовали) в дереве устройств не совпадает с требуемым именем свойства (указанным в строке символов) в драйвере ядра.
В файле Documentation/devicetree/bindings/mtd/cadence-quadspi.txt указано, что фактическое имя рассматриваемого свойства:
cdns,fifo-depth
в то время как вы сообщаете, что ваше дерево устройств использует только fifo-depth
(и, очевидно, не является совпадением строки).
Помните, что для этого узла есть другие обязательные и необязательные свойства, которые используютcdns,
префикс, поэтому другие строки в вашем дереве устройств могут нуждаться в исправлении.