/* | |
* Copyright (c) 2016, ARM Limited and Contributors. All rights reserved. | |
* | |
* SPDX-License-Identifier: BSD-3-Clause | |
*/ | |
#ifndef IO_BLOCK_H | |
#define IO_BLOCK_H | |
#include <drivers/io/io_storage.h> | |
/* block devices ops */ | |
typedef struct io_block_ops { | |
size_t (*read)(int lba, uintptr_t buf, size_t size); | |
size_t (*write)(int lba, const uintptr_t buf, size_t size); | |
} io_block_ops_t; | |
typedef struct io_block_dev_spec { | |
io_block_spec_t buffer; | |
io_block_ops_t ops; | |
size_t block_size; | |
} io_block_dev_spec_t; | |
struct io_dev_connector; | |
int register_io_dev_block(const struct io_dev_connector **dev_con); | |
#endif /* IO_BLOCK_H */ |