]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - common/cmd_mfsl.c
OMAP3: Zoom2: Fix ARM relocation support
[karo-tx-uboot.git] / common / cmd_mfsl.c
index 26786aa8cd7964705aca181f615719ab98389371..00180b0f2cebda549733b72b6eed93251fca4615 100644 (file)
 #include <command.h>
 #include <asm/asm.h>
 
-#if (CONFIG_COMMANDS & CFG_CMD_MFSL)
-
-int do_frd (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_frd (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        unsigned int fslnum;
        unsigned int num;
        unsigned int blocking;
 
-       if (argc < 2) {
-               printf ("Usage:\n%s\n", cmdtp->usage);
-               return 1;
-       }
+       if (argc < 2)
+               return cmd_usage(cmdtp);
 
        fslnum = (unsigned int)simple_strtoul (argv[1], NULL, 16);
        blocking = (unsigned int)simple_strtoul (argv[2], NULL, 16);
        if (fslnum < 0 || fslnum >= XILINX_FSL_NUMBER) {
                puts ("Bad number of FSL\n");
-               printf ("Usage:\n%s\n", cmdtp->usage);
-               return 1;
+               return cmd_usage(cmdtp);
        }
 
        switch (fslnum) {
@@ -185,30 +180,26 @@ int do_frd (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
                return 1;
        }
 
-       printf ("%01x: 0x%08lx - %s %s read\n", fslnum, num,
+       printf ("%01x: 0x%08x - %s %s read\n", fslnum, num,
                blocking < 2  ? "non blocking" : "blocking",
                ((blocking == 1) || (blocking == 3)) ? "control" : "data" );
        return 0;
 }
 
-int do_fwr (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_fwr (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        unsigned int fslnum;
        unsigned int num;
        unsigned int blocking;
 
-       if (argc < 3) {
-               printf ("Usage:\n%s\n", cmdtp->usage);
-               return 1;
-       }
+       if (argc < 3)
+               return cmd_usage(cmdtp);
 
        fslnum = (unsigned int)simple_strtoul (argv[1], NULL, 16);
        num = (unsigned int)simple_strtoul (argv[2], NULL, 16);
        blocking = (unsigned int)simple_strtoul (argv[3], NULL, 16);
-       if (fslnum < 0 || fslnum >= XILINX_FSL_NUMBER) {
-               printf ("Bad number of FSL\nUsage:\n%s\n", cmdtp->usage);
-               return 1;
-       }
+       if (fslnum < 0 || fslnum >= XILINX_FSL_NUMBER)
+               return cmd_usage(cmdtp);
 
        switch (fslnum) {
 #if (XILINX_FSL_NUMBER > 0)
@@ -343,31 +334,29 @@ int do_fwr (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
                return 1;
        }
 
-       printf ("%01x: 0x%08lx - %s %s write\n", fslnum, num,
+       printf ("%01x: 0x%08x - %s %s write\n", fslnum, num,
                blocking < 2  ? "non blocking" : "blocking",
                ((blocking == 1) || (blocking == 3)) ? "control" : "data" );
        return 0;
 
 }
 
-int do_rspr (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_rspr (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        unsigned int reg = 0;
        unsigned int val = 0;
 
+       if (argc < 2)
+               return cmd_usage(cmdtp);
+
        reg = (unsigned int)simple_strtoul (argv[1], NULL, 16);
        val = (unsigned int)simple_strtoul (argv[2], NULL, 16);
-       if (argc < 1) {
-               printf ("Usage:\n%s\n", cmdtp->usage);
-               return 1;
-       }
        switch (reg) {
        case 0x1:
                if (argc > 2) {
                        MTS (val, rmsr);
                        NOP;
                        MFS (val, rmsr);
-
                } else {
                        MFS (val, rmsr);
                }
@@ -382,36 +371,34 @@ int do_rspr (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
                puts ("ESR");
                break;
        default:
+               puts ("Unsupported register\n");
                return 1;
        }
-       printf (": 0x%08lx\n", val);
+       printf (": 0x%08x\n", val);
        return 0;
 }
 
 /***************************************************/
 
 U_BOOT_CMD (frd, 3, 1, do_frd,
-               "frd     - read data from FSL\n",
+               "read data from FSL",
                "- [fslnum [0|1|2|3]]\n"
                " 0 - non blocking data read\n"
                " 1 - non blocking control read\n"
                " 2 - blocking data read\n"
-               " 3 - blocking control read\n");
-
+               " 3 - blocking control read");
 
 U_BOOT_CMD (fwr, 4, 1, do_fwr,
-               "fwr     - write data to FSL\n",
+               "write data to FSL",
                "- [fslnum [0|1|2|3]]\n"
                " 0 - non blocking data write\n"
                " 1 - non blocking control write\n"
                " 2 - blocking data write\n"
-               " 3 - blocking control write\n");
+               " 3 - blocking control write");
 
 U_BOOT_CMD (rspr, 3, 1, do_rspr,
-               "rmsr    - read/write special purpose register\n",
+               "read/write special purpose register",
                "- reg_num [write value] read/write special purpose register\n"
-               " 0 - MSR - Machine status register\n"
-               " 1 - EAR - Exception address register\n"
-               " 2 - ESR - Exception status register\n");
-
-#endif                         /* CONFIG_MICROBLAZE & CFG_CMD_MFSL */
+               " 1 - MSR - Machine status register\n"
+               " 3 - EAR - Exception address register\n"
+               " 5 - ESR - Exception status register");