| /kernel/linux/linux-5.10/drivers/mtd/ubi/ |
| D | kapi.c | 109 * checksum of each logical eraseblock will be checked. 361 * @lnum: logical eraseblock number to read from 362 * @offset: offset within the logical eraseblock to read from 398 * @lnum: logical eraseblock number to read from 400 * @offset: offset within the logical eraseblock to read from 404 * This function reads data from offset @offset of logical eraseblock @lnum and 407 * eraseblock will be read and its CRC checksum will be checked (i.e., the CRC 408 * checksum is per-eraseblock). So checking may substantially slow down the 452 * @lnum: logical eraseblock number to read from 454 * @offset: offset within the logical eraseblock to read from [all …]
|
| D | ubi-media.h | 79 * eraseblock handling, and then re-sizes the volume, not vice-versa. This 136 * physical eraseblock. These values have to be the same for all physical 165 * @copy_flag: if this logical eraseblock was copied from another physical 166 * eraseblock (for wear-leveling reasons) 170 * @lnum: logical eraseblock number 172 * @data_size: how many bytes of data this logical eraseblock contains 174 * @data_pad: how many bytes at the end of this physical eraseblock are not 176 * @data_crc: CRC checksum of the data stored in this logical eraseblock 185 * eraseblock to a new physical eraseblock. The global sequence counter is an 190 * There are 2 situations when there may be more than one physical eraseblock [all …]
|
| D | eba.c | 9 * The UBI Eraseblock Association (EBA) sub-system. 11 * This sub-system is responsible for I/O to/from logical eraseblock. 17 * The EBA sub-system implements per-logical eraseblock locking. Before 18 * accessing a logical eraseblock it is locked for reading or writing. The 19 * per-logical eraseblock locking is implemented by means of the lock tree. The 25 * time a logical eraseblock is mapped to a physical eraseblock and it is 41 * @pnum: the physical eraseblock number attached to the LEB 100 * @lnum: logical eraseblock number 205 * @lnum: logical eraseblock number 208 * object if the logical eraseblock is locked and %NULL if it is not. [all …]
|
| D | io.c | 20 * Some words about how the eraseblock headers are stored. 92 * ubi_io_read - read data from a physical eraseblock. 95 * @pnum: physical eraseblock number to read from 96 * @offset: offset within the physical eraseblock from where to read 99 * This function reads data from offset @offset of physical eraseblock @pnum 106 * that this eraseblock may become bad soon (but do not have to); 206 * ubi_io_write - write data to a physical eraseblock. 209 * @pnum: physical eraseblock number to write to 210 * @offset: offset within the physical eraseblock where to write 214 * of physical eraseblock @pnum. If all the data were successfully written, [all …]
|
| D | wl.c | 19 * header. The rest of the physical eraseblock contains only %0xFF bytes. 30 * If the WL sub-system fails to erase a physical eraseblock, it marks it as 34 * in a physical eraseblock, it has to be moved. Technically this is the same 38 * "free" or "used". Free eraseblock are kept in the @wl->free RB-tree, while 42 * When the WL sub-system returns a physical eraseblock, the physical 43 * eraseblock is protected from being moved for some "time". For this reason, 44 * the physical eraseblock is not directly moved from the @wl->free tree to the 46 * physical eraseblock is temporarily stored (@wl->pq). 52 * o there is a chance that the user will put the physical eraseblock very 59 * head of the queue on each erase operation (for any eraseblock). So the [all …]
|
| D | ubi.h | 172 * @pnum: physical eraseblock number 174 * This data structure is used in the WL sub-system. Each physical eraseblock 190 * @vol_id: volume ID of the locked logical eraseblock 191 * @lnum: locked logical eraseblock number 192 * @users: how many tasks are using this logical eraseblock or wait for it 194 * the (@vol_id, @lnum) logical eraseblock 197 * locking. When a logical eraseblock is being locked - corresponding 268 * struct ubi_eba_leb_desc - EBA logical eraseblock descriptor 269 * @lnum: the logical eraseblock number 270 * @pnum: the physical eraseblock where the LEB can be found [all …]
|
| D | attach.c | 26 * eraseblocks are put to the @free list and the physical eraseblock to be 170 * @pnum: physical eraseblock number 171 * @ec: erase counter of the physical eraseblock 209 * add_to_list - add physical eraseblock to a list. 211 * @pnum: physical eraseblock number to add 214 * @ec: erase counter of the physical eraseblock 219 * eraseblock @pnum and adds it to the "free", "erase", or "alien" lists. 258 * add_corrupted - add a corrupted physical eraseblock. 260 * @pnum: physical eraseblock number to add 261 * @ec: erase counter of the physical eraseblock [all …]
|
| /kernel/linux/linux-6.6/drivers/mtd/ubi/ |
| D | kapi.c | 110 * checksum of each logical eraseblock will be checked. 362 * @lnum: logical eraseblock number to read from 363 * @offset: offset within the logical eraseblock to read from 399 * @lnum: logical eraseblock number to read from 401 * @offset: offset within the logical eraseblock to read from 405 * This function reads data from offset @offset of logical eraseblock @lnum and 408 * eraseblock will be read and its CRC checksum will be checked (i.e., the CRC 409 * checksum is per-eraseblock). So checking may substantially slow down the 453 * @lnum: logical eraseblock number to read from 455 * @offset: offset within the logical eraseblock to read from [all …]
|
| D | ubi-media.h | 79 * eraseblock handling, and then re-sizes the volume, not vice-versa. This 136 * physical eraseblock. These values have to be the same for all physical 165 * @copy_flag: if this logical eraseblock was copied from another physical 166 * eraseblock (for wear-leveling reasons) 170 * @lnum: logical eraseblock number 172 * @data_size: how many bytes of data this logical eraseblock contains 174 * @data_pad: how many bytes at the end of this physical eraseblock are not 176 * @data_crc: CRC checksum of the data stored in this logical eraseblock 185 * eraseblock to a new physical eraseblock. The global sequence counter is an 190 * There are 2 situations when there may be more than one physical eraseblock [all …]
|
| D | eba.c | 9 * The UBI Eraseblock Association (EBA) sub-system. 11 * This sub-system is responsible for I/O to/from logical eraseblock. 17 * The EBA sub-system implements per-logical eraseblock locking. Before 18 * accessing a logical eraseblock it is locked for reading or writing. The 19 * per-logical eraseblock locking is implemented by means of the lock tree. The 25 * time a logical eraseblock is mapped to a physical eraseblock and it is 41 * @pnum: the physical eraseblock number attached to the LEB 100 * @lnum: logical eraseblock number 204 * @lnum: logical eraseblock number 207 * object if the logical eraseblock is locked and %NULL if it is not. [all …]
|
| D | io.c | 20 * Some words about how the eraseblock headers are stored. 92 * ubi_io_read - read data from a physical eraseblock. 95 * @pnum: physical eraseblock number to read from 96 * @offset: offset within the physical eraseblock from where to read 99 * This function reads data from offset @offset of physical eraseblock @pnum 106 * that this eraseblock may become bad soon (but do not have to); 206 * ubi_io_write - write data to a physical eraseblock. 209 * @pnum: physical eraseblock number to write to 210 * @offset: offset within the physical eraseblock where to write 214 * of physical eraseblock @pnum. If all the data were successfully written, [all …]
|
| D | wl.c | 19 * header. The rest of the physical eraseblock contains only %0xFF bytes. 30 * If the WL sub-system fails to erase a physical eraseblock, it marks it as 34 * in a physical eraseblock, it has to be moved. Technically this is the same 38 * "free" or "used". Free eraseblock are kept in the @wl->free RB-tree, while 42 * When the WL sub-system returns a physical eraseblock, the physical 43 * eraseblock is protected from being moved for some "time". For this reason, 44 * the physical eraseblock is not directly moved from the @wl->free tree to the 46 * physical eraseblock is temporarily stored (@wl->pq). 52 * o there is a chance that the user will put the physical eraseblock very 59 * head of the queue on each erase operation (for any eraseblock). So the [all …]
|
| D | ubi.h | 172 * @pnum: physical eraseblock number 174 * This data structure is used in the WL sub-system. Each physical eraseblock 190 * @vol_id: volume ID of the locked logical eraseblock 191 * @lnum: locked logical eraseblock number 192 * @users: how many tasks are using this logical eraseblock or wait for it 194 * the (@vol_id, @lnum) logical eraseblock 197 * locking. When a logical eraseblock is being locked - corresponding 268 * struct ubi_eba_leb_desc - EBA logical eraseblock descriptor 269 * @lnum: the logical eraseblock number 270 * @pnum: the physical eraseblock where the LEB can be found [all …]
|
| D | attach.c | 26 * eraseblocks are put to the @free list and the physical eraseblock to be 170 * @pnum: physical eraseblock number 171 * @ec: erase counter of the physical eraseblock 209 * add_to_list - add physical eraseblock to a list. 211 * @pnum: physical eraseblock number to add 214 * @ec: erase counter of the physical eraseblock 219 * eraseblock @pnum and adds it to the "free", "erase", or "alien" lists. 258 * add_corrupted - add a corrupted physical eraseblock. 260 * @pnum: physical eraseblock number to add 261 * @ec: erase counter of the physical eraseblock [all …]
|
| /kernel/linux/linux-5.10/include/uapi/mtd/ |
| D | ubi-user.h | 86 * Logical eraseblock erase 89 * To erase a logical eraseblock, the %UBI_IOCEBER ioctl command of the 91 * unmaps the requested logical eraseblock, makes sure the corresponding 92 * physical eraseblock is successfully erased, and returns. 94 * Atomic logical eraseblock change 97 * Atomic logical eraseblock change operation is called using the %UBI_IOCEBCH 103 * Logical eraseblock map 106 * To map a logical eraseblock to a physical eraseblock, the %UBI_IOCEBMAP 108 * expected to be passed. The ioctl maps the requested logical eraseblock to 109 * a physical eraseblock and returns. Only non-mapped logical eraseblocks can [all …]
|
| /kernel/linux/linux-6.6/include/uapi/mtd/ |
| D | ubi-user.h | 86 * Logical eraseblock erase 89 * To erase a logical eraseblock, the %UBI_IOCEBER ioctl command of the 91 * unmaps the requested logical eraseblock, makes sure the corresponding 92 * physical eraseblock is successfully erased, and returns. 94 * Atomic logical eraseblock change 97 * Atomic logical eraseblock change operation is called using the %UBI_IOCEBCH 103 * Logical eraseblock map 106 * To map a logical eraseblock to a physical eraseblock, the %UBI_IOCEBMAP 108 * expected to be passed. The ioctl maps the requested logical eraseblock to 109 * a physical eraseblock and returns. Only non-mapped logical eraseblocks can [all …]
|
| /kernel/linux/linux-5.10/Documentation/ABI/stable/ |
| D | sysfs-class-ubi | 38 Amount of available logical eraseblock. For example, one may 70 Maximum logical eraseblock size this UBI device may provide. UBI 71 volumes may have smaller logical eraseblock size because of their 79 Maximum physical eraseblock erase counter value. 148 Volume alignment - the value the logical eraseblock size of 150 logical eraseblock size is multiple of 2048. In other words, 151 volume logical eraseblock size is UBI device logical eraseblock 191 Count of physical eraseblock reserved for this volume. 219 Logical eraseblock size of this volume. Equivalent to logical 220 eraseblock size of the device aligned on the volume alignment
|
| /kernel/linux/linux-6.6/Documentation/ABI/stable/ |
| D | sysfs-class-ubi | 38 Amount of available logical eraseblock. For example, one may 70 Maximum logical eraseblock size this UBI device may provide. UBI 71 volumes may have smaller logical eraseblock size because of their 79 Maximum physical eraseblock erase counter value. 148 Volume alignment - the value the logical eraseblock size of 150 logical eraseblock size is multiple of 2048. In other words, 151 volume logical eraseblock size is UBI device logical eraseblock 191 Count of physical eraseblock reserved for this volume. 219 Logical eraseblock size of this volume. Equivalent to logical 220 eraseblock size of the device aligned on the volume alignment
|
| /kernel/linux/linux-5.10/include/linux/mtd/ |
| D | nand.h | 22 * @pages_per_eraseblock: number of pages per eraseblock 58 * @eraseblock_addr_shift: position of the eraseblock identifier in the row 71 * @eraseblock: the eraseblock within the LUN 81 unsigned int eraseblock; member 403 * nanddev_pages_per_eraseblock() - Get the number of pages per eraseblock 406 * Return: the number of pages per eraseblock. 432 * Return: the eraseblock size. 637 pos->eraseblock = do_div(tmp, nand->memorg.eraseblocks_per_lun); in nanddev_offs_to_pos() 638 pos->plane = pos->eraseblock % nand->memorg.planes_per_lun; in nanddev_offs_to_pos() 663 if (a->eraseblock != b->eraseblock) in nanddev_pos_cmp() [all …]
|
| D | ubi.h | 81 * many eraseblock this data occupies. In case of dynamic volumes, the 85 * In general, logical eraseblock size is a property of the UBI device, not 86 * of the UBI volume. Indeed, the logical eraseblock size depends on the 87 * physical eraseblock size and on how much bytes UBI headers consume. But 91 * where LEB size is the logical eraseblock size defined by the UBI device. 97 * volume logical eraseblock sizes. 147 * @leb_size: logical eraseblock size on this UBI device 156 * Note, @leb_size is the logical eraseblock size offered by the UBI device. 157 * Volumes of this UBI device may have smaller logical eraseblock size if their
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/mtd/partitions/ |
| D | redboot-fis.txt | 7 It uses one single flash eraseblock in the flash to store an index of 15 - fis-index-block : (required) a index to the eraseblock containing 17 eraseblocks, 0 means the first eraseblock at 0x00000000, 1 means the 18 second eraseblock at 0x00008000 and so on.
|
| /kernel/linux/linux-6.6/include/linux/mtd/ |
| D | nand.h | 22 * @pages_per_eraseblock: number of pages per eraseblock 58 * @eraseblock_addr_shift: position of the eraseblock identifier in the row 71 * @eraseblock: the eraseblock within the LUN 81 unsigned int eraseblock; member 501 * nanddev_pages_per_eraseblock() - Get the number of pages per eraseblock 504 * Return: the number of pages per eraseblock. 530 * Return: the eraseblock size. 755 pos->eraseblock = do_div(tmp, nand->memorg.eraseblocks_per_lun); in nanddev_offs_to_pos() 756 pos->plane = pos->eraseblock % nand->memorg.planes_per_lun; in nanddev_offs_to_pos() 781 if (a->eraseblock != b->eraseblock) in nanddev_pos_cmp() [all …]
|
| D | ubi.h | 81 * many eraseblock this data occupies. In case of dynamic volumes, the 85 * In general, logical eraseblock size is a property of the UBI device, not 86 * of the UBI volume. Indeed, the logical eraseblock size depends on the 87 * physical eraseblock size and on how much bytes UBI headers consume. But 91 * where LEB size is the logical eraseblock size defined by the UBI device. 97 * volume logical eraseblock sizes. 148 * @leb_size: logical eraseblock size on this UBI device 157 * Note, @leb_size is the logical eraseblock size offered by the UBI device. 158 * Volumes of this UBI device may have smaller logical eraseblock size if their
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/mtd/partitions/ |
| D | redboot-fis.yaml | 11 It uses one single flash eraseblock in the flash to store an index of 27 description: a index to the eraseblock containing the FIS directory on this 29 eraseblock at 0x00000000, 1 means the second eraseblock at 0x00008000 and so on.
|
| /kernel/linux/linux-6.6/drivers/mtd/tests/ |
| D | speedtest.c | 212 pr_info("MTD device size %llu, eraseblock size %u, " in mtd_speedtest_init() 214 "eraseblock %u, OOB size %u\n", in mtd_speedtest_init() 243 /* Write all eraseblocks, 1 eraseblock at a time */ in mtd_speedtest_init() 244 pr_info("testing eraseblock write speed\n"); in mtd_speedtest_init() 259 pr_info("eraseblock write speed is %ld KiB/s\n", speed); in mtd_speedtest_init() 261 /* Read all eraseblocks, 1 eraseblock at a time */ in mtd_speedtest_init() 262 pr_info("testing eraseblock read speed\n"); in mtd_speedtest_init() 277 pr_info("eraseblock read speed is %ld KiB/s\n", speed); in mtd_speedtest_init()
|