Lines Matching refs:cur
168 struct bsr_dev *cur, *n; in bsr_cleanup_devs() local
170 list_for_each_entry_safe(cur, n, &bsr_devs, bsr_list) { in bsr_cleanup_devs()
171 if (cur->bsr_device) { in bsr_cleanup_devs()
172 cdev_del(&cur->bsr_cdev); in bsr_cleanup_devs()
173 device_del(cur->bsr_device); in bsr_cleanup_devs()
175 list_del(&cur->bsr_list); in bsr_cleanup_devs()
176 kfree(cur); in bsr_cleanup_devs()
200 struct bsr_dev *cur = kzalloc(sizeof(struct bsr_dev), in bsr_add_node() local
205 if (!cur) { in bsr_add_node()
214 kfree(cur); in bsr_add_node()
218 cur->bsr_minor = i + total_bsr_devs; in bsr_add_node()
219 cur->bsr_addr = res.start; in bsr_add_node()
220 cur->bsr_len = resource_size(&res); in bsr_add_node()
221 cur->bsr_bytes = bsr_bytes[i]; in bsr_add_node()
222 cur->bsr_stride = bsr_stride[i]; in bsr_add_node()
223 cur->bsr_dev = MKDEV(bsr_major, i + total_bsr_devs); in bsr_add_node()
227 if (cur->bsr_len > 4096 && cur->bsr_len < PAGE_SIZE) in bsr_add_node()
228 cur->bsr_len = 4096; in bsr_add_node()
230 switch(cur->bsr_bytes) { in bsr_add_node()
232 cur->bsr_type = BSR_8; in bsr_add_node()
235 cur->bsr_type = BSR_16; in bsr_add_node()
238 cur->bsr_type = BSR_64; in bsr_add_node()
241 cur->bsr_type = BSR_128; in bsr_add_node()
244 cur->bsr_type = BSR_4096; in bsr_add_node()
247 cur->bsr_type = BSR_UNKNOWN; in bsr_add_node()
250 cur->bsr_num = bsr_types[cur->bsr_type]; in bsr_add_node()
251 snprintf(cur->bsr_name, 32, "bsr%d_%d", in bsr_add_node()
252 cur->bsr_bytes, cur->bsr_num); in bsr_add_node()
254 cdev_init(&cur->bsr_cdev, &bsr_fops); in bsr_add_node()
255 result = cdev_add(&cur->bsr_cdev, cur->bsr_dev, 1); in bsr_add_node()
257 kfree(cur); in bsr_add_node()
261 cur->bsr_device = device_create(bsr_class, NULL, cur->bsr_dev, in bsr_add_node()
262 cur, "%s", cur->bsr_name); in bsr_add_node()
263 if (IS_ERR(cur->bsr_device)) { in bsr_add_node()
265 cur->bsr_name); in bsr_add_node()
266 cdev_del(&cur->bsr_cdev); in bsr_add_node()
267 kfree(cur); in bsr_add_node()
271 bsr_types[cur->bsr_type] = cur->bsr_num + 1; in bsr_add_node()
272 list_add_tail(&cur->bsr_list, &bsr_devs); in bsr_add_node()