blob: 348df49dcc9f35ad7ce4129bde4ab66d1a103b00 [file] [log] [blame]
Jonas Gorskie7e333c2012-11-07 08:25:28 +00001#ifndef BCM63XX_NVRAM_H
2#define BCM63XX_NVRAM_H
3
4#include <linux/types.h>
5
6/**
7 * bcm63xx_nvram_init() - initializes nvram
8 * @nvram: address of the nvram data
9 *
10 * Initialized the local nvram copy from the target address and checks
11 * its checksum.
Jonas Gorskie7e333c2012-11-07 08:25:28 +000012 */
Jonas Gorski97367512013-03-19 13:08:27 +000013void bcm63xx_nvram_init(void *nvram);
Jonas Gorskie7e333c2012-11-07 08:25:28 +000014
15/**
16 * bcm63xx_nvram_get_name() - returns the board name according to nvram
17 *
18 * Returns the board name field from nvram. Note that it might not be
19 * null terminated if it is exactly 16 bytes long.
20 */
21u8 *bcm63xx_nvram_get_name(void);
22
23/**
24 * bcm63xx_nvram_get_mac_address() - register & return a new mac address
25 * @mac: pointer to array for allocated mac
26 *
27 * Registers and returns a mac address from the allocated macs from nvram.
28 *
29 * Returns 0 on success.
30 */
31int bcm63xx_nvram_get_mac_address(u8 *mac);
32
Ralf Baechleb0a119f2016-01-27 20:50:36 +010033int bcm63xx_nvram_get_psi_size(void);
34
Jonas Gorskie7e333c2012-11-07 08:25:28 +000035#endif /* BCM63XX_NVRAM_H */