extern void probe_machine(void);
 
-extern char cmd_line[COMMAND_LINE_SIZE];
-
 #ifdef CONFIG_PPC_PMAC
 /*
  * Power macintoshes have either a CUDA, PMU or SMU controlling
 
         * device-tree, including the platform type, initrd location and
         * size, TCE reserve, and more ...
         */
-       of_scan_flat_dt(early_init_dt_scan_chosen_ppc, cmd_line);
+       of_scan_flat_dt(early_init_dt_scan_chosen_ppc, boot_command_line);
 
        /* Scan memory nodes and rebuild MEMBLOCKs */
        of_scan_flat_dt(early_init_dt_scan_root, NULL);
        of_scan_flat_dt(early_init_dt_scan_memory_ppc, NULL);
 
-       /* Save command line for /proc/cmdline and then parse parameters */
-       strlcpy(boot_command_line, cmd_line, COMMAND_LINE_SIZE);
        parse_early_param();
 
        /* make sure we've parsed cmdline for mem= before this */
 
 
 unsigned long klimit = (unsigned long) _end;
 
-char cmd_line[COMMAND_LINE_SIZE];
-
 /*
  * This still seems to be needed... -- paulus
  */ 
 
 /* Warning, IO base is not yet inited */
 void __init setup_arch(char **cmdline_p)
 {
-       *cmdline_p = cmd_line;
+       *cmdline_p = boot_command_line;
 
        /* so udelay does something sensible, assume <= 1000 bogomips */
        loops_per_jiffy = 500000000 / HZ;
 
 {
        ppc64_boot_msg(0x12, "Setup Arch");
 
-       *cmdline_p = cmd_line;
+       *cmdline_p = boot_command_line;
 
        /*
         * Set cache line size based on type of cpu as a default.
 
 void MMU_setup(void)
 {
        /* Check for nobats option (used in mapin_ram). */
-       if (strstr(cmd_line, "nobats")) {
+       if (strstr(boot_command_line, "nobats")) {
                __map_without_bats = 1;
        }
 
-       if (strstr(cmd_line, "noltlbs")) {
+       if (strstr(boot_command_line, "noltlbs")) {
                __map_without_ltlbs = 1;
        }
 #ifdef CONFIG_DEBUG_PAGEALLOC
 
        struct device_node *node;
        const char *property;
 
-       if (strstr(cmd_line, "console="))
+       if (strstr(boot_command_line, "console="))
                return;
        /* find the boot console from /chosen/stdout */
        if (!of_chosen)
 
 #endif
 
 #ifdef CONFIG_ADB
-       if (strstr(cmd_line, "adb_sync")) {
+       if (strstr(boot_command_line, "adb_sync")) {
                extern int __adb_probe_sync;
                __adb_probe_sync = 1;
        }
 static void __init pmac_init_early(void)
 {
        /* Enable early btext debug if requested */
-       if (strstr(cmd_line, "btextdbg")) {
+       if (strstr(boot_command_line, "btextdbg")) {
                udbg_adb_init_early();
                register_early_udbg_console();
        }
        pmac_feature_init();
 
        /* Initialize debug stuff */
-       udbg_scc_init(!!strstr(cmd_line, "sccdbg"));
-       udbg_adb_init(!!strstr(cmd_line, "btextdbg"));
+       udbg_scc_init(!!strstr(boot_command_line, "sccdbg"));
+       udbg_adb_init(!!strstr(boot_command_line, "btextdbg"));
 
 #ifdef CONFIG_PPC64
        iommu_init_early_dart();
 
        struct device_node      *cpunode;
        const u32               *value;
 
-       if (strstr(cmd_line, "nocpufreq"))
+       if (strstr(boot_command_line, "nocpufreq"))
                return 0;
 
        /* Get first CPU node */
 
                return;
 #endif
        /* Check whether the user has requested a different console. */
-       if (!strstr(cmd_line, "console="))
+       if (!strstr(boot_command_line, "console="))
                add_preferred_console("hvc", 0, NULL);
        hvc_instantiate(0, 0, ops);
 }