hc
2023-11-06 9df731a176aab8e03b984b681b1bea01ccff6644
u-boot/arch/arm/mach-rockchip/boot_rkimg.c
....@@ -19,6 +19,8 @@
1919 #include <key.h>
2020 #include <mmc.h>
2121 #include <malloc.h>
22
+#include <mp_boot.h>
23
+#include <mtd_blk.h>
2224 #include <nvme.h>
2325 #include <scsi.h>
2426 #include <stdlib.h>
....@@ -91,6 +93,10 @@
9193
9294 if (done)
9395 return;
96
+
97
+#ifdef CONFIG_MP_BOOT
98
+ mpb_post(0);
99
+#endif
94100
95101 /* configuration */
96102 if (!param_parse_assign_bootdev(&devtype, &devnum)) {
....@@ -269,6 +275,9 @@
269275
270276 printf("PartType: %s\n", part_get_type(dev_desc));
271277
278
+#ifdef CONFIG_MTD_BLK
279
+ mtd_blk_map_partitions(dev_desc);
280
+#endif
272281 return dev_desc;
273282 }
274283
....@@ -512,7 +521,7 @@
512521 LOCATE_END,
513522 };
514523
515
-static int rkimg_traverse_read_dtb(void *fdt, int where)
524
+static int dtb_scan(void *fdt, int where)
516525 {
517526 if (where == LOCATE_DISTRO) {
518527 #ifdef CONFIG_ROCKCHIP_EARLY_DISTRO_DTB
....@@ -557,19 +566,13 @@
557566 int locate, ret;
558567 int size;
559568
560
- /* init resource list */
561
-#ifdef CONFIG_ROCKCHIP_RESOURCE_IMAGE
562
- resource_traverse_init_list();
563
-#endif
564
-
565
- /* traverse location */
566569 for (locate = 0; locate < LOCATE_END; locate++) {
567
- ret = rkimg_traverse_read_dtb(fdt, locate);
570
+ ret = dtb_scan(fdt, locate);
568571 if (!ret)
569572 break;
570573 }
571574 if (ret) {
572
- printf("No find valid DTB, ret=%d\n", ret);
575
+ printf("No valid DTB, ret=%d\n", ret);
573576 return ret;
574577 }
575578
....@@ -608,7 +611,7 @@
608611 offset = hdr->page_size + ALIGN(hdr->kernel_size, hdr->page_size) +
609612 ALIGN(hdr->ramdisk_size, hdr->page_size);
610613 #ifdef CONFIG_ROCKCHIP_RESOURCE_IMAGE
611
- ret = resource_create_ram_list(dev_desc, (void *)hdr + offset);
614
+ ret = resource_setup_ram_list(dev_desc, (void *)hdr + offset);
612615 if (ret)
613616 return ret;
614617
....@@ -650,9 +653,9 @@
650653 if (!dev_desc)
651654 return -ENODEV;
652655
653
- ret = resource_create_ram_list(dev_desc, (void *)data);
656
+ ret = resource_setup_ram_list(dev_desc, (void *)data);
654657 if (ret) {
655
- printf("resource_create_ram_list fail, ret=%d\n", ret);
658
+ printf("resource_setup_ram_list fail, ret=%d\n", ret);
656659 return ret;
657660 }
658661