Lines Matching refs:sam_rstline
35 struct sam_rstline { struct
38 SLIST_ENTRY(sam_rstline) link; argument
41 static SLIST_HEAD(, sam_rstline) sam_rst_list =
44 static struct sam_rstline *to_sam_rstline(struct rstctrl *ptr) in to_sam_rstline()
48 return container_of(ptr, struct sam_rstline, rstctrl); in to_sam_rstline()
51 static struct sam_rstline *find_rstline(unsigned int reset_id) in find_rstline()
53 struct sam_rstline *sam_rstline = NULL; in find_rstline() local
55 SLIST_FOREACH(sam_rstline, &sam_rst_list, link) in find_rstline()
56 if (sam_rstline->reset_id == reset_id) in find_rstline()
59 return sam_rstline; in find_rstline()
63 sam_rstline *find_or_allocate_rstline(unsigned int reset_id, in find_or_allocate_rstline()
66 struct sam_rstline *sam_rstline = find_rstline(reset_id); in find_or_allocate_rstline() local
68 if (sam_rstline) in find_or_allocate_rstline()
69 return sam_rstline; in find_or_allocate_rstline()
71 sam_rstline = calloc(1, sizeof(*sam_rstline)); in find_or_allocate_rstline()
72 if (sam_rstline) { in find_or_allocate_rstline()
73 sam_rstline->reset_id = reset_id; in find_or_allocate_rstline()
74 sam_rstline->rstctrl.ops = pdata->ops; in find_or_allocate_rstline()
76 SLIST_INSERT_HEAD(&sam_rst_list, sam_rstline, link); in find_or_allocate_rstline()
79 return sam_rstline; in find_or_allocate_rstline()
85 struct sam_rstline *sam_rstline = NULL; in sam_rstctrl_dt_get() local
90 sam_rstline = find_or_allocate_rstline(args->args[0], data); in sam_rstctrl_dt_get()
91 if (!sam_rstline) in sam_rstctrl_dt_get()
94 *out_rstctrl = &sam_rstline->rstctrl; in sam_rstctrl_dt_get()
135 struct sam_rstline *rstline = NULL; in sam_get_rstctrl()