Lines Matching full:backend

25 struct backend {  struct
28 /* Backend private data */
43 * @context: The backend context pointer argument
44 * @data: Additional backend-implementation-specifc data
47 int (*init)(struct backend *backend, void *data);
51 * @context: The backend context pointer
53 void (*free)(struct backend *backend);
65 int64_t (*copy)(struct backend *backend, uint32_t offset, void *mem,
80 int (*set_bytemap)(struct backend *backend, uint32_t offset,
85 * @context: The backend context pointer
91 int (*erase)(struct backend *backend, uint32_t offset,
95 * @context: The backend context pointer
102 int (*write)(struct backend *backend, uint32_t offset, void *buf,
107 * @context: The backend context pointer
115 int (*validate)(struct backend *backend,
120 * @context: The backend context pointer
126 int (*reset)(struct backend *backend, void *buf, uint32_t count);
130 * @context: The backend context pointer
136 int (*align_offset)(struct backend *backend, uint32_t *offset,
141 static inline int backend_init(struct backend *master, struct backend *with, in backend_init()
171 static inline void backend_free(struct backend *backend) in backend_free() argument
173 assert(backend); in backend_free()
175 if (backend->ops->free) in backend_free()
176 backend->ops->free(backend); in backend_free()
179 static inline int64_t backend_copy(struct backend *backend, in backend_copy() argument
182 assert(backend); in backend_copy()
183 assert(backend->ops->copy); in backend_copy()
184 return backend->ops->copy(backend, offset, mem, size); in backend_copy()
188 static inline int backend_set_bytemap(struct backend *backend, in backend_set_bytemap() argument
192 assert(backend); in backend_set_bytemap()
194 if (backend->ops->set_bytemap) in backend_set_bytemap()
195 return backend->ops->set_bytemap(backend, offset, count, val); in backend_set_bytemap()
200 static inline int backend_erase(struct backend *backend, uint32_t offset, in backend_erase() argument
203 assert(backend); in backend_erase()
204 if (backend->ops->erase) in backend_erase()
205 return backend->ops->erase(backend, offset, count); in backend_erase()
210 static inline int backend_write(struct backend *backend, uint32_t offset, in backend_write() argument
213 assert(backend); in backend_write()
214 assert(backend->ops->write); in backend_write()
215 return backend->ops->write(backend, offset, buf, count); in backend_write()
218 static inline int backend_validate(struct backend *backend, in backend_validate() argument
221 assert(backend); in backend_validate()
223 if (backend->ops->validate) in backend_validate()
224 return backend->ops->validate(backend, offset, size, ro); in backend_validate()
229 static inline int backend_reset(struct backend *backend, void *buf, in backend_reset() argument
232 assert(backend); in backend_reset()
233 assert(backend->ops->reset); in backend_reset()
234 return backend->ops->reset(backend, buf, count); in backend_reset()
238 static inline int backend_align_offset(struct backend *backend, uint32_t *offset, uint32_t window_s… in backend_align_offset() argument
240 assert(backend); in backend_align_offset()
241 if (backend->ops->align_offset){ in backend_align_offset()
242 return backend->ops->align_offset(backend, offset, window_size); in backend_align_offset()
257 struct backend backend_get_mtd(void);
258 int backend_probe_mtd(struct backend *master, const char *path);
260 struct backend backend_get_file(void);
261 int backend_probe_file(struct backend *master, const char *path);
266 struct backend backend_get_vpnor(void);
268 int backend_probe_vpnor(struct backend *master,
271 static inline struct backend backend_get_vpnor(void) in backend_get_vpnor()
273 struct backend be = { NULL, NULL, 0, 0, 0 }; in backend_get_vpnor()
278 static inline int backend_probe_vpnor(struct backend *master __attribute__((unused)), in backend_probe_vpnor()