Lines Matching +full:master +full:- +full:kernel
1 // SPDX-License-Identifier: GPL-2.0-or-later
9 #include <linux/kernel.h>
31 static int create_mtd_partitions(struct mtd_info *master, in create_mtd_partitions() argument
38 unsigned int pre_size = master->erasesize, post_size = 0; in create_mtd_partitions()
46 return -ENOMEM; in create_mtd_partitions()
49 ar7_parts[0].size = master->erasesize; in create_mtd_partitions()
54 ar7_parts[1].size = master->erasesize; in create_mtd_partitions()
57 do { /* Try 10 blocks starting from master->erasesize */ in create_mtd_partitions()
59 mtd_read(master, offset, sizeof(header), &len, in create_mtd_partitions()
67 pre_size += master->erasesize; in create_mtd_partitions()
68 } while (retries--); in create_mtd_partitions()
73 ar7_parts[1].offset = master->size - master->erasesize; in create_mtd_partitions()
74 post_size = master->erasesize; in create_mtd_partitions()
81 mtd_read(master, offset, sizeof(header), &len, in create_mtd_partitions()
89 mtd_read(master, offset, sizeof(header), &len, in create_mtd_partitions()
100 mtd_read(master, root_offset, sizeof(header), &len, (u8 *)&header); in create_mtd_partitions()
102 root_offset += master->erasesize - 1; in create_mtd_partitions()
103 root_offset &= ~(master->erasesize - 1); in create_mtd_partitions()
108 ar7_parts[2].size = master->size - pre_size - post_size; in create_mtd_partitions()
113 ar7_parts[3].size = master->size - root_offset - post_size; in create_mtd_partitions()