patch-2.4.25 linux-2.4.25/include/asm-ppc64/nvram.h
Next file: linux-2.4.25/include/asm-ppc64/paca.h
Previous file: linux-2.4.25/include/asm-ppc64/naca.h
Back to the patch index
Back to the overall index
- Lines: 51
- Date:
2004-02-18 05:36:32.000000000 -0800
- Orig file:
linux-2.4.24/include/asm-ppc64/nvram.h
- Orig date:
2002-08-02 17:39:45.000000000 -0700
diff -urN linux-2.4.24/include/asm-ppc64/nvram.h linux-2.4.25/include/asm-ppc64/nvram.h
@@ -11,6 +11,12 @@
#ifndef _PPC64_NVRAM_H
#define _PPC64_NVRAM_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
@@ -36,4 +42,37 @@
#define BIN_TO_BCD(val) ((val)=(((val)/10)<<4) + (val)%10)
#endif
+#define NVRAM_SIG_SP 0x02 /* support processor */
+#define NVRAM_SIG_OF 0x50 /* open firmware config */
+#define NVRAM_SIG_FW 0x51 /* general firmware */
+#define NVRAM_SIG_HW 0x52 /* hardware (VPD) */
+#define NVRAM_SIG_SYS 0x70 /* system env vars */
+#define NVRAM_SIG_CFG 0x71 /* config data */
+#define NVRAM_SIG_ELOG 0x72 /* error log */
+#define NVRAM_SIG_VEND 0x7e /* vendor defined */
+#define NVRAM_SIG_FREE 0x7f /* Free space */
+#define NVRAM_SIG_OS 0xa0 /* OS defined */
+
+/* If change this size, then change the size of NVRAM_HEADER_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;
+};
+
+
+ssize_t read_nvram(char *buf, size_t count, loff_t *index);
+ssize_t write_nvram(char *buf, size_t count, loff_t *index);
+int write_error_log_nvram(char * buff, int length, unsigned int err_type);
+int read_error_log_nvram(char * buff, int length, unsigned int * err_type);
+int clear_error_log_nvram(void);
+void print_nvram_partitions(char * label);
+
#endif /* _PPC64_NVRAM_H */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)