summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/include
diff options
context:
space:
mode:
authortkasivajhula <tkasivajhula@nvidia.com>2010-01-19 15:45:25 -0800
committertkasivajhula <tkasivajhula@nvidia.com>2010-01-19 16:17:22 -0800
commit42c23da437b457743645733170aa8fdcbb80c4ff (patch)
tree50e43f504fc3d19bb7b0443348733262f867bf09 /arch/arm/mach-tegra/include
parent901100b1e5b1bf5a05a3d77fa04432141e6b049e (diff)
tegra power: Add Warmboot boot arg to the kernel
The new NvBootArg_Warmboot argument allows the bootloader to pass a memory region containing the warm bootloader to the kernel. Change-Id: Ib8c2a45c64ae9e61240152e91c5cbcff421ada21
Diffstat (limited to 'arch/arm/mach-tegra/include')
-rw-r--r--arch/arm/mach-tegra/include/nvbootargs.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/include/nvbootargs.h b/arch/arm/mach-tegra/include/nvbootargs.h
index 7dc32a8a3204..908c26f0ea52 100644
--- a/arch/arm/mach-tegra/include/nvbootargs.h
+++ b/arch/arm/mach-tegra/include/nvbootargs.h
@@ -44,7 +44,7 @@
* The maximum number of memory handles that may be preserved across the
* bootloader-to-OS transition. @see NvRmBootArg_PreservedMemHandle.
*/
-#define NV_BOOTARGS_MAX_PRESERVED_MEMHANDLES 2
+#define NV_BOOTARGS_MAX_PRESERVED_MEMHANDLES 3
#if defined(__cplusplus)
extern "C"
@@ -60,6 +60,7 @@ typedef enum
NvBootArgKey_ChipShmoo,
NvBootArgKey_ChipShmooPhys,
NvBootArgKey_Carveout,
+ NvBootArgKey_WarmBoot,
NvBootArgKey_PreservedMemHandle_0 = 0x10000,
NvBootArgKey_PreservedMemHandle_Num = (NvBootArgKey_PreservedMemHandle_0 +
NV_BOOTARGS_MAX_PRESERVED_MEMHANDLES),
@@ -87,6 +88,16 @@ typedef struct NvBootArgsCarveoutRec
} NvBootArgsCarveout;
/**
+ * Warmbootloader boot args. This structure only contains
+ * a mem handle key to preserve the warm bootloader
+ * across the bootloader->os transition
+ */
+typedef struct NvBootArgsWarmbootRec
+{
+ NvU32 MemHandleKey;
+} NvBootArgsWarmboot;
+
+/**
* PreservedMemHandle boot args, indexed by PreservedMemHandle_0 + n.
* All values n from 0 to the first value which does not return NvSuccess will
* be quered at RM initialization in the OS environment. If present, a new
@@ -212,6 +223,7 @@ typedef struct NvBootArgsRec
NvBootArgsFramebuffer FramebufferArgs;
NvBootArgsChipShmoo ChipShmooArgs;
NvBootArgsChipShmooPhys ChipShmooPhysArgs;
+ NvBootArgsWarmboot WarmbootArgs;
NvBootArgsPreservedMemHandle MemHandleArgs[NVBOOTARG_NUM_PRESERVED_HANDLES];
} NvBootArgs;