diff options
author | Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com> | 2012-10-16 11:49:51 +0530 |
---|---|---|
committer | David Gibson <david@gibson.dropbear.id.au> | 2012-10-17 16:30:58 +1100 |
commit | 0ad10f26c94a86a0c9c3970e53f9a9f6a744055d (patch) | |
tree | 40b0d9d2ba55512071a9e713bd2db55b84a65ef6 /llfw | |
parent | 7000cbc4e14aa891adbfdcc07b157e8c9ebb026c (diff) | |
download | SLOF-qemu-slof-20121018.zip SLOF-qemu-slof-20121018.tar.gz SLOF-qemu-slof-20121018.tar.bz2 |
SLOF: Support PAPR NVRAM RTAS callsqemu-slof-20121018
BenH still need to ACK this though.
From: Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com>
* Determines size of the flash using device tree.
* Provides nvram access functions for RTAS_NVRAM
* Allocates temporary buffer of nvram in SLOF code and use that in C.
(sbrk not available)
* NVRAM_LENGTH is used at various places, make sure it is well guarded
and also use dynamically determined size once an RTAS-NVRAM is
found.
* Use NVRAM_LENGTH as a variable in case of RTAS_NVRAM, not very
elegant though
Signed-off-by: Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com>
--
Changelog from v1:
* #define cleanups suggested by Thomas/Benh
* Fix makefile which missed passing $FLAG for building llfw
* renamed vio-nvram.fs as rtas-nvram.fs
Diffstat (limited to 'llfw')
-rw-r--r-- | llfw/nvramlog.S | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/llfw/nvramlog.S b/llfw/nvramlog.S index be6bfd8..eb14c95 100644 --- a/llfw/nvramlog.S +++ b/llfw/nvramlog.S @@ -14,8 +14,7 @@ #include <southbridge.h> #include <calculatecrc.h> - -#if !defined(DISABLE_NVRAM) +#if !defined(DISABLE_NVRAM) && !defined(RTAS_NVRAM) // detect overflow: if(a<b) return a else return 0 #define NVRAM_LOG_DATA_OVERFLOW( a, b) \ @@ -342,7 +341,7 @@ ASM_ENTRY(.calPartitionHeaderChecksum) mr r4, r6 blr -#else /* defined(DISABLE_NVRAM) */ +#else /* defined(DISABLE_NVRAM) || defined(RTAS_NVRAM) */ ASM_ENTRY(.writeNVRAMbyte) ENTRY(writeLogByte) |