how to get or initialize clock in L4Linux

Martin Schröder martin.schroeder at openlimit.com
Fri Aug 8 15:53:22 CEST 2014


Hi Yunchuan,

Am 08.08.2014 um 12:33 schrieb Yunchuan Geng:
> Hi Martin,
>
> Thanks for the response.
>
> First I do not know how to do it from U-Boot.

in U-Boot you can write to registers by the mw command. A sequence of 
them in the bootcmd can do the clock setup. Or you add i2c support to 
U-Boot and it will do the initialisation for you. This works at least 
for ethernet on my board.

> But I found it might
> better to do it in mach_setup.c where  l4x_arm_devices_init() is called.

Of course you can do it from within l4linux but you need to expose the 
registers of the Clock Generator Block to l4linux. The main drawback of 
this solution is that this l4linux task can now modify the clocking of 
every other HW device even if it is caged in another l4-task.

> However, I checked the implementation of native linux, it use Device
> Tree Blob to feed initialize process with data. It would be great if I
> could load dtb into L4Linux too. Otherwise, a lot of modification job
> are needed.
>
> I noticed in this tread, you have asked a question about dtb, and Adam
> give a answer.
> https://www.mail-archive.com/l4-hackers%40os.inf.tu-dresden.de/msg06539.html
>
> Did you get success?

Not yet. I noticed that feature was introduced first in the latest 
snapshot so I am still busy upgrading my workspace.

Martin



More information about the l4-hackers mailing list