1 #ifndef _LINUX_NVRAM_H 2 #define _LINUX_NVRAM_H 3 4 #include <linux/ioctl.h> 5 6 /* /dev/nvram ioctls */ 7 #define NVRAM_INIT _IO('p', 0x40) /* initialize NVRAM and set checksum */ 8 #define NVRAM_SETCKS _IO('p', 0x41) /* recalculate checksum */ 9 10 /* for all current systems, this is where NVRAM starts */ 11 #define NVRAM_FIRST_BYTE 14 12 /* all these functions expect an NVRAM offset, not an absolute */ 13 #define NVRAM_OFFSET(x) ((x)-NVRAM_FIRST_BYTE) 14 15 #ifdef __KERNEL__ 16 /* __foo is foo without grabbing the rtc_lock - get it yourself */ 17 extern unsigned char __nvram_read_byte(int i); 18 extern unsigned char nvram_read_byte(int i); 19 extern void __nvram_write_byte(unsigned char c, int i); 20 extern void nvram_write_byte(unsigned char c, int i); 21 extern int __nvram_check_checksum(void); 22 extern int nvram_check_checksum(void); 23 extern void __nvram_set_checksum(void); 24 extern void nvram_set_checksum(void); 25 #endif 26 27 #endif /* _LINUX_NVRAM_H */ 28