[ARM] 4736/1: Export atags to userspace and allow kexec to use customised atags
authorRichard Purdie <rpurdie@rpsys.net>
Tue, 1 Jan 2008 23:56:46 +0000 (00:56 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 4 Feb 2008 13:21:03 +0000 (13:21 +0000)
commit4cd9d6f774c7e0578bbc4409d4490d8f2097d40a
treec910cfc0def573a681fe8c75e1e35abd93496151
parentae9458d6a0956aa21cb49e1251e35a8d4dacbe6e
[ARM] 4736/1: Export atags to userspace and allow kexec to use customised atags

Currently, the atags used by kexec are fixed to the ones originally used
to boot the kernel. This is less than ideal as changing the commandline,
initrd and other options would be a useful feature.

This patch exports the atags used for the current kernel to userspace
through an "atags" file in procfs. The presence of the file is
controlled by its own Kconfig option and cleans up several ifdef blocks
into a separate file. The tags for the new kernel are assumed to be at
a fixed location before the kernel image itself. The location of the
tags used to boot the original kernel is unimportant and no longer
saved.

Based on a patch from Uli Luckas <u.luckas@road.de>

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Acked-by: Uli Luckas <u.luckas@road.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/Kconfig
arch/arm/kernel/Makefile
arch/arm/kernel/atags.c [new file with mode: 0644]
arch/arm/kernel/atags.h [new file with mode: 0644]
arch/arm/kernel/machine_kexec.c
arch/arm/kernel/relocate_kernel.S
arch/arm/kernel/setup.c
include/asm-arm/kexec.h