This allows saving a little of space when not using ssb on Broadcom SoC.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        bool "SSB Support for Broadcom BCM47XX"
        select SYS_HAS_CPU_BMIPS32_3300
        select SSB
+       select SSB_HOST_SOC
        select SSB_DRIVER_MIPS
        select SSB_DRIVER_EXTIF
        select SSB_EMBEDDED
 
 
          If unsure, say N
 
+config SSB_HOST_SOC
+       bool "Support for SSB bus on SoC"
+       depends on SSB
+       help
+         Host interface for a SSB directly mapped into memory. This is
+         for some Broadcom SoCs from the BCM47xx and BCM53xx lines.
+
+         If unsure, say N
+
 config SSB_SILENT
        bool "No SSB kernel messages"
        depends on SSB && EXPERT
 
 ssb-$(CONFIG_SSB_PCIHOST)              += pci.o pcihost_wrapper.o
 ssb-$(CONFIG_SSB_PCMCIAHOST)           += pcmcia.o bridge_pcmcia_80211.o
 ssb-$(CONFIG_SSB_SDIOHOST)             += sdio.o
-ssb-y                                  += host_soc.o
+ssb-$(CONFIG_SSB_HOST_SOC)             += host_soc.o
 
 # built-in drivers
 ssb-y                                  += driver_chipcommon.o
 
 EXPORT_SYMBOL(ssb_bus_sdiobus_register);
 #endif /* CONFIG_SSB_PCMCIAHOST */
 
+#ifdef CONFIG_SSB_HOST_SOC
 int ssb_bus_ssbbus_register(struct ssb_bus *bus, unsigned long baseaddr,
                            ssb_invariants_func_t get_invariants)
 {
 
        return err;
 }
+#endif
 
 int __ssb_driver_register(struct ssb_driver *drv, struct module *owner)
 {
 
  * host_soc.c
  **************************************************/
 
+#ifdef CONFIG_SSB_HOST_SOC
 extern const struct ssb_bus_ops ssb_host_soc_ops;
+#endif
 
 /* scan.c */
 extern const char *ssb_core_name(u16 coreid);