#include <hush.h>
 #endif
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #ifdef CFG_INIT_RAM_LOCK
 #include <asm/cache.h>
 #endif
                addr = simple_strtoul(argv[1], NULL, 16);
        }
 
-       SHOW_BOOT_PROGRESS (1);
+       show_boot_progress (1);
        printf ("## Booting image at %08lx ...\n", addr);
 
        /* Copy header so we can blank CRC field for re-calculation */
 #endif /* __I386__ */
            {
                puts ("Bad Magic Number\n");
-               SHOW_BOOT_PROGRESS (-1);
+               show_boot_progress (-1);
                return 1;
            }
        }
-       SHOW_BOOT_PROGRESS (2);
+       show_boot_progress (2);
 
        data = (ulong)&header;
        len  = sizeof(image_header_t);
 
        if (crc32 (0, (uchar *)data, len) != checksum) {
                puts ("Bad Header Checksum\n");
-               SHOW_BOOT_PROGRESS (-2);
+               show_boot_progress (-2);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (3);
+       show_boot_progress (3);
 
 #ifdef CONFIG_HAS_DATAFLASH
        if (addr_dataflash(addr)){
                puts ("   Verifying Checksum ... ");
                if (crc32 (0, (uchar *)data, len) != ntohl(hdr->ih_dcrc)) {
                        printf ("Bad Data CRC\n");
-                       SHOW_BOOT_PROGRESS (-3);
+                       show_boot_progress (-3);
                        return 1;
                }
                puts ("OK\n");
        }
-       SHOW_BOOT_PROGRESS (4);
+       show_boot_progress (4);
 
        len_ptr = (ulong *)data;
 
 #endif
        {
                printf ("Unsupported Architecture 0x%x\n", hdr->ih_arch);
-               SHOW_BOOT_PROGRESS (-4);
+               show_boot_progress (-4);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (5);
+       show_boot_progress (5);
 
        switch (hdr->ih_type) {
        case IH_TYPE_STANDALONE:
                        data += 4;
                break;
        default: printf ("Wrong Image Type for %s command\n", cmdtp->name);
-               SHOW_BOOT_PROGRESS (-5);
+               show_boot_progress (-5);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (6);
+       show_boot_progress (6);
 
        /*
         * We have reached the point of no return: we are going to
                if (gunzip ((void *)ntohl(hdr->ih_load), unc_len,
                            (uchar *)data, &len) != 0) {
                        puts ("GUNZIP ERROR - must RESET board to recover\n");
-                       SHOW_BOOT_PROGRESS (-6);
+                       show_boot_progress (-6);
                        do_reset (cmdtp, flag, argc, argv);
                }
                break;
                                                CFG_MALLOC_LEN < (4096 * 1024), 0);
                if (i != BZ_OK) {
                        printf ("BUNZIP2 ERROR %d - must RESET board to recover\n", i);
-                       SHOW_BOOT_PROGRESS (-6);
+                       show_boot_progress (-6);
                        udelay(100000);
                        do_reset (cmdtp, flag, argc, argv);
                }
                if (iflag)
                        enable_interrupts();
                printf ("Unimplemented compression type %d\n", hdr->ih_comp);
-               SHOW_BOOT_PROGRESS (-7);
+               show_boot_progress (-7);
                return 1;
        }
        puts ("OK\n");
-       SHOW_BOOT_PROGRESS (7);
+       show_boot_progress (7);
 
        switch (hdr->ih_type) {
        case IH_TYPE_STANDALONE:
                if (iflag)
                        enable_interrupts();
                printf ("Can't boot image type %d\n", hdr->ih_type);
-               SHOW_BOOT_PROGRESS (-8);
+               show_boot_progress (-8);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (8);
+       show_boot_progress (8);
 
        switch (hdr->ih_os) {
        default:                        /* handled by (original) Linux case */
 #endif
        }
 
-       SHOW_BOOT_PROGRESS (-9);
+       show_boot_progress (-9);
 #ifdef DEBUG
        puts ("\n## Control returned to monitor - resetting...\n");
        do_reset (cmdtp, flag, argc, argv);
 #endif
        if (argc >= 3) {
                debug ("Not skipping initrd\n");
-               SHOW_BOOT_PROGRESS (9);
+               show_boot_progress (9);
 
                addr = simple_strtoul(argv[2], NULL, 16);
 
 
                if (ntohl(hdr->ih_magic)  != IH_MAGIC) {
                        puts ("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS (-10);
+                       show_boot_progress (-10);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
 
                if (crc32 (0, (uchar *)data, len) != checksum) {
                        puts ("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS (-11);
+                       show_boot_progress (-11);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
-               SHOW_BOOT_PROGRESS (10);
+               show_boot_progress (10);
 
                print_image_hdr (hdr);
 
 
                        if (csum != ntohl(hdr->ih_dcrc)) {
                                puts ("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS (-12);
+                               show_boot_progress (-12);
                                do_reset (cmdtp, flag, argc, argv);
                        }
                        puts ("OK\n");
                }
 
-               SHOW_BOOT_PROGRESS (11);
+               show_boot_progress (11);
 
                if ((hdr->ih_os   != IH_OS_LINUX)       ||
                    (hdr->ih_arch != IH_CPU_PPC)        ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)   ) {
                        puts ("No Linux PPC Ramdisk Image\n");
-                       SHOW_BOOT_PROGRESS (-13);
+                       show_boot_progress (-13);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
                u_long tail    = ntohl(len_ptr[0]) % 4;
                int i;
 
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
 
                /* skip kernel length and terminator */
                data = (ulong)(&len_ptr[2]);
                /*
                 * no initrd image
                 */
-               SHOW_BOOT_PROGRESS (14);
+               show_boot_progress (14);
 
                len = data = 0;
        }
                                initrd_start = nsp;
                }
 
-               SHOW_BOOT_PROGRESS (12);
+               show_boot_progress (12);
 
                debug ("## initrd at 0x%08lX ... 0x%08lX (len=%ld=0x%lX)\n",
                        data, data + len - 1, len, len);
        debug ("## Transferring control to Linux (at address %08lx) ...\n",
                (ulong)kernel);
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
 #if defined(CFG_INIT_RAM_LOCK) && !defined(CONFIG_E500)
        unlock_ram_in_cache();
        printf ("## Transferring control to NetBSD stage-2 loader (at address %08lx) ...\n",
                (ulong)loader);
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
        /*
         * NetBSD Stage-2 Loader Parameters:
        printf ("## Transferring control to RTEMS (at address %08lx) ...\n",
                (ulong)entry_point);
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
        /*
         * RTEMS Parameters:
 
 #include <malloc.h>
 #include <asm/io.h>
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #if (CONFIG_COMMANDS & CFG_CMD_DOC)
 
 #include <linux/mtd/nftl.h>
        image_header_t *hdr;
        int rcode = 0;
 
-       SHOW_BOOT_PROGRESS (34);
+       show_boot_progress (34);
        switch (argc) {
        case 1:
                addr = CFG_LOAD_ADDR;
                break;
        default:
                printf ("Usage:\n%s\n", cmdtp->usage);
-               SHOW_BOOT_PROGRESS (-35);
+               show_boot_progress (-35);
                return 1;
        }
 
-       SHOW_BOOT_PROGRESS (35);
+       show_boot_progress (35);
        if (!boot_device) {
                puts ("\n** No boot device **\n");
-               SHOW_BOOT_PROGRESS (-36);
+               show_boot_progress (-36);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (36);
+       show_boot_progress (36);
 
        dev = simple_strtoul(boot_device, &ep, 16);
 
        if ((dev >= CFG_MAX_DOC_DEVICE) ||
            (doc_dev_desc[dev].ChipID == DOC_ChipID_UNKNOWN)) {
                printf ("\n** Device %d not available\n", dev);
-               SHOW_BOOT_PROGRESS (-37);
+               show_boot_progress (-37);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (37);
+       show_boot_progress (37);
 
        printf ("\nLoading from device %d: %s at 0x%lX (offset 0x%lX)\n",
                dev, doc_dev_desc[dev].name, doc_dev_desc[dev].physadr,
        if (doc_rw (doc_dev_desc + dev, 1, offset,
                    SECTORSIZE, NULL, (u_char *)addr)) {
                printf ("** Read error on %d\n", dev);
-               SHOW_BOOT_PROGRESS (-38);
+               show_boot_progress (-38);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (38);
+       show_boot_progress (38);
 
        hdr = (image_header_t *)addr;
 
                cnt -= SECTORSIZE;
        } else {
                puts ("\n** Bad Magic Number **\n");
-               SHOW_BOOT_PROGRESS (-39);
+               show_boot_progress (-39);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (39);
+       show_boot_progress (39);
 
        if (doc_rw (doc_dev_desc + dev, 1, offset + SECTORSIZE, cnt,
                    NULL, (u_char *)(addr+SECTORSIZE))) {
                printf ("** Read error on %d\n", dev);
-               SHOW_BOOT_PROGRESS (-40);
+               show_boot_progress (-40);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (40);
+       show_boot_progress (40);
 
        /* Loading ok, update default load address */
 
 
 #endif
 #endif
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #ifdef CONFIG_IDE_8xx_DIRECT
 DECLARE_GLOBAL_DATA_PTR;
 #endif
        image_header_t *hdr;
        int rcode = 0;
 
-       SHOW_BOOT_PROGRESS (41);
+       show_boot_progress (41);
        switch (argc) {
        case 1:
                addr = CFG_LOAD_ADDR;
                break;
        default:
                printf ("Usage:\n%s\n", cmdtp->usage);
-               SHOW_BOOT_PROGRESS (-42);
+               show_boot_progress (-42);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (42);
+       show_boot_progress (42);
 
        if (!boot_device) {
                puts ("\n** No boot device **\n");
-               SHOW_BOOT_PROGRESS (-43);
+               show_boot_progress (-43);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (43);
+       show_boot_progress (43);
 
        dev = simple_strtoul(boot_device, &ep, 16);
 
        if (ide_dev_desc[dev].type==DEV_TYPE_UNKNOWN) {
                printf ("\n** Device %d not available\n", dev);
-               SHOW_BOOT_PROGRESS (-44);
+               show_boot_progress (-44);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (44);
+       show_boot_progress (44);
 
        if (*ep) {
                if (*ep != ':') {
                        puts ("\n** Invalid boot device, use `dev[:part]' **\n");
-                       SHOW_BOOT_PROGRESS (-45);
+                       show_boot_progress (-45);
                        return 1;
                }
                part = simple_strtoul(++ep, NULL, 16);
        }
-       SHOW_BOOT_PROGRESS (45);
+       show_boot_progress (45);
        if (get_partition_info (&ide_dev_desc[dev], part, &info)) {
-               SHOW_BOOT_PROGRESS (-46);
+               show_boot_progress (-46);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (46);
+       show_boot_progress (46);
        if ((strncmp((char *)info.type, BOOT_PART_TYPE, sizeof(info.type)) != 0) &&
            (strncmp((char *)info.type, BOOT_PART_COMP, sizeof(info.type)) != 0)) {
                printf ("\n** Invalid partition type \"%.32s\""
                        " (expect \"" BOOT_PART_TYPE "\")\n",
                        info.type);
-               SHOW_BOOT_PROGRESS (-47);
+               show_boot_progress (-47);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (47);
+       show_boot_progress (47);
 
        printf ("\nLoading from IDE device %d, partition %d: "
                "Name: %.32s  Type: %.32s\n",
 
        if (ide_dev_desc[dev].block_read (dev, info.start, 1, (ulong *)addr) != 1) {
                printf ("** Read error on %d:%d\n", dev, part);
-               SHOW_BOOT_PROGRESS (-48);
+               show_boot_progress (-48);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (48);
+       show_boot_progress (48);
 
        hdr = (image_header_t *)addr;
 
        if (ntohl(hdr->ih_magic) != IH_MAGIC) {
                printf("\n** Bad Magic Number **\n");
-               SHOW_BOOT_PROGRESS (-49);
+               show_boot_progress (-49);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (49);
+       show_boot_progress (49);
 
        checksum = ntohl(hdr->ih_hcrc);
        hdr->ih_hcrc = 0;
 
        if (crc32 (0, (uchar *)hdr, sizeof(image_header_t)) != checksum) {
                puts ("\n** Bad Header Checksum **\n");
-               SHOW_BOOT_PROGRESS (-50);
+               show_boot_progress (-50);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (50);
+       show_boot_progress (50);
        hdr->ih_hcrc = htonl(checksum); /* restore checksum for later use */
 
        print_image_hdr (hdr);
        if (ide_dev_desc[dev].block_read (dev, info.start+1, cnt,
                      (ulong *)(addr+info.blksz)) != cnt) {
                printf ("** Read error on %d:%d\n", dev, part);
-               SHOW_BOOT_PROGRESS (-51);
+               show_boot_progress (-51);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (51);
+       show_boot_progress (51);
 
 
        /* Loading ok, update default load address */
 
 #include <watchdog.h>
 #include <malloc.h>
 #include <asm/byteorder.h>
-
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #include <jffs2/jffs2.h>
 #include <nand.h>
 
        r = nand_read(nand, offset, &cnt, (u_char *) addr);
        if (r) {
                puts("** Read error\n");
-               SHOW_BOOT_PROGRESS(-56);
+               show_boot_progress (-56);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(56);
+       show_boot_progress (56);
 
        hdr = (image_header_t *) addr;
 
        if (ntohl(hdr->ih_magic) != IH_MAGIC) {
                printf("\n** Bad Magic Number 0x%x **\n", hdr->ih_magic);
-               SHOW_BOOT_PROGRESS(-57);
+               show_boot_progress (-57);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(57);
+       show_boot_progress (57);
 
        print_image_hdr(hdr);
 
        r = nand_read(nand, offset, &cnt, (u_char *) addr);
        if (r) {
                puts("** Read error\n");
-               SHOW_BOOT_PROGRESS(-58);
+               show_boot_progress (-58);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(58);
+       show_boot_progress (58);
 
        /* Loading ok, update default load address */
 
        }
 #endif
 
-       SHOW_BOOT_PROGRESS(52);
+       show_boot_progress(52);
        switch (argc) {
        case 1:
                addr = CFG_LOAD_ADDR;
 usage:
 #endif
                printf("Usage:\n%s\n", cmdtp->usage);
-               SHOW_BOOT_PROGRESS(-53);
+               show_boot_progress(-53);
                return 1;
        }
 
-       SHOW_BOOT_PROGRESS(53);
+       show_boot_progress(53);
        if (!boot_device) {
                puts("\n** No boot device **\n");
-               SHOW_BOOT_PROGRESS(-54);
+               show_boot_progress(-54);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(54);
+       show_boot_progress(54);
 
        idx = simple_strtoul(boot_device, NULL, 16);
 
        if (idx < 0 || idx >= CFG_MAX_NAND_DEVICE || !nand_info[idx].name) {
                printf("\n** Device %d not available\n", idx);
-               SHOW_BOOT_PROGRESS(-55);
+               show_boot_progress(-55);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(55);
+       show_boot_progress(55);
 
        return nand_load_image(cmdtp, &nand_info[idx], offset, addr, argv[0]);
 }
 #include <asm/io.h>
 #include <watchdog.h>
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
+#ifdef CONFIG_show_boot_progress
 # include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
+# define show_boot_progress(arg)       show_boot_progress(arg)
 #else
-# define SHOW_BOOT_PROGRESS(arg)
+# define show_boot_progress(arg)
 #endif
 
 #if (CONFIG_COMMANDS & CFG_CMD_NAND)
        ulong offset = 0;
        image_header_t *hdr;
        int rcode = 0;
-       SHOW_BOOT_PROGRESS(52);
+       show_boot_progress (52);
        switch (argc) {
        case 1:
                addr = CFG_LOAD_ADDR;
                break;
        default:
                printf ("Usage:\n%s\n", cmdtp->usage);
-               SHOW_BOOT_PROGRESS (-53);
+               show_boot_progress (-53);
                return 1;
        }
 
-       SHOW_BOOT_PROGRESS(53);
+       show_boot_progress (53);
        if (!boot_device) {
                puts ("\n** No boot device **\n");
-               SHOW_BOOT_PROGRESS (-54);
+               show_boot_progress (-54);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(54);
+       show_boot_progress (54);
 
        dev = simple_strtoul(boot_device, &ep, 16);
 
        if ((dev >= CFG_MAX_NAND_DEVICE) ||
            (nand_dev_desc[dev].ChipID == NAND_ChipID_UNKNOWN)) {
                printf ("\n** Device %d not available\n", dev);
-               SHOW_BOOT_PROGRESS (-55);
+               show_boot_progress (-55);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(55);
+       show_boot_progress (55);
 
        printf ("\nLoading from device %d: %s at 0x%lx (offset 0x%lx)\n",
                dev, nand_dev_desc[dev].name, nand_dev_desc[dev].IO_ADDR,
        if (nand_legacy_rw (nand_dev_desc + dev, NANDRW_READ, offset,
                        SECTORSIZE, NULL, (u_char *)addr)) {
                printf ("** Read error on %d\n", dev);
-               SHOW_BOOT_PROGRESS (-56);
+               show_boot_progress (-56);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(56);
+       show_boot_progress (56);
 
        hdr = (image_header_t *)addr;
 
                cnt -= SECTORSIZE;
        } else {
                printf ("\n** Bad Magic Number 0x%x **\n", ntohl(hdr->ih_magic));
-               SHOW_BOOT_PROGRESS (-57);
+               show_boot_progress (-57);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(57);
+       show_boot_progress (57);
 
        if (nand_legacy_rw (nand_dev_desc + dev, NANDRW_READ,
                        offset + SECTORSIZE, cnt, NULL,
                        (u_char *)(addr+SECTORSIZE))) {
                printf ("** Read error on %d\n", dev);
-               SHOW_BOOT_PROGRESS (-58);
+               show_boot_progress (-58);
                return 1;
        }
-       SHOW_BOOT_PROGRESS(58);
+       show_boot_progress (58);
 
        /* Loading ok, update default load address */
 
 
 
 #if (CONFIG_COMMANDS & CFG_CMD_NET)
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-extern void show_boot_progress (int val);
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress (arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 extern int do_bootm (cmd_tbl_t *, int, int, char *[]);
 
 static int netboot_common (proto_t, cmd_tbl_t *, int , char *[]);
                break;
 
        default: printf ("Usage:\n%s\n", cmdtp->usage);
-               SHOW_BOOT_PROGRESS(-80);
+               show_boot_progress (-80);
                return 1;
        }
 
-       SHOW_BOOT_PROGRESS(80);
+       show_boot_progress (80);
        if ((size = NetLoop(proto)) < 0) {
-               SHOW_BOOT_PROGRESS(-81);
+               show_boot_progress (-81);
                return 1;
        }
 
-       SHOW_BOOT_PROGRESS(81);
+       show_boot_progress (81);
        /* NetLoop ok, update environment */
        netboot_update_env();
 
        /* done if no file was loaded (no errors though) */
        if (size == 0) {
-               SHOW_BOOT_PROGRESS(-82);
+               show_boot_progress (-82);
                return 0;
        }
 
 
                printf ("Automatic boot of image at addr 0x%08lX ...\n",
                        load_addr);
-               SHOW_BOOT_PROGRESS(82);
+               show_boot_progress (82);
                rcode = do_bootm (cmdtp, 0, 1, local_args);
        }
 
 #ifdef CONFIG_AUTOSCRIPT
        if (((s = getenv("autoscript")) != NULL) && (strcmp(s,"yes") == 0)) {
                printf("Running autoscript at addr 0x%08lX ...\n", load_addr);
-               SHOW_BOOT_PROGRESS(83);
+               show_boot_progress (83);
                rcode = autoscript (load_addr);
        }
 #endif
-#if defined(CONFIG_SHOW_BOOT_PROGRESS)
        if (rcode < 0)
-               SHOW_BOOT_PROGRESS(-83);
+               show_boot_progress (-83);
        else
-               SHOW_BOOT_PROGRESS(84);
-#endif
+               show_boot_progress (84);
        return rcode;
 }
 
 
 #include <linux/stddef.h>
 #include <malloc.h>
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 DECLARE_GLOBAL_DATA_PTR;
 
 #ifdef CONFIG_AMIGAONEG3SE
                puts ("Using default environment\n\n");
 #else
                puts ("*** Warning - bad CRC, using default environment\n\n");
-               SHOW_BOOT_PROGRESS (-60);
+               show_boot_progress (-60);
 #endif
 
                if (sizeof(default_environment) > ENV_SIZE)
 
 DECLARE_GLOBAL_DATA_PTR;
 #endif
 
+/*
+ * Board-specific Platform code can reimplement show_boot_progress () if needed
+ */
+void inline __show_boot_progress (int val) {}
+void inline show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progress")));
+
 #if defined(CONFIG_BOOT_RETRY_TIME) && defined(CONFIG_RESET_TO_RETRY)
 extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);              /* for do_reset() prototype */
 #endif
 
 #include <asm/io.h>
 #include <watchdog.h>
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #if (CONFIG_COMMANDS & CFG_CMD_NAND) && defined(CFG_NAND_LEGACY)
 
 #include <linux/mtd/nand_legacy.h>
 
 
 int    pcmcia_init (void);
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-void   show_boot_progress (int status);
+#ifdef CONFIG_STATUS_LED
+# include <status_led.h>
 #endif
+/*
+ * Board-specific Platform code can reimplement show_boot_progress () if needed
+ */
+void inline show_boot_progress (int val);
 
 #ifdef CONFIG_INIT_CRITICAL
 #error CONFIG_INIT_CRITICAL is deprecated!
 
 static struct tag *params;
 #endif /* CONFIG_SETUP_MEMORY_TAGS || CONFIG_CMDLINE_TAG || CONFIG_INITRD_TAG */
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 extern image_header_t header;  /* from cmd_bootm.c */
 
 
         * Check if there is an initrd image
         */
        if (argc >= 3) {
-               SHOW_BOOT_PROGRESS (9);
+               show_boot_progress (9);
 
                addr = simple_strtoul (argv[2], NULL, 16);
 
 
                if (ntohl (hdr->ih_magic) != IH_MAGIC) {
                        printf ("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS (-10);
+                       show_boot_progress (-10);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
 
                if (crc32 (0, (unsigned char *) data, len) != checksum) {
                        printf ("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS (-11);
+                       show_boot_progress (-11);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
-               SHOW_BOOT_PROGRESS (10);
+               show_boot_progress (10);
 
                print_image_hdr (hdr);
 
                        csum = crc32 (0, (unsigned char *) data, len);
                        if (csum != ntohl (hdr->ih_dcrc)) {
                                printf ("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS (-12);
+                               show_boot_progress (-12);
                                do_reset (cmdtp, flag, argc, argv);
                        }
                        printf ("OK\n");
                }
 
-               SHOW_BOOT_PROGRESS (11);
+               show_boot_progress (11);
 
                if ((hdr->ih_os != IH_OS_LINUX) ||
                    (hdr->ih_arch != IH_CPU_ARM) ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)) {
                        printf ("No Linux ARM Ramdisk Image\n");
-                       SHOW_BOOT_PROGRESS (-13);
+                       show_boot_progress (-13);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
                ulong tail = ntohl (len_ptr[0]) % 4;
                int i;
 
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
 
                /* skip kernel length and terminator */
                data = (ulong) (&len_ptr[2]);
                /*
                 * no initrd image
                 */
-               SHOW_BOOT_PROGRESS (14);
+               show_boot_progress (14);
 
                len = data = 0;
        }
                initrd_end = 0;
        }
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
        debug ("## Transferring control to Linux (at address %08lx) ...\n",
               (ulong) theKernel);
 
 /* CPU-specific hook to allow flushing of caches, etc. */
 extern void prepare_to_boot(void);
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg) show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 extern image_header_t header;          /* from cmd_bootm.c */
 
 static struct tag *setup_start_tag(struct tag *params)
         * Check if there is an initrd image
         */
        if (argc >= 3) {
-               SHOW_BOOT_PROGRESS(9);
+               show_boot_progress (9);
 
                addr = simple_strtoul(argv[2], NULL, 16);
 
 
                if (ntohl(hdr->ih_magic) != IH_MAGIC) {
                        puts("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS(-10);
+                       show_boot_progress (-10);
                        do_reset(cmdtp, flag, argc, argv);
                }
 
 
                if (crc32(0, (unsigned char *)data, len) != checksum) {
                        puts("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS(-11);
+                       show_boot_progress (-11);
                        do_reset(cmdtp, flag, argc, argv);
                }
 
-               SHOW_BOOT_PROGRESS(10);
+               show_boot_progress (10);
 
                print_image_hdr(hdr);
 
                        csum = crc32(0, (unsigned char *)data, len);
                        if (csum != ntohl(hdr->ih_dcrc)) {
                                puts("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS(-12);
+                               show_boot_progress (-12);
                                do_reset(cmdtp, flag, argc, argv);
                        }
                        puts("OK\n");
                }
 
-               SHOW_BOOT_PROGRESS(11);
+               show_boot_progress (11);
 
                if ((hdr->ih_os != IH_OS_LINUX) ||
                    (hdr->ih_arch != IH_CPU_AVR32) ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)) {
                        puts("Not a Linux/AVR32 RAMDISK image\n");
-                       SHOW_BOOT_PROGRESS(-13);
+                       show_boot_progress (-13);
                        do_reset(cmdtp, flag, argc, argv);
                }
        } else if ((hdr->ih_type == IH_TYPE_MULTI) && (len_ptr[1])) {
                ulong tail = ntohl (len_ptr[0]) % 4;
                int i;
 
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
 
                /* skip kernel length and terminator */
                data = (ulong) (&len_ptr[2]);
                len = ntohl (len_ptr[1]);
        } else {
                /* no initrd image */
-               SHOW_BOOT_PROGRESS(14);
+               show_boot_progress (14);
                len = data = 0;
        }
 
                initrd_end = 0;
        }
 
-       SHOW_BOOT_PROGRESS(15);
+       show_boot_progress (15);
 
        params = params_start = (struct tag *)gd->bd->bi_boot_params;
        params = setup_start_tag(params);
 
 #define        LINUX_MAX_ENVS          256
 #define        LINUX_MAX_ARGS          256
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-#include <status_led.h>
-#define SHOW_BOOT_PROGRESS(arg)        show_boot_progress(arg)
-#else
-#define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #define CMD_LINE_ADDR 0xFF900000       /* L1 scratchpad */
 
 #ifdef SHARED_RESOURCES
 
                                post_log("PASSED\n");
                        else {
                                post_log("FAILED\n");
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-                               show_boot_progress(-31);
-#endif
+                               show_boot_progress (-31);
                        }
                }
        }
                } else {
                        if ((*test->test) (flags) != 0) {
                                post_log("FAILED\n");
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-                               show_boot_progress(-32);
-#endif
+                               show_boot_progress (-32);
                        } else
                                post_log("PASSED\n");
                }
 
 #define LINUX_MAX_ENVS         256
 #define LINUX_MAX_ARGS         256
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 extern image_header_t header;  /* from cmd_bootm.c */
 
 extern int do_reset (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]);
         * Check if there is an initrd image
         */
        if (argc >= 3) {
-               SHOW_BOOT_PROGRESS (9);
+               show_boot_progress (9);
 
                addr = simple_strtoul (argv[2], NULL, 16);
 
 
                if (ntohl (hdr->ih_magic) != IH_MAGIC) {
                        printf ("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS (-10);
+                       show_boot_progress (-10);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
 
                if (crc32 (0, (char *) data, len) != checksum) {
                        printf ("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS (-11);
+                       show_boot_progress (-11);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
-               SHOW_BOOT_PROGRESS (10);
+               show_boot_progress (10);
 
                print_image_hdr (hdr);
 
                        csum = crc32 (0, (char *) data, len);
                        if (csum != ntohl (hdr->ih_dcrc)) {
                                printf ("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS (-12);
+                               show_boot_progress (-12);
                                do_reset (cmdtp, flag, argc, argv);
                        }
                        printf ("OK\n");
                }
 
-               SHOW_BOOT_PROGRESS (11);
+               show_boot_progress (11);
 
                if ((hdr->ih_os != IH_OS_LINUX) ||
                    (hdr->ih_arch != IH_CPU_M68K) ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)) {
                        printf ("No Linux M68K Ramdisk Image\n");
-                       SHOW_BOOT_PROGRESS (-13);
+                       show_boot_progress (-13);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
                ulong tail = ntohl (len_ptr[0]) % 4;
                int i;
 
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
 
                /* skip kernel length and terminator */
                data = (ulong) (&len_ptr[2]);
                /*
                 * no initrd image
                 */
-               SHOW_BOOT_PROGRESS (14);
+               show_boot_progress (14);
 
                data = 0;
        }
                initrd_end = 0;
        }
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
 #ifdef DEBUG
        printf ("## Transferring control to Linux (at address %08lx) ...\n",
 
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)        show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 extern image_header_t header;  /* from cmd_bootm.c */
 /*cmd_boot.c*/
 extern int do_reset (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]);
 
        /* Check if there is an initrd image */
        if (argc >= 3) {
-               SHOW_BOOT_PROGRESS (9);
+               show_boot_progress (9);
 
                addr = simple_strtoul (argv[2], NULL, 16);
 
 
                if (ntohl (hdr->ih_magic) != IH_MAGIC) {
                        printf ("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS (-10);
+                       show_boot_progress (-10);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
 
                if (crc32 (0, (char *)data, len) != checksum) {
                        printf ("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS (-11);
+                       show_boot_progress (-11);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
-               SHOW_BOOT_PROGRESS (10);
+               show_boot_progress (10);
 
                print_image_hdr (hdr);
 
                        csum = crc32 (0, (char *)data, len);
                        if (csum != ntohl (hdr->ih_dcrc)) {
                                printf ("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS (-12);
+                               show_boot_progress (-12);
                                do_reset (cmdtp, flag, argc, argv);
                        }
                        printf ("OK\n");
                }
 
-               SHOW_BOOT_PROGRESS (11);
+               show_boot_progress (11);
 
                if ((hdr->ih_os != IH_OS_LINUX) ||
                    (hdr->ih_arch != IH_CPU_MICROBLAZE) ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)) {
                        printf ("No Linux Microblaze Ramdisk Image\n");
-                       SHOW_BOOT_PROGRESS (-13);
+                       show_boot_progress (-13);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
        } else if ((hdr->ih_type == IH_TYPE_MULTI) && (len_ptr[1])) {
                ulong tail = ntohl (len_ptr[0]) % 4;
 
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
 
                /* skip kernel length and terminator */
                data = (ulong) (&len_ptr[2]);
                /*
                 * no initrd image
                 */
-               SHOW_BOOT_PROGRESS (14);
+               show_boot_progress (14);
 
                data = 0;
        }
                initrd_end = 0;
        }
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
 #ifdef DEBUG
        printf ("## Transferring control to Linux (at address %08lx) ...\n",
 
 #define        LINUX_MAX_ENVS          256
 #define        LINUX_MAX_ARGS          256
 
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-# include <status_led.h>
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress(arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 extern image_header_t header;           /* from cmd_bootm.c */
 
 extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
         * Check if there is an initrd image
         */
        if (argc >= 3) {
-               SHOW_BOOT_PROGRESS (9);
+               show_boot_progress (9);
 
                addr = simple_strtoul (argv[2], NULL, 16);
 
 
                if (ntohl (hdr->ih_magic) != IH_MAGIC) {
                        printf ("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS (-10);
+                       show_boot_progress (-10);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
 
                if (crc32 (0, (uchar *) data, len) != checksum) {
                        printf ("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS (-11);
+                       show_boot_progress (-11);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
-               SHOW_BOOT_PROGRESS (10);
+               show_boot_progress (10);
 
                print_image_hdr (hdr);
 
                        csum = crc32 (0, (uchar *) data, len);
                        if (csum != ntohl (hdr->ih_dcrc)) {
                                printf ("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS (-12);
+                               show_boot_progress (-12);
                                do_reset (cmdtp, flag, argc, argv);
                        }
                        printf ("OK\n");
                }
 
-               SHOW_BOOT_PROGRESS (11);
+               show_boot_progress (11);
 
                if ((hdr->ih_os != IH_OS_LINUX) ||
                    (hdr->ih_arch != IH_CPU_MIPS) ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)) {
                        printf ("No Linux MIPS Ramdisk Image\n");
-                       SHOW_BOOT_PROGRESS (-13);
+                       show_boot_progress (-13);
                        do_reset (cmdtp, flag, argc, argv);
                }
 
                ulong tail = ntohl (len_ptr[0]) % 4;
                int i;
 
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
 
                /* skip kernel length and terminator */
                data = (ulong) (&len_ptr[2]);
                /*
                 * no initrd image
                 */
-               SHOW_BOOT_PROGRESS (14);
+               show_boot_progress (14);
 
                data = 0;
        }
                initrd_end = 0;
        }
 
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
 
 #ifdef DEBUG
        printf ("## Transferring control to Linux (at address %08lx) ...\n",
 
 void hang (void)
 {
        puts ("### ERROR ### Please RESET the board ###\n");
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
        show_boot_progress(-30);
-#endif
        for (;;);
 }
 
 
 
 #if (CONFIG_COMMANDS & CFG_CMD_NET) && defined(CONFIG_NET_MULTI)
 
-#if defined(CONFIG_SHOW_BOOT_PROGRESS)
-# include <status_led.h>
-extern void show_ethcfg_progress (int arg);
-# define SHOW_BOOT_PROGRESS(arg)       show_boot_progress (arg)
-#else
-# define SHOW_BOOT_PROGRESS(arg)
-#endif
-
 #ifdef CFG_GT_6426x
 extern int gt6426x_eth_initialize(bd_t *bis);
 #endif
        eth_devices = NULL;
        eth_current = NULL;
 
-       SHOW_BOOT_PROGRESS(64);
+       show_boot_progress (64);
 #if defined(CONFIG_MII) || (CONFIG_COMMANDS & CFG_CMD_MII)
        miiphy_init();
 #endif
 
        if (!eth_devices) {
                puts ("No ethernet found.\n");
-               SHOW_BOOT_PROGRESS(-64);
+               show_boot_progress (-64);
        } else {
                struct eth_device *dev = eth_devices;
                char *ethprime = getenv ("ethprime");
 
-               SHOW_BOOT_PROGRESS(65);
+               show_boot_progress (65);
                do {
                        if (eth_number)
                                puts (", ");
 
                                post_log ("PASSED\n");
                        else {
                                post_log ("FAILED\n");
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-                               show_boot_progress(-31);
-#endif
+                               show_boot_progress (-31);
                        }
                }
        }
                } else {
                if ((*test->test) (flags) != 0) {
                        post_log ("FAILED\n");
-#ifdef CONFIG_SHOW_BOOT_PROGRESS
-                       show_boot_progress(-32);
-#endif
+                       show_boot_progress (-32);
                }
                else
                        post_log ("PASSED\n");