1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * BTRFS filesystem implementation for U-Boot
4  *
5  * 2017 Marek Behun, CZ.NIC, marek.behun@nic.cz
6  */
7 
8 #include <common.h>
9 #include <blk.h>
10 #include <compiler.h>
11 #include <fs_internal.h>
12 
13 struct blk_desc *btrfs_blk_desc;
14 struct disk_partition *btrfs_part_info;
15 
btrfs_devread(u64 address,int byte_len,void * buf)16 int btrfs_devread(u64 address, int byte_len, void *buf)
17 {
18 	lbaint_t sector;
19 	int byte_offset;
20 
21 	sector = address >> btrfs_blk_desc->log2blksz;
22 	byte_offset = address % btrfs_blk_desc->blksz;
23 
24 	return fs_devread(btrfs_blk_desc, btrfs_part_info, sector, byte_offset,
25 			  byte_len, buf);
26 }
27