Lines Matching refs:mtdparts

21 void board_mtdparts_default(const char **mtdids, const char **mtdparts);
25 __maybe_unused const char *mtdparts = NULL;
32 board_mtdparts_default(&mtdids, &mtdparts);
136 const char *mtdparts = NULL;
139 mtdparts = env_get("mtdparts");
140 else if (env_get_f("mtdparts", tmp_parts, sizeof(tmp_parts)) != -1)
141 mtdparts = tmp_parts;
143 if (mtdparts)
144 return mtdparts;
147 board_mtdparts_default(&mtdids, &mtdparts);
149 mtdparts = CONFIG_MTDPARTS_DEFAULT;
152 if (mtdparts)
153 env_set("mtdparts", mtdparts);
155 return mtdparts;
206 static int parse_mtdparts(const char *mtdparts, const char *mtdids)
211 /* Start the parsing by ignoring the extra 'mtdparts=' prefix, if any */
212 if (!strncmp(mtdparts, "mtdparts=", sizeof("mtdparts=") - 1))
213 mtdparts += 9;
215 /* For each MTD device in mtdparts */
216 for (; mtdparts[0] != '\0'; mtdparts = mtdparts_next) {
222 mtdparts_next = strchr(mtdparts, ';');
224 mtdparts_next = mtdparts + strlen(mtdparts);
228 colon = strchr(mtdparts, ':');
233 printf("Wrong mtdparts: %s\n", mtdparts);
237 mtd_name_len = (unsigned int)(colon - mtdparts);
239 printf("MTD name too long: %s\n", mtdparts);
243 strncpy(mtd_name, mtdparts, mtd_name_len);
246 mtdparts += mtd_name_len + 1;
263 * If no device could be found, move the mtdparts
269 mtdparts = mtdparts_next;
286 * Parse the MTD device partitions. It will update the mtdparts
290 ret = mtd_parse_partitions(mtd, &mtdparts, &parts, &nparts);
316 const char *mtdparts = get_mtdparts();
324 * Check if mtdparts/mtdids changed, if the MTD dev list was updated
329 if ((!mtdparts && !old_mtdparts && !mtdids && !old_mtdids) ||
330 (mtdparts && old_mtdparts && mtdids && old_mtdids &&
332 !strcmp(mtdparts, old_mtdparts) &&
336 /* Update the local copy of mtdparts */
339 old_mtdparts = strdup(mtdparts);
355 /* If both mtdparts and mtdids are non-empty, parse */
356 if (mtdparts && mtdids) {
357 if (parse_mtdparts(mtdparts, mtdids) < 0)
358 printf("Failed parsing MTD partitions from mtdparts!\n");