summaryrefslogtreecommitdiff
path: root/arch/mips/include/asm/mach-bcm63xx/bcm63xx_nvram.h
blob: f78d725f263f17cdab66ed8c3a2bc0717e0817fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef BCM63XX_NVRAM_H
#define BCM63XX_NVRAM_H

#include <linux/types.h>

/**
 * bcm63xx_nvram_init() - initializes nvram
 * @nvram:	address of the nvram data
 *
 * Initialized the local nvram copy from the target address and checks
 * its checksum.
 */
void bcm63xx_nvram_init(void *nvram);

/**
 * bcm63xx_nvram_get_name() - returns the board name according to nvram
 *
 * Returns the board name field from nvram. Note that it might not be
 * null terminated if it is exactly 16 bytes long.
 */
u8 *bcm63xx_nvram_get_name(void);

/**
 * bcm63xx_nvram_get_mac_address() - register & return a new mac address
 * @mac:	pointer to array for allocated mac
 *
 * Registers and returns a mac address from the allocated macs from nvram.
 *
 * Returns 0 on success.
 */
int bcm63xx_nvram_get_mac_address(u8 *mac);

int bcm63xx_nvram_get_psi_size(void);

#endif /* BCM63XX_NVRAM_H */