Lines Matching refs:cn
1243 struct clk_notifier *cn; in __clk_notify() local
1250 list_for_each_entry(cn, &clk_notifier_list, node) { in __clk_notify()
1251 if (cn->clk->core == clk) { in __clk_notify()
1252 cnd.clk = cn->clk; in __clk_notify()
1253 ret = srcu_notifier_call_chain(&cn->notifier_head, msg, in __clk_notify()
2797 struct clk_notifier *cn; in clk_notifier_register() local
2806 list_for_each_entry(cn, &clk_notifier_list, node) in clk_notifier_register()
2807 if (cn->clk == clk) in clk_notifier_register()
2811 if (cn->clk != clk) { in clk_notifier_register()
2812 cn = kzalloc(sizeof(struct clk_notifier), GFP_KERNEL); in clk_notifier_register()
2813 if (!cn) in clk_notifier_register()
2816 cn->clk = clk; in clk_notifier_register()
2817 srcu_init_notifier_head(&cn->notifier_head); in clk_notifier_register()
2819 list_add(&cn->node, &clk_notifier_list); in clk_notifier_register()
2822 ret = srcu_notifier_chain_register(&cn->notifier_head, nb); in clk_notifier_register()
2846 struct clk_notifier *cn = NULL; in clk_notifier_unregister() local
2854 list_for_each_entry(cn, &clk_notifier_list, node) in clk_notifier_unregister()
2855 if (cn->clk == clk) in clk_notifier_unregister()
2858 if (cn->clk == clk) { in clk_notifier_unregister()
2859 ret = srcu_notifier_chain_unregister(&cn->notifier_head, nb); in clk_notifier_unregister()
2864 if (!cn->notifier_head.head) { in clk_notifier_unregister()
2865 srcu_cleanup_notifier_head(&cn->notifier_head); in clk_notifier_unregister()
2866 list_del(&cn->node); in clk_notifier_unregister()
2867 kfree(cn); in clk_notifier_unregister()