Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / include / linux / nvram.h
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 #endif
24
25 #endif  /* _LINUX_NVRAM_H */