aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAlexander Holler <holler@ahsoftware.de>2010-02-16 13:04:53 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-05-24 15:45:00 -0400
commit92d2040d78f662f634efce7a5106bbed70b8708b (patch)
tree15ab19b8d528b7ffb42e3b39f3db7e4b67ceec70 /arch
parent830703c766ed49bc740321df55a11d19154f95d5 (diff)
ARM: 5939/1: ARM: Add option CMDLINE_FORCE to force usage of the in-kernel cmdline
Add an option to force usage of the in-kernel cmdline even if the boot loader passes another command string to the kernel. Useful if someone cannot or don't want to change the command-line options of the boot loader but is able to change the kernel. Signed-off-by: Alexander Holler <holler@ahsoftware.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/Kconfig11
-rw-r--r--arch/arm/kernel/setup.c2
2 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 2d70cece2ea2..8555bd7d7845 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1419,6 +1419,17 @@ config CMDLINE
1419 time by entering them here. As a minimum, you should specify the 1419 time by entering them here. As a minimum, you should specify the
1420 memory size and the root device (e.g., mem=64M root=/dev/nfs). 1420 memory size and the root device (e.g., mem=64M root=/dev/nfs).
1421 1421
1422config CMDLINE_FORCE
1423 bool "Always use the default kernel command string"
1424 depends on CMDLINE != ""
1425 help
1426 Always use the default kernel command string, even if the boot
1427 loader passes other arguments to the kernel.
1428 This is useful if you cannot or don't want to change the
1429 command-line options your boot loader passes to the kernel.
1430
1431 If unsure, say N.
1432
1422config XIP_KERNEL 1433config XIP_KERNEL
1423 bool "Kernel Execute-In-Place from ROM" 1434 bool "Kernel Execute-In-Place from ROM"
1424 depends on !ZBOOT_ROM 1435 depends on !ZBOOT_ROM
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index c91c77b54dea..122d999bdc7c 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -593,6 +593,7 @@ static int __init parse_tag_revision(const struct tag *tag)
593 593
594__tagtable(ATAG_REVISION, parse_tag_revision); 594__tagtable(ATAG_REVISION, parse_tag_revision);
595 595
596#ifndef CONFIG_CMDLINE_FORCE
596static int __init parse_tag_cmdline(const struct tag *tag) 597static int __init parse_tag_cmdline(const struct tag *tag)
597{ 598{
598 strlcpy(default_command_line, tag->u.cmdline.cmdline, COMMAND_LINE_SIZE); 599 strlcpy(default_command_line, tag->u.cmdline.cmdline, COMMAND_LINE_SIZE);
@@ -600,6 +601,7 @@ static int __init parse_tag_cmdline(const struct tag *tag)
600} 601}
601 602
602__tagtable(ATAG_CMDLINE, parse_tag_cmdline); 603__tagtable(ATAG_CMDLINE, parse_tag_cmdline);
604#endif /* CONFIG_CMDLINE_FORCE */
603 605
604/* 606/*
605 * Scan the tag table for this tag, and call its parse function. 607 * Scan the tag table for this tag, and call its parse function.