- switch (image_get_type (hdr)) {
- case IH_TYPE_STANDALONE:
- if (iflag)
- enable_interrupts();
-
- /* load (and uncompress), but don't start if "autostart"
- * is set to "no"
- */
- if (((s = getenv("autostart")) != NULL) && (strcmp(s,"no") == 0)) {
- char buf[32];
- sprintf(buf, "%lX", image_get_data_size(hdr));
- setenv("filesize", buf);
- return 0;
- }
- appl = (int (*)(int, char *[]))image_get_ep (hdr);
- (*appl)(argc-1, &argv[1]);
- return 0;
- case IH_TYPE_KERNEL:
- case IH_TYPE_MULTI:
- /* handled below */
- break;
- default:
- if (iflag)
- enable_interrupts();
- printf ("Can't boot image type %d\n", image_get_type (hdr));
- show_boot_progress (-8);
- return 1;
- }