On 11/02/2014 18:10, Thomas Petazzoni wrote: > Dear Jason Cooper, > > On Tue, 11 Feb 2014 11:53:14 -0500, Jason Cooper wrote: > >>> - np = of_find_matching_node(NULL, of_system_controller_table); >>> + np = of_find_matching_node_and_match(NULL, of_system_controller_table, >>> + &match); >>> if (np) { >>> - const struct of_device_id *match = >>> - of_match_node(of_system_controller_table, np); >> >> >>> - BUG_ON(!match); >> >> Gregory, is it ok to remove this? It was added with the original code >> submission for mach-mvebu. mvebu_restart() will handle this >> gracefully... > > The BUG_ON here can normally never be reached. If > of_find_matching_node() returns a non-NULL result, then of_match_node() > should also return a non-NULL result. > > Or I'm missing something :) No you're almost right! The only case we can get it, would be if we were declaring something like: static struct of_device_id of_system_controller_table[] = { { .compatible = "foo,bar-controller", }, [...] instead of static struct of_device_id of_system_controller_table[] = { { .compatible = "foo,bar", .data = (void *) &bar_controller, }, [...] This test is very paranoid, so I agree to remove it. Acked-by: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx> Thanks, Gregory > > Thomas > -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html