Lines Matching refs:stm_heartbeat
24 static struct stm_heartbeat { struct
28 } stm_heartbeat[STM_HEARTBEAT_MAX]; argument
34 struct stm_heartbeat *heartbeat = container_of(hr, struct stm_heartbeat, in stm_heartbeat_hrtimer_handler()
46 struct stm_heartbeat *heartbeat = in stm_heartbeat_link()
47 container_of(data, struct stm_heartbeat, data); in stm_heartbeat_link()
58 struct stm_heartbeat *heartbeat = in stm_heartbeat_unlink()
59 container_of(data, struct stm_heartbeat, data); in stm_heartbeat_unlink()
73 stm_heartbeat[i].data.name = in stm_heartbeat_init()
75 if (!stm_heartbeat[i].data.name) { in stm_heartbeat_init()
80 stm_heartbeat[i].data.nr_chans = 1; in stm_heartbeat_init()
81 stm_heartbeat[i].data.type = STM_USER; in stm_heartbeat_init()
82 stm_heartbeat[i].data.link = stm_heartbeat_link; in stm_heartbeat_init()
83 stm_heartbeat[i].data.unlink = stm_heartbeat_unlink; in stm_heartbeat_init()
84 hrtimer_init(&stm_heartbeat[i].hrtimer, CLOCK_MONOTONIC, in stm_heartbeat_init()
86 stm_heartbeat[i].hrtimer.function = in stm_heartbeat_init()
89 ret = stm_source_register_device(NULL, &stm_heartbeat[i].data); in stm_heartbeat_init()
98 stm_source_unregister_device(&stm_heartbeat[i].data); in stm_heartbeat_init()
100 kfree(stm_heartbeat[i].data.name); in stm_heartbeat_init()
111 stm_source_unregister_device(&stm_heartbeat[i].data); in stm_heartbeat_exit()
112 kfree(stm_heartbeat[i].data.name); in stm_heartbeat_exit()