treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
[linux-block.git] / arch / mips / include / asm / mach-bcm47xx / bcm47xx.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (C) 2007 Aurelien Jarno <aurelien@aurel32.net>
4  */
5
6 #ifndef __ASM_BCM47XX_H
7 #define __ASM_BCM47XX_H
8
9 #include <linux/ssb/ssb.h>
10 #include <linux/bcma/bcma.h>
11 #include <linux/bcma/bcma_soc.h>
12 #include <linux/bcm47xx_nvram.h>
13
14 enum bcm47xx_bus_type {
15 #ifdef CONFIG_BCM47XX_SSB
16         BCM47XX_BUS_TYPE_SSB,
17 #endif
18 #ifdef CONFIG_BCM47XX_BCMA
19         BCM47XX_BUS_TYPE_BCMA,
20 #endif
21 };
22
23 union bcm47xx_bus {
24 #ifdef CONFIG_BCM47XX_SSB
25         struct ssb_bus ssb;
26 #endif
27 #ifdef CONFIG_BCM47XX_BCMA
28         struct bcma_soc bcma;
29 #endif
30 };
31
32 extern union bcm47xx_bus bcm47xx_bus;
33 extern enum bcm47xx_bus_type bcm47xx_bus_type;
34
35 void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
36                         bool fallback);
37
38 void bcm47xx_set_system_type(u16 chip_id);
39
40 #endif /* __ASM_BCM47XX_H */