Changeset 33c3b54d in rtems for cpukit/libblock
- Timestamp:
- 11/29/09 11:57:23 (14 years ago)
- Branches:
- 4.10, 4.11, 5, master
- Children:
- 0893220
- Parents:
- 309dbd0
- Location:
- cpukit/libblock/include/rtems
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
cpukit/libblock/include/rtems/bdbuf.h
r309dbd0 r33c3b54d 6 6 * Block device buffer management. 7 7 */ 8 8 9 9 /* 10 10 * Copyright (C) 2001 OKTET Ltd., St.-Petersburg, Russia … … 77 77 * The buffers are held in various lists in the cache. All buffers follow this 78 78 * state machine: 79 * 79 * 80 80 * @dot 81 81 * digraph state { … … 89 89 * m [label="MODIFIED",style="filled",fillcolor="gold"]; 90 90 * i [label="INITIAL"]; 91 * 91 * 92 92 * legend_transfer [label="Transfer Wake-Up",fontcolor="red",shape="none"]; 93 93 * legend_access [label="Access Wake-Up",fontcolor="royalblue",shape="none"]; 94 * 94 * 95 95 * i -> e [label="Init"]; 96 96 * e -> f [label="Buffer Recycle"]; … … 112 112 * } 113 113 * @enddot 114 * 114 * 115 115 * Empty or cached buffers are added to the LRU list and removed from this 116 116 * queue when a caller requests a buffer. This is referred to as getting a … … 120 120 * from the disk into memory. If no buffers are on the LRU list the modified 121 121 * list is checked. If buffers are on the modified the swap out task will be 122 * woken. The request blocks until a buffer is available for recycle. 122 * woken. The request blocks until a buffer is available for recycle. 123 123 * 124 124 * A block being accessed is given to the file system layer and not accessible … … 405 405 * already with a user when this call is made the call is blocked until the 406 406 * buffer is returned. The highest priority waiter will obtain the buffer 407 * first. 407 * first. 408 408 * 409 409 * @param device Device number (constructed of major and minor device number) -
cpukit/libblock/include/rtems/blkdev.h
r309dbd0 r33c3b54d 6 6 * Block device management. 7 7 */ 8 8 9 9 /* 10 10 * Copyright (C) 2001 OKTET Ltd., St.-Petersburg, Russia … … 31 31 * 32 32 * Interface between device drivers and the 33 * @ref rtems_bdbuf "block device buffer module". 33 * @ref rtems_bdbuf "block device buffer module". 34 34 * 35 35 * The heart of the block device driver is the @ref RTEMS_BLKIO_REQUEST IO … … 50 50 } rtems_blkdev_request_op; 51 51 52 /** 52 /** 53 53 * Only consecutive multi-sector buffer requests are supported. 54 54 * … … 126 126 * Last IO operation completion status. 127 127 */ 128 rtems_status_code status; 128 rtems_status_code status; 129 129 130 130 /** -
cpukit/libblock/include/rtems/diskdevs.h
r309dbd0 r33c3b54d 6 6 * @brief Block device disk management API. 7 7 */ 8 8 9 9 /* 10 10 * Copyright (C) 2001 OKTET Ltd., St.-Petersburg, Russia … … 38 38 * contain a subset of consecutive disk blocks. The logical disks are used to 39 39 * represent the partitions of a disk. The disk devices are accessed via the 40 * @ref rtems_bdbuf "block device buffer module". 40 * @ref rtems_bdbuf "block device buffer module". 41 41 * 42 42 * @{ -
cpukit/libblock/include/rtems/flashdisk.h
r309dbd0 r33c3b54d 51 51 52 52 /** 53 * Flash Disk Monitoring Data allows a user to obtain 53 * Flash Disk Monitoring Data allows a user to obtain 54 54 * the current status of the disk. 55 55 */ … … 121 121 * being requested. For example the segment number must resided in 122 122 * the range [base, base + count). 123 * 123 * 124 124 * @param sd The segment descriptor. 125 125 * @param device The device to read data from. … … 146 146 * the segment being requested. For example the segment number must 147 147 * resided in the range [base, base + count). 148 * 148 * 149 149 * @param sd The segment descriptor. 150 150 * @param device The device to write data from. … … 171 171 * being requested. For example the segment number must resided in 172 172 * the range [base, base + count). 173 * 173 * 174 174 * @param sd The segment descriptor. 175 175 * @param device The device to read data from. … … 194 194 * the device segment being requested. For example the segment number 195 195 * must resided in the range [base, base + count). 196 * 196 * 197 197 * @param sd The segment descriptor. 198 198 * @param device The device to verify data in. … … 217 217 * segments. The segment number is the device segment to access and 218 218 * the segment descriptor must reference the segment being requested. 219 * 219 * 220 220 * @param sd The segment descriptor. 221 221 * @param device The device to erase the segment of. … … 234 234 * segments. The segment number is the segment to access and 235 235 * the segment descriptor must reference the segment being requested. 236 * 236 * 237 237 * @param sd The segment descriptor. 238 238 * @param device The device to erase. … … 284 284 * when writing. If you set this to 0 then compaction will fail because 285 285 * there will be no segments to compact into. 286 * 286 * 287 287 * The info level can be 0 for off with error, and abort messages allowed. 288 288 * Level 1 is warning messages, level 1 is informational messages, and level 3 … … 301 301 uint32_t unavail_blocks; /**< Number of blocks not 302 302 available to the file sys. */ 303 uint32_t compact_segs; /**< Max number of segs to 303 uint32_t compact_segs; /**< Max number of segs to 304 304 compact in one pass. */ 305 305 uint32_t avail_compact_segs; /**< The number of segments -
cpukit/libblock/include/rtems/nvdisk-sram.h
r309dbd0 r33c3b54d 10 10 * NV Disk Static RAM Device Driver. 11 11 * 12 * This driver maps an NV disk to static RAM. You can use this 12 * This driver maps an NV disk to static RAM. You can use this 13 13 */ 14 14 -
cpukit/libblock/include/rtems/nvdisk.h
r309dbd0 r33c3b54d 59 59 60 60 /** 61 * NV Disk Monitoring Data allows a user to obtain 61 * NV Disk Monitoring Data allows a user to obtain 62 62 * the current status of the disk. 63 63 */ … … 90 90 * Read data from the device into the buffer. Return an errno 91 91 * error number if the data cannot be read. 92 * 92 * 93 93 * @param device The device to read data from. 94 94 * @param flags Device specific flags for the driver. … … 100 100 * @retval EIO The read did not complete. 101 101 */ 102 int (*read) (uint32_t device, uint32_t flags, uint32_t base, 102 int (*read) (uint32_t device, uint32_t flags, uint32_t base, 103 103 uint32_t offset, void* buffer, uint32_t size); 104 104 … … 106 106 * Write data from the buffer to the device. Return an errno 107 107 * error number if the device cannot be written to. 108 * 108 * 109 109 * @param device The device to write data to. 110 110 * @param flags Device specific flags for the driver. … … 116 116 * @retval EIO The write did not complete or verify. 117 117 */ 118 int (*write) (uint32_t device, uint32_t flags, uint32_t base, 118 int (*write) (uint32_t device, uint32_t flags, uint32_t base, 119 119 uint32_t offset, const void* buffer, uint32_t size); 120 120 … … 122 122 * Verify data in the buffer to the data in the device. Return an 123 123 * errno error number if the device cannot be read or the data verified. 124 * 124 * 125 125 * @param device The device to verify the data with. 126 126 * @param flags Device specific flags for the driver. -
cpukit/libblock/include/rtems/ramdisk.h
r309dbd0 r33c3b54d 171 171 * ramdisk *rd = NULL; 172 172 * dev_t dev = 0; 173 * 173 * 174 174 * sc = rtems_io_register_driver(0, &ramdisk_ops, &major); 175 175 * if (sc != RTEMS_SUCCESSFUL) { 176 176 * return RTEMS_UNSATISFIED; 177 177 * } 178 * 178 * 179 179 * rd = ramdisk_allocate(NULL, block_size, block_count, false); 180 180 * if (rd == NULL) { 181 181 * rtems_io_unregister_driver(major); 182 * 182 * 183 183 * return RTEMS_UNSATISFIED; 184 184 * } 185 * 185 * 186 186 * dev = rtems_filesystem_make_dev_t(major, 0); 187 * 187 * 188 188 * sc = rtems_disk_create_phys( 189 189 * dev, … … 197 197 * ramdisk_free(rd); 198 198 * rtems_io_unregister_driver(major); 199 * 199 * 200 200 * return RTEMS_UNSATISFIED; 201 201 * } 202 * 202 * 203 203 * return RTEMS_SUCCESSFUL; 204 204 * }
Note: See TracChangeset
for help on using the changeset viewer.