> From: linux-omap-owner@xxxxxxxxxxxxxxx [mailto:linux-omap- > owner@xxxxxxxxxxxxxxx] On Behalf Of Russell King - ARM Linux > Sent: Sunday, October 11, 2009 5:30 PM > > > + clk = clk_get(&pdev->dev, "emu_core_alwon_ck"); > > > + clk_enable(clk); > > > + > > > + clk = clk_get(&pdev->dev, "emu_per_alwon_ck"); > > > + clk_enable(clk); > > > + > > > + clk = clk_get(&pdev->dev, "emu_mpu_alwon_ck"); > > > + clk_enable(clk); > > > + > > > + clk = clk_get(&pdev->dev, "emu_src_ck"); > > > + clk_enable(clk); > > > > Are these clocks really generic? It looks a lot like OMAP-specific > > stuff. Is it possible to hide these behind a single clock inside the > > platform? like "etbclock" or so that increase refcount of the others > > by 1? More than ETM/ETB could be using those omap generated clocks. Any one of the above can also source the trace clocks. >From the above clocks, 3 are real clock sources (core, per, mpu) and 'emu_src' is a virtual clock which can be set to be feed from the above (or an always on sys_clk not listed). The emu_src_clk is close to what you were commenting on for etbclock. > ATCLK - ATB interface clock > CLK - main clock > PCLKDBG - Debug APB clock or PCLK - APB clock > > I'm not sure why OMAP seems to have four clocks when the ETM has only > three clocks itself. The ALTCLK & PCLKDBG will be derived from one of the above clocks (emu_per, emu_mpu, emu_core, emu_sys) based on routing. Which one is used is selected by CM_CLKSEL1_EMU.CLKSEL_ATCLK. The main CLK comes from MPU DPLL tree. A big chuck of ETM/ETB is generic coresight. There is SOC specific emulation logic which surrounds it. Regards, Richard W. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html