Commit 5dc887164e031dbd6544031eb4dcb8e5c4ddeb13
Committed by
Wolfgang Denk
1 parent
5ddb118da4
Exists in
master
and in
54 other branches
bootstage: Convert progress numbers 1-9 into enums
Signed-off-by: Simon Glass <sjg@chromium.org>
Showing 9 changed files with 59 additions and 46 deletions Side-by-side Diff
board/bf533-stamp/bf533-stamp.c
... | ... | @@ -91,27 +91,27 @@ |
91 | 91 | void show_boot_progress(int status) |
92 | 92 | { |
93 | 93 | switch (status) { |
94 | - case 1: | |
94 | + case BOOTSTAGE_ID_CHECK_MAGIC: | |
95 | 95 | stamp_led_set(STATUS_LED_OFF, STATUS_LED_OFF, STATUS_LED_ON); |
96 | 96 | break; |
97 | - case 2: | |
97 | + case BOOTSTAGE_ID_CHECK_HEADER: | |
98 | 98 | stamp_led_set(STATUS_LED_OFF, STATUS_LED_ON, STATUS_LED_OFF); |
99 | 99 | break; |
100 | - case 3: | |
100 | + case BOOTSTAGE_ID_CHECK_CHECKSUM: | |
101 | 101 | stamp_led_set(STATUS_LED_OFF, STATUS_LED_ON, STATUS_LED_ON); |
102 | 102 | break; |
103 | - case 4: | |
103 | + case BOOTSTAGE_ID_CHECK_ARCH: | |
104 | 104 | stamp_led_set(STATUS_LED_ON, STATUS_LED_OFF, STATUS_LED_OFF); |
105 | 105 | break; |
106 | - case 5: | |
107 | - case 6: | |
106 | + case BOOTSTAGE_ID_CHECK_IMAGETYPE: | |
107 | + case BOOTSTAGE_ID_DECOMP_IMAGE: | |
108 | 108 | stamp_led_set(STATUS_LED_ON, STATUS_LED_OFF, STATUS_LED_ON); |
109 | 109 | break; |
110 | - case 7: | |
111 | - case 8: | |
110 | + case BOOTSTAGE_ID_KERNEL_LOADED: | |
111 | + case BOOTSTAGE_ID_CHECK_BOOT_OS: | |
112 | 112 | stamp_led_set(STATUS_LED_ON, STATUS_LED_ON, STATUS_LED_OFF); |
113 | 113 | break; |
114 | - case 9: | |
114 | + case BOOTSTAGE_ID_BOOT_OS_RETURNED: | |
115 | 115 | case 10: |
116 | 116 | case 11: |
117 | 117 | case 12: |
board/hermes/hermes.c
board/ivm/ivm.c
... | ... | @@ -322,7 +322,7 @@ |
322 | 322 | (status < 0) ? STATUS_LED_ON : STATUS_LED_OFF); |
323 | 323 | # endif /* STATUS_LED_YELLOW */ |
324 | 324 | # if defined(STATUS_LED_BOOT) |
325 | - if (status == 6) | |
325 | + if (status == BOOTSTAGE_ID_DECOMP_IMAGE) | |
326 | 326 | status_led_set (STATUS_LED_BOOT, STATUS_LED_OFF); |
327 | 327 | # endif /* STATUS_LED_BOOT */ |
328 | 328 | #endif /* CONFIG_STATUS_LED */ |
board/matrix_vision/common/mv_common.c
board/matrix_vision/mvbc_p/mvbc_p.c
board/pcs440ep/pcs440ep.c
... | ... | @@ -104,17 +104,17 @@ |
104 | 104 | return; |
105 | 105 | } |
106 | 106 | switch (val) { |
107 | - case 1: | |
108 | - /* validating Image */ | |
109 | - status_led_set (0, STATUS_LED_OFF); | |
110 | - status_led_set (1, STATUS_LED_ON); | |
111 | - status_led_set (2, STATUS_LED_ON); | |
112 | - break; | |
113 | - case BOOTSTAGE_ID_RUN_OS: | |
114 | - status_led_set (0, STATUS_LED_ON); | |
115 | - status_led_set (1, STATUS_LED_ON); | |
116 | - status_led_set (2, STATUS_LED_ON); | |
117 | - break; | |
107 | + case BOOTSTAGE_ID_CHECK_MAGIC: | |
108 | + /* validating Image */ | |
109 | + status_led_set(0, STATUS_LED_OFF); | |
110 | + status_led_set(1, STATUS_LED_ON); | |
111 | + status_led_set(2, STATUS_LED_ON); | |
112 | + break; | |
113 | + case BOOTSTAGE_ID_RUN_OS: | |
114 | + status_led_set(0, STATUS_LED_ON); | |
115 | + status_led_set(1, STATUS_LED_ON); | |
116 | + status_led_set(2, STATUS_LED_ON); | |
117 | + break; | |
118 | 118 | #if 0 |
119 | 119 | case 64: |
120 | 120 | /* starting Ethernet configuration */ |
common/cmd_bootm.c
... | ... | @@ -348,7 +348,7 @@ |
348 | 348 | puts("GUNZIP: uncompress, out-of-mem or overwrite " |
349 | 349 | "error - must RESET board to recover\n"); |
350 | 350 | if (boot_progress) |
351 | - show_boot_error(6); | |
351 | + show_boot_error(BOOTSTAGE_ID_DECOMP_IMAGE); | |
352 | 352 | return BOOTM_ERR_RESET; |
353 | 353 | } |
354 | 354 | |
... | ... | @@ -370,7 +370,7 @@ |
370 | 370 | printf("BUNZIP2: uncompress or overwrite error %d " |
371 | 371 | "- must RESET board to recover\n", i); |
372 | 372 | if (boot_progress) |
373 | - show_boot_error(6); | |
373 | + show_boot_error(BOOTSTAGE_ID_DECOMP_IMAGE); | |
374 | 374 | return BOOTM_ERR_RESET; |
375 | 375 | } |
376 | 376 | |
... | ... | @@ -389,7 +389,7 @@ |
389 | 389 | if (ret != SZ_OK) { |
390 | 390 | printf("LZMA: uncompress or overwrite error %d " |
391 | 391 | "- must RESET board to recover\n", ret); |
392 | - show_boot_error(6); | |
392 | + show_boot_error(BOOTSTAGE_ID_DECOMP_IMAGE); | |
393 | 393 | return BOOTM_ERR_RESET; |
394 | 394 | } |
395 | 395 | *load_end = load + unc_len; |
... | ... | @@ -407,7 +407,7 @@ |
407 | 407 | printf("LZO: uncompress or overwrite error %d " |
408 | 408 | "- must RESET board to recover\n", ret); |
409 | 409 | if (boot_progress) |
410 | - show_boot_error(6); | |
410 | + show_boot_error(BOOTSTAGE_ID_DECOMP_IMAGE); | |
411 | 411 | return BOOTM_ERR_RESET; |
412 | 412 | } |
413 | 413 | |
... | ... | @@ -423,8 +423,7 @@ |
423 | 423 | |
424 | 424 | puts("OK\n"); |
425 | 425 | debug(" kernel loaded at 0x%08lx, end = 0x%08lx\n", load, *load_end); |
426 | - if (boot_progress) | |
427 | - show_boot_progress(7); | |
426 | + show_boot_progress(BOOTSTAGE_ID_KERNEL_LOADED); | |
428 | 427 | |
429 | 428 | if (!no_overlap && (load < blob_end) && (*load_end > blob_start)) { |
430 | 429 | debug("images.os.start = 0x%lX, images.os.end = 0x%lx\n", |
... | ... | @@ -656,7 +655,7 @@ |
656 | 655 | if (ret == BOOTM_ERR_UNIMPLEMENTED) { |
657 | 656 | if (iflag) |
658 | 657 | enable_interrupts(); |
659 | - show_boot_error(7); | |
658 | + show_boot_error(BOOTSTAGE_ID_DECOMP_UNIMPL); | |
660 | 659 | return 1; |
661 | 660 | } |
662 | 661 | } |
... | ... | @@ -671,7 +670,7 @@ |
671 | 670 | return 0; |
672 | 671 | } |
673 | 672 | |
674 | - show_boot_progress(8); | |
673 | + show_boot_progress(BOOTSTAGE_ID_CHECK_BOOT_OS); | |
675 | 674 | |
676 | 675 | #ifdef CONFIG_SILENT_CONSOLE |
677 | 676 | if (images.os.os == IH_OS_LINUX) |
... | ... | @@ -685,7 +684,7 @@ |
685 | 684 | enable_interrupts(); |
686 | 685 | printf("ERROR: booting os '%s' (%d) is not supported\n", |
687 | 686 | genimg_get_os_name(images.os.os), images.os.os); |
688 | - show_boot_error(8); | |
687 | + show_boot_error(BOOTSTAGE_ID_CHECK_BOOT_OS); | |
689 | 688 | return 1; |
690 | 689 | } |
691 | 690 | |
... | ... | @@ -693,7 +692,7 @@ |
693 | 692 | |
694 | 693 | boot_fn(0, argc, argv, &images); |
695 | 694 | |
696 | - show_boot_error(9); | |
695 | + show_boot_error(BOOTSTAGE_ID_BOOT_OS_RETURNED); | |
697 | 696 | #ifdef DEBUG |
698 | 697 | puts("\n## Control returned to monitor - resetting...\n"); |
699 | 698 | #endif |
700 | 699 | |
701 | 700 | |
702 | 701 | |
703 | 702 | |
704 | 703 | |
705 | 704 | |
... | ... | @@ -735,34 +734,34 @@ |
735 | 734 | |
736 | 735 | if (!image_check_magic(hdr)) { |
737 | 736 | puts("Bad Magic Number\n"); |
738 | - show_boot_error(1); | |
737 | + show_boot_error(BOOTSTAGE_ID_CHECK_MAGIC); | |
739 | 738 | return NULL; |
740 | 739 | } |
741 | - show_boot_progress(2); | |
740 | + show_boot_progress(BOOTSTAGE_ID_CHECK_HEADER); | |
742 | 741 | |
743 | 742 | if (!image_check_hcrc(hdr)) { |
744 | 743 | puts("Bad Header Checksum\n"); |
745 | - show_boot_error(2); | |
744 | + show_boot_error(BOOTSTAGE_ID_CHECK_HEADER); | |
746 | 745 | return NULL; |
747 | 746 | } |
748 | 747 | |
749 | - show_boot_progress(3); | |
748 | + show_boot_progress(BOOTSTAGE_ID_CHECK_CHECKSUM); | |
750 | 749 | image_print_contents(hdr); |
751 | 750 | |
752 | 751 | if (verify) { |
753 | 752 | puts(" Verifying Checksum ... "); |
754 | 753 | if (!image_check_dcrc(hdr)) { |
755 | 754 | printf("Bad Data CRC\n"); |
756 | - show_boot_error(3); | |
755 | + show_boot_error(BOOTSTAGE_ID_CHECK_CHECKSUM); | |
757 | 756 | return NULL; |
758 | 757 | } |
759 | 758 | puts("OK\n"); |
760 | 759 | } |
761 | - show_boot_progress(4); | |
760 | + show_boot_progress(BOOTSTAGE_ID_CHECK_ARCH); | |
762 | 761 | |
763 | 762 | if (!image_check_target_arch(hdr)) { |
764 | 763 | printf("Unsupported Architecture 0x%x\n", image_get_arch(hdr)); |
765 | - show_boot_error(4); | |
764 | + show_boot_error(BOOTSTAGE_ID_CHECK_ARCH); | |
766 | 765 | return NULL; |
767 | 766 | } |
768 | 767 | return hdr; |
... | ... | @@ -864,7 +863,7 @@ |
864 | 863 | debug("* kernel: cmdline image address = 0x%08lx\n", img_addr); |
865 | 864 | } |
866 | 865 | |
867 | - show_boot_progress(1); | |
866 | + show_boot_progress(BOOTSTAGE_ID_CHECK_MAGIC); | |
868 | 867 | |
869 | 868 | /* copy from dataflash if needed */ |
870 | 869 | img_addr = genimg_get_image(img_addr); |
... | ... | @@ -878,7 +877,7 @@ |
878 | 877 | hdr = image_get_kernel(img_addr, images->verify); |
879 | 878 | if (!hdr) |
880 | 879 | return NULL; |
881 | - show_boot_progress(5); | |
880 | + show_boot_progress(BOOTSTAGE_ID_CHECK_IMAGETYPE); | |
882 | 881 | |
883 | 882 | /* get os_data and os_len */ |
884 | 883 | switch (image_get_type(hdr)) { |
... | ... | @@ -897,7 +896,7 @@ |
897 | 896 | default: |
898 | 897 | printf("Wrong Image Type for %s command\n", |
899 | 898 | cmdtp->name); |
900 | - show_boot_error(5); | |
899 | + show_boot_error(BOOTSTAGE_ID_CHECK_IMAGETYPE); | |
901 | 900 | return NULL; |
902 | 901 | } |
903 | 902 | |
... | ... | @@ -912,7 +911,7 @@ |
912 | 911 | images->legacy_hdr_os = hdr; |
913 | 912 | |
914 | 913 | images->legacy_hdr_valid = 1; |
915 | - show_boot_progress(6); | |
914 | + show_boot_progress(BOOTSTAGE_ID_DECOMP_IMAGE); | |
916 | 915 | break; |
917 | 916 | #if defined(CONFIG_FIT) |
918 | 917 | case IMAGE_FORMAT_FIT: |
common/image.c
include/bootstage.h
... | ... | @@ -44,6 +44,20 @@ |
44 | 44 | * error on action3 |
45 | 45 | */ |
46 | 46 | enum bootstage_id { |
47 | + BOOTSTAGE_ID_START = 0, | |
48 | + BOOTSTAGE_ID_CHECK_MAGIC, /* Checking image magic */ | |
49 | + BOOTSTAGE_ID_CHECK_HEADER, /* Checking image header */ | |
50 | + BOOTSTAGE_ID_CHECK_CHECKSUM, /* Checking image checksum */ | |
51 | + BOOTSTAGE_ID_CHECK_ARCH, /* Checking architecture */ | |
52 | + | |
53 | + BOOTSTAGE_ID_CHECK_IMAGETYPE = 5,/* Checking image type */ | |
54 | + BOOTSTAGE_ID_DECOMP_IMAGE, /* Decompressing image */ | |
55 | + BOOTSTAGE_ID_KERNEL_LOADED, /* Kernel has been loaded */ | |
56 | + BOOTSTAGE_ID_DECOMP_UNIMPL = 7, /* Odd decompression algorithm */ | |
57 | + BOOTSTAGE_ID_CHECK_BOOT_OS, /* Calling OS-specific boot function */ | |
58 | + BOOTSTAGE_ID_BOOT_OS_RETURNED, /* Tried to boot OS, but it returned */ | |
59 | + BOOTSTAGE_ID_CHECK_RAMDISK = 9, /* Checking ram disk */ | |
60 | + | |
47 | 61 | BOOTSTAGE_ID_RUN_OS = 15, /* Exiting U-Boot, entering OS */ |
48 | 62 | }; |
49 | 63 |