From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: linuxppc-dev@ozlabs.org
Subject: [PATCH 01/11] powerpc/nvram: Move things out of asm/nvram.h
Date: Mon, 2 Aug 2010 10:55:12 +1000 [thread overview]
Message-ID: <1280710522-6362-2-git-send-email-benh@kernel.crashing.org> (raw)
In-Reply-To: <1280710522-6362-1-git-send-email-benh@kernel.crashing.org>
This moves a bunch of definitions out of asm/nvram.h to the files
that use them or just outright remove completely unused stuff.
We leave the partition signatures definitions, they will be useful
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
arch/powerpc/include/asm/nvram.h | 42 +------------------------------
arch/powerpc/kernel/nvram_64.c | 21 +++++++++++++++-
arch/powerpc/platforms/chrp/time.c | 4 +++
arch/powerpc/platforms/pseries/nvram.c | 2 +
4 files changed, 28 insertions(+), 41 deletions(-)
diff --git a/arch/powerpc/include/asm/nvram.h b/arch/powerpc/include/asm/nvram.h
index 850b72f..459dc09 100644
--- a/arch/powerpc/include/asm/nvram.h
+++ b/arch/powerpc/include/asm/nvram.h
@@ -10,31 +10,7 @@
#ifndef _ASM_POWERPC_NVRAM_H
#define _ASM_POWERPC_NVRAM_H
-#include <linux/errno.h>
-
-#define NVRW_CNT 0x20
-#define NVRAM_HEADER_LEN 16 /* sizeof(struct nvram_header) */
-#define NVRAM_BLOCK_LEN 16
-#define NVRAM_MAX_REQ (2080/NVRAM_BLOCK_LEN)
-#define NVRAM_MIN_REQ (1056/NVRAM_BLOCK_LEN)
-
-#define NVRAM_AS0 0x74
-#define NVRAM_AS1 0x75
-#define NVRAM_DATA 0x77
-
-
-/* RTC Offsets */
-
-#define MOTO_RTC_SECONDS 0x1FF9
-#define MOTO_RTC_MINUTES 0x1FFA
-#define MOTO_RTC_HOURS 0x1FFB
-#define MOTO_RTC_DAY_OF_WEEK 0x1FFC
-#define MOTO_RTC_DAY_OF_MONTH 0x1FFD
-#define MOTO_RTC_MONTH 0x1FFE
-#define MOTO_RTC_YEAR 0x1FFF
-#define MOTO_RTC_CONTROLA 0x1FF8
-#define MOTO_RTC_CONTROLB 0x1FF9
-
+/* Signatures for nvram partitions */
#define NVRAM_SIG_SP 0x02 /* support processor */
#define NVRAM_SIG_OF 0x50 /* open firmware config */
#define NVRAM_SIG_FW 0x51 /* general firmware */
@@ -49,25 +25,11 @@
#define NVRAM_SIG_OS 0xa0 /* OS defined */
#define NVRAM_SIG_PANIC 0xa1 /* Apple OSX "panic" */
-/* If change this size, then change the size of NVNAME_LEN */
-struct nvram_header {
- unsigned char signature;
- unsigned char checksum;
- unsigned short length;
- char name[12];
-};
-
#ifdef __KERNEL__
+#include <linux/errno.h>
#include <linux/list.h>
-struct nvram_partition {
- struct list_head partition;
- struct nvram_header header;
- unsigned int index;
-};
-
-
extern int nvram_write_error_log(char * buff, int length,
unsigned int err_type, unsigned int err_seq);
extern int nvram_read_error_log(char * buff, int length,
diff --git a/arch/powerpc/kernel/nvram_64.c b/arch/powerpc/kernel/nvram_64.c
index 9cf197f..a8154f1 100644
--- a/arch/powerpc/kernel/nvram_64.c
+++ b/arch/powerpc/kernel/nvram_64.c
@@ -34,6 +34,25 @@
#undef DEBUG_NVRAM
+#define NVRAM_HEADER_LEN 16 /* sizeof(struct nvram_header) */
+#define NVRAM_BLOCK_LEN 16
+#define NVRAM_MAX_REQ (2080/NVRAM_BLOCK_LEN)
+#define NVRAM_MIN_REQ (1056/NVRAM_BLOCK_LEN)
+
+/* If change this size, then change the size of NVNAME_LEN */
+struct nvram_header {
+ unsigned char signature;
+ unsigned char checksum;
+ unsigned short length;
+ char name[12];
+};
+
+struct nvram_partition {
+ struct list_head partition;
+ struct nvram_header header;
+ unsigned int index;
+};
+
static struct nvram_partition * nvram_part;
static long nvram_error_log_index = -1;
static long nvram_error_log_size = 0;
@@ -432,7 +451,7 @@ static int __init nvram_setup_partition(void)
}
/* try creating a partition with the free space we have */
- rc = nvram_create_os_partition();
+ rc = nvram_create_partition("ppc64,linux", );
if (!rc) {
return 0;
}
diff --git a/arch/powerpc/platforms/chrp/time.c b/arch/powerpc/platforms/chrp/time.c
index 054dfe5..f803f4b 100644
--- a/arch/powerpc/platforms/chrp/time.c
+++ b/arch/powerpc/platforms/chrp/time.c
@@ -29,6 +29,10 @@
extern spinlock_t rtc_lock;
+#define NVRAM_AS0 0x74
+#define NVRAM_AS1 0x75
+#define NVRAM_DATA 0x77
+
static int nvram_as1 = NVRAM_AS1;
static int nvram_as0 = NVRAM_AS0;
static int nvram_data = NVRAM_DATA;
diff --git a/arch/powerpc/platforms/pseries/nvram.c b/arch/powerpc/platforms/pseries/nvram.c
index bc3c7f2..f4e4c06 100644
--- a/arch/powerpc/platforms/pseries/nvram.c
+++ b/arch/powerpc/platforms/pseries/nvram.c
@@ -27,6 +27,8 @@ static int nvram_fetch, nvram_store;
static char nvram_buf[NVRW_CNT]; /* assume this is in the first 4GB */
static DEFINE_SPINLOCK(nvram_lock);
+/* Max bytes to read/write in one go */
+#define NVRW_CNT 0x20
static ssize_t pSeries_nvram_read(char *buf, size_t count, loff_t *index)
{
--
1.6.3.3
next prev parent reply other threads:[~2010-08-02 0:55 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-02 0:55 [RFC] Clean up ppc64 nvram code Benjamin Herrenschmidt
2010-08-02 0:55 ` Benjamin Herrenschmidt [this message]
2010-08-02 0:55 ` [PATCH 02/11] powerpc/nvram: More flexible nvram_create_partition() Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 03/11] powerpc/nvram: nvram_create_partitions() now uses bytes Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 04/11] powerpc/nvram: Ensure that the partition header/block size is right Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 05/11] powerpc/nvram: Completely clear a new partition Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 06/11] powerpc/nvram: Shuffle code around in nvram_create_partition() Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 07/11] powerpc/nvram: Improve partition removal Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 08/11] powerpc/nvram: Add nvram_find_partition() Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 09/11] powerpc/nvram: Change nvram_setup_partition() to use new helper Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 10/11] powerpc/nvram: Move the log partition stuff to pseries Benjamin Herrenschmidt
2010-08-02 0:55 ` [PATCH 11/11] powerpc/nvram: Rename ppc64, linux partition to ibm, rtas-log Benjamin Herrenschmidt
2010-08-02 1:40 ` [PATCH 10/11] powerpc/nvram: Move the log partition stuff to pseries Benjamin Herrenschmidt
2010-08-02 3:50 ` [PATCH 05/11] powerpc/nvram: Completely clear a new partition Michael Ellerman
2010-08-02 3:47 ` [PATCH 03/11] powerpc/nvram: nvram_create_partitions() now uses bytes Michael Ellerman
2010-08-02 3:43 ` [PATCH 02/11] powerpc/nvram: More flexible nvram_create_partition() Michael Ellerman
2010-08-02 3:54 ` Benjamin Herrenschmidt
2010-08-02 7:02 ` Benjamin Herrenschmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1280710522-6362-2-git-send-email-benh@kernel.crashing.org \
--to=benh@kernel.crashing.org \
--cc=linuxppc-dev@ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.