#include "scan.h"
#include "bcma_private.h"
#include <linux/bcma/bcma.h>
#include <linux/bcma/bcma_regs.h>
#include <linux/pci.h>
#include <linux/io.h>
#include <linux/dma-mapping.h>
#include <linux/slab.h>
struct bcma_device_id_name { … };
static const struct bcma_device_id_name bcma_arm_device_names[] = …;
static const struct bcma_device_id_name bcma_bcm_device_names[] = …;
static const struct bcma_device_id_name bcma_mips_device_names[] = …;
static const char *bcma_device_name(const struct bcma_device_id *id)
{ … }
static u32 bcma_scan_read32(struct bcma_bus *bus, u16 offset)
{ … }
static void bcma_scan_switch_core(struct bcma_bus *bus, u32 addr)
{ … }
static u32 bcma_erom_get_ent(struct bcma_bus *bus, u32 __iomem **eromptr)
{ … }
static void bcma_erom_push_ent(u32 __iomem **eromptr)
{ … }
static s32 bcma_erom_get_ci(struct bcma_bus *bus, u32 __iomem **eromptr)
{ … }
static bool bcma_erom_is_end(struct bcma_bus *bus, u32 __iomem **eromptr)
{ … }
static bool bcma_erom_is_bridge(struct bcma_bus *bus, u32 __iomem **eromptr)
{ … }
static void bcma_erom_skip_component(struct bcma_bus *bus, u32 __iomem **eromptr)
{ … }
static s32 bcma_erom_get_mst_port(struct bcma_bus *bus, u32 __iomem **eromptr)
{ … }
static u32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 __iomem **eromptr,
u32 type, u8 port)
{ … }
static struct bcma_device *bcma_find_core_by_index(struct bcma_bus *bus,
u16 index)
{ … }
static struct bcma_device *bcma_find_core_reverse(struct bcma_bus *bus, u16 coreid)
{ … }
#define IS_ERR_VALUE_U32(x) …
static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
struct bcma_device_id *match, int core_num,
struct bcma_device *core)
{ … }
void bcma_detect_chip(struct bcma_bus *bus)
{ … }
int bcma_bus_scan(struct bcma_bus *bus)
{ … }