Fix incorrect use of getenv() before relocation
[pandora-u-boot.git] / board / amirix / ap1000 / ap1000.c
index fcf2698..64de04c 100644 (file)
@@ -37,8 +37,8 @@ int board_pre_init (void)
 /** serial number and platform display at startup */
 int checkboard (void)
 {
-       char *s = getenv ("serial#");
-       char *e;
+       char buf[64];
+       int l = getenv_f("serial#", buf, sizeof(buf));
 
        /* After a loadace command, the SystemAce control register is left in a wonky state. */
        /* this code did not work in board_pre_init */
@@ -115,17 +115,19 @@ int checkboard (void)
 
        puts ("Serial#: ");
 
-       if (!s) {
+       if (l < 0) {
                printf ("### No HW ID - assuming AMIRIX");
        } else {
-               for (e = s; *e; ++e) {
-                       if (*e == ' ')
+               int i;
+
+               for (i = 0; i < l; ++i) {
+                       if (buf[i] == ' ') {
+                               buf[i] = '\0';
                                break;
+                       }
                }
 
-               for (; s < e; ++s) {
-                       putc (*s);
-               }
+               puts(buf);
        }
 
        putc ('\n');
@@ -136,9 +138,11 @@ int checkboard (void)
 
 phys_size_t initdram (int board_type)
 {
-       char *s = getenv ("dramsize");
+       char buf[64];
+       int i = getenv_f("dramsize", buf, sizeof(buf));
 
-       if (s != NULL) {
+       if (i > 0) {
+               char *s = buf;
                if ((s[0] == '0') && ((s[1] == 'x') || (s[1] == 'X'))) {
                        s += 2;
                }
@@ -167,7 +171,7 @@ unsigned int get_device (void)
 /*
    This function loads FPGA configurations from the SystemACE CompactFlash
 */
-int do_loadace (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_loadace (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        unsigned char *p = (unsigned char *) AP1000_SYSACE_REGBASE;
        int cfg;
@@ -247,7 +251,7 @@ int do_loadace (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
   *     -1 if failed
   * </pre>
   */
-int do_swconfigbyte (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_swconfigbyte (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        unsigned char *sector_buffer = NULL;
        unsigned char input_char;
@@ -311,7 +315,7 @@ int do_swconfigbyte (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
 
 #define ONE_SECOND 1000000
 
-int do_pause (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_pause (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        int pause_time;
        unsigned int delay_time;
@@ -345,7 +349,7 @@ int do_pause (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
        return 0;
 }
 
-int do_swreconfig (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_swreconfig (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        printf ("Triggering software reconfigure (software config byte is 0x%02x)...\n",
                *((unsigned char *) (SW_BYTE_SECTOR_ADDR + SW_BYTE_SECTOR_OFFSET)));
@@ -365,7 +369,7 @@ int do_swreconfig (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
 #define TEMP_ETHERM_BIT 0x02
 #define TEMP_LTHERM_BIT 0x01
 
-int do_temp_sensor (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
+int do_temp_sensor (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 {
        char cmd;
        int ret_val = 0;
@@ -670,14 +674,14 @@ U_BOOT_CMD (temp, 6, 0, do_temp_sensor,
            "        - Set config options.\n"
            "\n"
            "All values can be decimal or hex (hex preceded with 0x).\n"
-           "Only whole numbers are supported for external limits.\n");
+           "Only whole numbers are supported for external limits.");
 
 #if 0
 U_BOOT_CMD (loadace, 2, 0, do_loadace,
            "load fpga configuration from System ACE compact flash",
            "N\n"
            "    - Load configuration N (0-7) from System ACE compact flash\n"
-           "loadace\n" "    - loads default configuration\n");
+           "loadace\n" "    - loads default configuration");
 #endif
 
 U_BOOT_CMD (swconfig, 2, 0, do_swconfigbyte,
@@ -685,19 +689,19 @@ U_BOOT_CMD (swconfig, 2, 0, do_swconfigbyte,
            "N [ADDRESS]\n"
            "    - set software configuration byte to N, optionally use ADDRESS as\n"
            "      location of buffer for flash copy\n"
-           "swconfig\n" "    - display software configuration byte\n");
+           "swconfig\n" "    - display software configuration byte");
 
 U_BOOT_CMD (pause, 2, 0, do_pause,
            "sleep processor until any key is pressed with poll time of N seconds",
            "N\n"
            "    - sleep processor until any key is pressed with poll time of N seconds\n"
            "pause\n"
-           "    - sleep processor until any key is pressed with poll time of 1 second\n");
+           "    - sleep processor until any key is pressed with poll time of 1 second");
 
 U_BOOT_CMD (swrecon, 1, 0, do_swreconfig,
            "trigger a board reconfigure to the software selected configuration",
            "\n"
-           "    - trigger a board reconfigure to the software selected configuration\n");
+           "    - trigger a board reconfigure to the software selected configuration");
 
 int board_eth_init(bd_t *bis)
 {