![Hauke Mehrtens](/assets/img/avatar_default.png)
The chip common and mips core have to be setup early in the boot process to get the cpu clock. bcma_bus_early_register() gets pointers to some space to store the core data and searches for the chip common and mips core and initializes chip common. After that was done and the kernel is out of early boot we just have to run bcma_bus_register() and it will search for the other cores, initialize and register them. The cores are getting the same numbers as before. Acked-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Acked-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
43 lines
1.1 KiB
C
43 lines
1.1 KiB
C
#ifndef LINUX_BCMA_PRIVATE_H_
|
|
#define LINUX_BCMA_PRIVATE_H_
|
|
|
|
#ifndef pr_fmt
|
|
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
|
|
#endif
|
|
|
|
#include <linux/bcma/bcma.h>
|
|
#include <linux/delay.h>
|
|
|
|
#define BCMA_CORE_SIZE 0x1000
|
|
|
|
struct bcma_bus;
|
|
|
|
/* main.c */
|
|
int bcma_bus_register(struct bcma_bus *bus);
|
|
void bcma_bus_unregister(struct bcma_bus *bus);
|
|
int __init bcma_bus_early_register(struct bcma_bus *bus,
|
|
struct bcma_device *core_cc,
|
|
struct bcma_device *core_mips);
|
|
|
|
/* scan.c */
|
|
int bcma_bus_scan(struct bcma_bus *bus);
|
|
int __init bcma_bus_scan_early(struct bcma_bus *bus,
|
|
struct bcma_device_id *match,
|
|
struct bcma_device *core);
|
|
void bcma_init_bus(struct bcma_bus *bus);
|
|
|
|
/* sprom.c */
|
|
int bcma_sprom_get(struct bcma_bus *bus);
|
|
|
|
#ifdef CONFIG_BCMA_HOST_PCI
|
|
/* host_pci.c */
|
|
extern int __init bcma_host_pci_init(void);
|
|
extern void __exit bcma_host_pci_exit(void);
|
|
#endif /* CONFIG_BCMA_HOST_PCI */
|
|
|
|
#ifdef CONFIG_BCMA_DRIVER_PCI_HOSTMODE
|
|
void bcma_core_pci_hostmode_init(struct bcma_drv_pci *pc);
|
|
#endif /* CONFIG_BCMA_DRIVER_PCI_HOSTMODE */
|
|
|
|
#endif
|