Lines Matching refs:bus
36 return dev->bus->chipinfo.id == BCMA_CHIP_ID_BCM47162 && in bcma_core_mips_bcm47162a0_quirk()
37 dev->bus->chipinfo.rev == 0 && dev->id.id == BCMA_CORE_MIPS_74K; in bcma_core_mips_bcm47162a0_quirk()
43 return (dev->bus->chipinfo.id == BCMA_CHIP_ID_BCM5357 || in bcma_core_mips_bcm5357b0_quirk()
44 dev->bus->chipinfo.id == BCMA_CHIP_ID_BCM4749) && in bcma_core_mips_bcm5357b0_quirk()
45 dev->bus->chipinfo.pkg == 11 && in bcma_core_mips_bcm5357b0_quirk()
101 struct bcma_device *mdev = dev->bus->drv_mips.core; in bcma_core_mips_irq()
120 struct bcma_bus *bus = dev->bus; in bcma_core_mips_set_irq() local
121 struct bcma_device *mdev = bus->drv_mips.core; in bcma_core_mips_set_irq()
151 list_for_each_entry(core, &bus->cores, list) { in bcma_core_mips_set_irq()
163 bcma_debug(bus, "set_irq: core 0x%04x, irq %d => %d\n", in bcma_core_mips_set_irq()
167 static void bcma_core_mips_set_irq_name(struct bcma_bus *bus, unsigned int irq, in bcma_core_mips_set_irq_name() argument
172 core = bcma_find_core_unit(bus, coreid, unit); in bcma_core_mips_set_irq_name()
174 bcma_warn(bus, in bcma_core_mips_set_irq_name()
194 bcma_debug(dev->bus, "core 0x%04x, irq:%s\n", dev->id.id, interrupts); in bcma_core_mips_print_irq()
197 static void bcma_core_mips_dump_irq(struct bcma_bus *bus) in bcma_core_mips_dump_irq() argument
201 list_for_each_entry(core, &bus->cores, list) { in bcma_core_mips_dump_irq()
208 struct bcma_bus *bus = mcore->core->bus; in bcma_cpu_clock() local
210 if (bus->drv_cc.capabilities & BCMA_CC_CAP_PMU) in bcma_cpu_clock()
211 return bcma_pmu_get_cpu_clock(&bus->drv_cc); in bcma_cpu_clock()
213 bcma_err(bus, "No PMU available, need this to get the cpu clock\n"); in bcma_cpu_clock()
218 static enum bcma_boot_dev bcma_boot_dev(struct bcma_bus *bus) in bcma_boot_dev() argument
220 struct bcma_drv_cc *cc = &bus->drv_cc; in bcma_boot_dev()
226 core = bcma_find_core(bus, BCMA_CORE_NS_ROM); in bcma_boot_dev()
259 struct bcma_bus *bus = mcore->core->bus; in bcma_core_mips_nvram_init() local
263 boot_dev = bcma_boot_dev(bus); in bcma_core_mips_nvram_init()
285 struct bcma_bus *bus = mcore->core->bus; in bcma_core_mips_early_init() local
290 bcma_chipco_serial_init(&bus->drv_cc); in bcma_core_mips_early_init()
296 static void bcma_fix_i2s_irqflag(struct bcma_bus *bus) in bcma_fix_i2s_irqflag() argument
303 if (bus->chipinfo.id != BCMA_CHIP_ID_BCM4716 && in bcma_fix_i2s_irqflag()
304 bus->chipinfo.id != BCMA_CHIP_ID_BCM4748) in bcma_fix_i2s_irqflag()
307 cpu = bcma_find_core(bus, BCMA_CORE_MIPS_74K); in bcma_fix_i2s_irqflag()
308 pcie = bcma_find_core(bus, BCMA_CORE_PCIE); in bcma_fix_i2s_irqflag()
309 i2s = bcma_find_core(bus, BCMA_CORE_I2S); in bcma_fix_i2s_irqflag()
317 bcma_debug(bus, in bcma_fix_i2s_irqflag()
324 struct bcma_bus *bus; in bcma_core_mips_init() local
326 bus = mcore->core->bus; in bcma_core_mips_init()
331 bcma_debug(bus, "Initializing MIPS core...\n"); in bcma_core_mips_init()
335 bcma_fix_i2s_irqflag(bus); in bcma_core_mips_init()
337 switch (bus->chipinfo.id) { in bcma_core_mips_init()
340 bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_80211, 0); in bcma_core_mips_init()
341 bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_MAC_GBIT, 0); in bcma_core_mips_init()
342 bcma_core_mips_set_irq_name(bus, 3, BCMA_CORE_USB20_HOST, 0); in bcma_core_mips_init()
343 bcma_core_mips_set_irq_name(bus, 4, BCMA_CORE_PCIE, 0); in bcma_core_mips_init()
344 bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_CHIPCOMMON, 0); in bcma_core_mips_init()
345 bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_I2S, 0); in bcma_core_mips_init()
350 bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_80211, 0); in bcma_core_mips_init()
351 bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_MAC_GBIT, 0); in bcma_core_mips_init()
352 bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_CHIPCOMMON, 0); in bcma_core_mips_init()
356 bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_80211, 0); in bcma_core_mips_init()
357 bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_MAC_GBIT, 0); in bcma_core_mips_init()
358 bcma_core_mips_set_irq_name(bus, 3, BCMA_CORE_USB20_HOST, 0); in bcma_core_mips_init()
359 bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_CHIPCOMMON, 0); in bcma_core_mips_init()
360 bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_I2S, 0); in bcma_core_mips_init()
363 bcma_core_mips_set_irq_name(bus, 1, BCMA_CORE_PCIE, 0); in bcma_core_mips_init()
364 bcma_core_mips_set_irq_name(bus, 2, BCMA_CORE_4706_MAC_GBIT, in bcma_core_mips_init()
366 bcma_core_mips_set_irq_name(bus, 3, BCMA_CORE_PCIE, 1); in bcma_core_mips_init()
367 bcma_core_mips_set_irq_name(bus, 4, BCMA_CORE_USB20_HOST, 0); in bcma_core_mips_init()
368 bcma_core_mips_set_irq_name(bus, 0, BCMA_CORE_4706_CHIPCOMMON, in bcma_core_mips_init()
372 list_for_each_entry(core, &bus->cores, list) { in bcma_core_mips_init()
375 bcma_err(bus, in bcma_core_mips_init()
377 bus->chipinfo.id); in bcma_core_mips_init()
379 bcma_debug(bus, "IRQ reconfiguration done\n"); in bcma_core_mips_init()
380 bcma_core_mips_dump_irq(bus); in bcma_core_mips_init()