>>> + for_each_compatible_node(node, NULL, "ibm,axon-msic") { >>> + if (axon_msi_setup_one(of_node_get(node)) == 0) >>> + found++; >>> + } >>> + of_node_put(node); So where is the of_node_put() done for the of_node_get() inside the loop? Segher