Lines Matching refs:disk
26 return rt_device_open(&blk->disk->parent, oflag); in blk_dev_open()
33 return rt_device_close(&blk->disk->parent); in blk_dev_close()
44 return rt_device_read(&blk->disk->parent, in blk_dev_read()
59 return rt_device_write(&blk->disk->parent, in blk_dev_write()
70 struct rt_blk_disk *disk = blk->disk; in blk_dev_control() local
78 if (!(err = disk->ops->getgeome(disk, &disk_geometry))) in blk_dev_control()
93 rt_device_control(&disk->parent, cmd, args); in blk_dev_control()
98 if (disk->partitions <= 1) in blk_dev_control()
100 rt_device_control(&disk->parent, cmd, args); in blk_dev_control()
131 if (disk->ops->control) in blk_dev_control()
133 err = disk->ops->control(disk, blk, cmd, args); in blk_dev_control()
176 rt_err_t disk_add_blk_dev(struct rt_blk_disk *disk, struct rt_blk_device *blk) in disk_add_blk_dev() argument
184 if (!disk || !blk) in disk_add_blk_dev()
190 if ((device_id = rt_dm_ida_alloc(disk->ida)) < 0) in disk_add_blk_dev()
196 blk->disk = disk; in disk_add_blk_dev()
199 disk_name = to_disk_name(disk); in disk_add_blk_dev()
213 blk->parent.master_id = disk->ida->master_id; in disk_add_blk_dev()
221 disk->parent.flag & RT_DEVICE_FLAG_RDWR); in disk_add_blk_dev()
226 rt_dm_ida_free(disk->ida, device_id); in disk_add_blk_dev()
231 spin_lock(&disk->lock); in disk_add_blk_dev()
233 rt_list_insert_before(&disk->part_nodes, &blk->list); in disk_add_blk_dev()
235 spin_unlock(&disk->lock); in disk_add_blk_dev()
242 struct rt_blk_disk *disk; in disk_remove_blk_dev() local
249 disk = blk->disk; in disk_remove_blk_dev()
251 if (!disk) in disk_remove_blk_dev()
270 rt_dm_ida_free(disk->ida, blk->parent.device_id); in disk_remove_blk_dev()
277 spin_lock(&disk->lock); in disk_remove_blk_dev()
284 spin_unlock(&disk->lock); in disk_remove_blk_dev()
287 --disk->partitions; in disk_remove_blk_dev()