static void __init tnetd7300_init_clocks(void) { prom_printf("tnetd7300_init_clocks() called \n"); u32 *bootcr = (u32 *)ioremap_nocache(AR7_REGS_DCL, 4); prom_printf("clocks struct tnetd7300_clocks about to be set\n"); struct tnetd7300_clocks *clocks = (struct tnetd7300_clocks *)ioremap_nocache(AR7_REGS_POWER + 0x20, sizeof(struct tnetd7300_clocks)); prom_printf("clocks struct tnetd7300_clocks set\n"); ar7_bus_clock = tnetd7300_get_clock(BUS_PLL_SOURCE_SHIFT, &clocks->bus, bootcr, ar7_afe_clock); if (*bootcr & BOOT_PLL_ASYNC_MODE) { ar7_cpu_clock = tnetd7300_get_clock(CPU_PLL_SOURCE_SHIFT, &clocks->cpu, bootcr, ar7_afe_clock); } else { ar7_cpu_clock = ar7_bus_clock; } tnetd7300_set_clock(USB_PLL_SOURCE_SHIFT, &clocks->usb, bootcr, 48000000); prom_printf("Before tnetd7300_set_clock() \n"); if (ar7_dsp_clock == 250000000) tnetd7300_set_clock(DSP_PLL_SOURCE_SHIFT, &clocks->dsp, bootcr, ar7_dsp_clock); prom_printf("After tnetd7300_set_clock() \n"); iounmap(clocks); iounmap(bootcr); } ON BOOT: tnetd7300_init_clocks() called clocks struct tnetd7300_clocks about to be set clocks struct tnetd7300_clocks set