Lines Matching refs:bdev
35 bdev_t bdev; member
41 static ssize_t stm32_flash_bdev_read(struct bdev *, void *buf, off_t offset, size_t len);
42 static ssize_t stm32_flash_bdev_read_block(struct bdev *, void *buf, bnum_t block, uint count);
43 static ssize_t stm32_flash_bdev_write(struct bdev *bdev, const void *buf, off_t offset, size_t len);
44 static ssize_t stm32_flash_bdev_write_block(struct bdev *, const void *buf, bnum_t block, uint coun…
45 static ssize_t stm32_flash_bdev_erase(struct bdev *, off_t offset, size_t len);
46 static int stm32_flash_ioctl(struct bdev *, int request, void *argp);
73 bio_initialize_bdev(&flash.bdev, "flash0", in stm32_flash_init()
78 flash.bdev.erase_byte = 0xff; in stm32_flash_init()
81 flash.bdev.read = &stm32_flash_bdev_read; in stm32_flash_init()
82 flash.bdev.read_block = &stm32_flash_bdev_read_block; in stm32_flash_init()
84 flash.bdev.write_block = &stm32_flash_bdev_write_block; in stm32_flash_init()
85 flash.bdev.erase = &stm32_flash_bdev_erase; in stm32_flash_init()
86 flash.bdev.ioctl = &stm32_flash_ioctl; in stm32_flash_init()
88 bio_register_device(&flash.bdev); in stm32_flash_init()
91 static ssize_t stm32_flash_bdev_read(struct bdev *bdev, void *buf, off_t offset, size_t len) { in stm32_flash_bdev_read() argument
92 LTRACEF("dev %p, buf %p, offset 0x%llx, len 0x%zx\n", bdev, buf, offset, len); in stm32_flash_bdev_read()
99 static ssize_t stm32_flash_bdev_read_block(struct bdev *bdev, void *buf, bnum_t block, uint count) { in stm32_flash_bdev_read_block() argument
100 LTRACEF("dev %p, buf %p, block 0x%x, count %u\n", bdev, buf, block, count); in stm32_flash_bdev_read_block()
102 memcpy(buf, (uint8_t *)FLASHAXI_BASE + block * bdev->block_size, count * bdev->block_size); in stm32_flash_bdev_read_block()
104 return count * bdev->block_size; in stm32_flash_bdev_read_block()
107 static ssize_t stm32_flash_bdev_write_block(struct bdev *bdev, const void *buf, bnum_t block, uint … in stm32_flash_bdev_write_block() argument
108 LTRACEF("dev %p, buf %p, block 0x%x, count %u\n", bdev, buf, block, count); in stm32_flash_bdev_write_block()
112 ssize_t written_bytes = count * bdev->block_size; in stm32_flash_bdev_write_block()
115 …if (HAL_FLASH_Program(TYPEPROGRAM_WORD, FLASHAXI_BASE + block * bdev->block_size, *buf32) != HAL_O… in stm32_flash_bdev_write_block()
156 static ssize_t stm32_flash_bdev_erase(struct bdev *bdev, off_t offset, size_t len) { in stm32_flash_bdev_erase() argument
157 LTRACEF("dev %p, offset 0x%llx, len 0x%zx\n", bdev, offset, len); in stm32_flash_bdev_erase()
213 static int stm32_flash_ioctl(struct bdev *bdev, int request, void *argp) { in stm32_flash_ioctl() argument
214 LTRACEF("dev %p, request %d, argp %p\n", bdev, request, argp); in stm32_flash_ioctl()