Changes in uspace/lib/block/libblock.h [08cba4b:a6ba0c9] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/block/libblock.h
r08cba4b ra6ba0c9 1 1 /* 2 2 * Copyright (c) 2008 Jakub Jermar 3 * Copyright (c) 2008 Martin Decky 4 * Copyright (c) 2011 Martin Sucha 3 * Copyright (c) 2008 Martin Decky 5 4 * All rights reserved. 6 5 * … … 40 39 41 40 #include <stdint.h> 42 #include <async.h>43 41 #include "../../srv/vfs/vfs.h" 44 42 #include <fibril_synch.h> … … 73 71 /** Readers / Writer lock protecting the contents of the block. */ 74 72 fibril_rwlock_t contents_lock; 75 /** Service ID of service providing the block device. */76 service_id_t service_id;73 /** Handle of the device where the block resides. */ 74 devmap_handle_t devmap_handle; 77 75 /** Logical block address */ 78 76 aoff64_t lba; … … 97 95 }; 98 96 99 typedef struct { 100 uint16_t size; 101 uint8_t first_session; 102 uint8_t last_session; 103 104 uint8_t res0; 105 uint8_t adr_ctrl; 106 uint8_t first_track; 107 uint8_t res1; 108 109 uint32_t first_lba; 110 } __attribute__((packed)) toc_block_t; 97 extern int block_init(devmap_handle_t, size_t); 98 extern void block_fini(devmap_handle_t); 111 99 112 extern int block_ init(exch_mgmt_t, service_id_t, size_t);113 extern void block_fini(service_id_t);100 extern int block_bb_read(devmap_handle_t, aoff64_t); 101 extern void *block_bb_get(devmap_handle_t); 114 102 115 extern int block_ bb_read(service_id_t, aoff64_t);116 extern void *block_bb_get(service_id_t);103 extern int block_cache_init(devmap_handle_t, size_t, unsigned, enum cache_mode); 104 extern int block_cache_fini(devmap_handle_t); 117 105 118 extern int block_cache_init(service_id_t, size_t, unsigned, enum cache_mode); 119 extern int block_cache_fini(service_id_t); 120 121 extern int block_get(block_t **, service_id_t, aoff64_t, int); 106 extern int block_get(block_t **, devmap_handle_t, aoff64_t, int); 122 107 extern int block_put(block_t *); 123 108 124 extern int block_seqread( service_id_t, size_t *, size_t *, aoff64_t *, void *,109 extern int block_seqread(devmap_handle_t, size_t *, size_t *, aoff64_t *, void *, 125 110 size_t); 126 111 127 extern int block_get_bsize(service_id_t, size_t *); 128 extern int block_get_nblocks(service_id_t, aoff64_t *); 129 extern toc_block_t *block_get_toc(service_id_t, uint8_t); 130 extern int block_read_direct(service_id_t, aoff64_t, size_t, void *); 131 extern int block_read_bytes_direct(service_id_t, aoff64_t, size_t, void *); 132 extern int block_write_direct(service_id_t, aoff64_t, size_t, const void *); 112 extern int block_get_bsize(devmap_handle_t, size_t *); 113 extern int block_get_nblocks(devmap_handle_t, aoff64_t *); 114 extern int block_read_direct(devmap_handle_t, aoff64_t, size_t, void *); 115 extern int block_write_direct(devmap_handle_t, aoff64_t, size_t, const void *); 133 116 134 117 #endif … … 136 119 /** @} 137 120 */ 121
Note:
See TracChangeset
for help on using the changeset viewer.