2011-05-09 18:56:46 +02:00
# 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
2012-07-05 22:07:32 +02:00
# define bcma_err(bus, fmt, ...) \
pr_err ( " bus%d: " fmt , ( bus ) - > num , # # __VA_ARGS__ )
# define bcma_warn(bus, fmt, ...) \
pr_warn ( " bus%d: " fmt , ( bus ) - > num , # # __VA_ARGS__ )
# define bcma_info(bus, fmt, ...) \
pr_info ( " bus%d: " fmt , ( bus ) - > num , # # __VA_ARGS__ )
# define bcma_debug(bus, fmt, ...) \
pr_debug ( " bus%d: " fmt , ( bus ) - > num , # # __VA_ARGS__ )
2011-05-09 18:56:46 +02:00
struct bcma_bus ;
/* main.c */
2012-01-31 00:03:34 +01:00
int __devinit bcma_bus_register ( struct bcma_bus * bus ) ;
2011-06-18 01:01:59 +02:00
void bcma_bus_unregister ( struct bcma_bus * bus ) ;
2011-07-23 01:20:07 +02:00
int __init bcma_bus_early_register ( struct bcma_bus * bus ,
struct bcma_device * core_cc ,
struct bcma_device * core_mips ) ;
2011-12-09 22:16:07 +01:00
# ifdef CONFIG_PM
2012-01-13 23:58:40 +01:00
int bcma_bus_suspend ( struct bcma_bus * bus ) ;
2011-12-09 22:16:07 +01:00
int bcma_bus_resume ( struct bcma_bus * bus ) ;
# endif
2011-05-09 18:56:46 +02:00
/* scan.c */
int bcma_bus_scan ( struct bcma_bus * bus ) ;
2011-07-23 01:20:07 +02:00
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 ) ;
2011-05-09 18:56:46 +02:00
2011-06-02 02:08:51 +02:00
/* sprom.c */
int bcma_sprom_get ( struct bcma_bus * bus ) ;
2011-07-23 01:20:10 +02:00
/* driver_chipcommon.c */
# ifdef CONFIG_BCMA_DRIVER_MIPS
void bcma_chipco_serial_init ( struct bcma_drv_cc * cc ) ;
# endif /* CONFIG_BCMA_DRIVER_MIPS */
/* driver_chipcommon_pmu.c */
u32 bcma_pmu_alp_clock ( struct bcma_drv_cc * cc ) ;
2011-07-23 01:20:11 +02:00
u32 bcma_pmu_get_clockcpu ( struct bcma_drv_cc * cc ) ;
2011-07-23 01:20:10 +02:00
2012-07-17 16:26:41 +02:00
# ifdef CONFIG_BCMA_SFLASH
/* driver_chipcommon_sflash.c */
int bcma_sflash_init ( struct bcma_drv_cc * cc ) ;
2012-08-10 21:23:53 +02:00
extern struct platform_device bcma_sflash_dev ;
2012-07-17 16:26:41 +02:00
# else
static inline int bcma_sflash_init ( struct bcma_drv_cc * cc )
{
bcma_err ( cc - > core - > bus , " Serial flash not supported \n " ) ;
return 0 ;
}
# endif /* CONFIG_BCMA_SFLASH */
# ifdef CONFIG_BCMA_NFLASH
/* driver_chipcommon_nflash.c */
int bcma_nflash_init ( struct bcma_drv_cc * cc ) ;
2012-08-12 13:08:05 +02:00
extern struct platform_device bcma_nflash_dev ;
2012-07-17 16:26:41 +02:00
# else
static inline int bcma_nflash_init ( struct bcma_drv_cc * cc )
{
bcma_err ( cc - > core - > bus , " NAND flash not supported \n " ) ;
return 0 ;
}
# endif /* CONFIG_BCMA_NFLASH */
2011-05-09 18:56:46 +02:00
# 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 */
2012-01-31 00:03:33 +01:00
/* driver_pci.c */
u32 bcma_pcie_read ( struct bcma_drv_pci * pc , u32 address ) ;
2011-07-05 19:48:26 +02:00
# ifdef CONFIG_BCMA_DRIVER_PCI_HOSTMODE
2012-01-31 00:03:35 +01:00
bool __devinit bcma_core_pci_is_in_hostmode ( struct bcma_drv_pci * pc ) ;
2012-01-31 00:03:34 +01:00
void __devinit bcma_core_pci_hostmode_init ( struct bcma_drv_pci * pc ) ;
2011-07-05 19:48:26 +02:00
# endif /* CONFIG_BCMA_DRIVER_PCI_HOSTMODE */
2011-05-09 18:56:46 +02:00
# endif