2019-05-27 06:55:05 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
2007-09-25 13:40:12 +00:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2007 Aurelien Jarno <aurelien@aurel32.net>
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __ASM_BCM47XX_H
|
|
|
|
#define __ASM_BCM47XX_H
|
|
|
|
|
2011-07-22 23:20:12 +00:00
|
|
|
#include <linux/ssb/ssb.h>
|
2011-07-22 23:20:14 +00:00
|
|
|
#include <linux/bcma/bcma.h>
|
|
|
|
#include <linux/bcma/bcma_soc.h>
|
2014-12-01 06:58:18 +00:00
|
|
|
#include <linux/bcm47xx_nvram.h>
|
2011-07-22 23:20:12 +00:00
|
|
|
|
|
|
|
enum bcm47xx_bus_type {
|
2011-07-22 23:20:13 +00:00
|
|
|
#ifdef CONFIG_BCM47XX_SSB
|
2011-07-22 23:20:12 +00:00
|
|
|
BCM47XX_BUS_TYPE_SSB,
|
2011-07-22 23:20:13 +00:00
|
|
|
#endif
|
2011-07-22 23:20:14 +00:00
|
|
|
#ifdef CONFIG_BCM47XX_BCMA
|
|
|
|
BCM47XX_BUS_TYPE_BCMA,
|
|
|
|
#endif
|
2011-07-22 23:20:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
union bcm47xx_bus {
|
2011-07-22 23:20:13 +00:00
|
|
|
#ifdef CONFIG_BCM47XX_SSB
|
2011-07-22 23:20:12 +00:00
|
|
|
struct ssb_bus ssb;
|
2011-07-22 23:20:13 +00:00
|
|
|
#endif
|
2011-07-22 23:20:14 +00:00
|
|
|
#ifdef CONFIG_BCM47XX_BCMA
|
|
|
|
struct bcma_soc bcma;
|
|
|
|
#endif
|
2011-07-22 23:20:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
extern union bcm47xx_bus bcm47xx_bus;
|
|
|
|
extern enum bcm47xx_bus_type bcm47xx_bus_type;
|
2007-09-25 13:40:12 +00:00
|
|
|
|
2012-10-03 11:34:20 +00:00
|
|
|
void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
|
|
|
|
bool fallback);
|
2012-02-27 23:56:13 +00:00
|
|
|
|
2013-09-19 21:40:09 +00:00
|
|
|
void bcm47xx_set_system_type(u16 chip_id);
|
|
|
|
|
2007-09-25 13:40:12 +00:00
|
|
|
#endif /* __ASM_BCM47XX_H */
|