JZ2440V3开发板clk系统分析

博客介绍了JZ2440V3开发板,内核版本为linux - 4.16.16。阐述了项目主文件中定义的machine_desc结构体变量,开机初始化时会调用smdk2440_init_time函数,该函数又调用了s3c2440_init_clocks函数,此函数再调用s3c2410_common_clk_init函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发板:JZ2440V3

内核版本:linux-4.16.16

函数的调用关系如下:
在项目主文件中定义了machine_desc结构体变量:

MACHINE_START(S3C2440, "SMDK2440")
	/* Maintainer: Ben Dooks <ben-linux@fluff.org> */
	.atag_offset	= 0x100,

	.init_irq	= s3c2440_init_irq,
	.map_io		= smdk2440_map_io,
	.init_machine	= smdk2440_machine_init,
	.init_time	= smdk2440_init_time,
MACHINE_END

在开机初始化时会去调用smdk2440_init_time函数;现在来看这个函数做了什么东西:

static void __init smdk2440_init_time(void)
{
	s3c2440_init_clocks(12000000);	/* 根据晶振频率去设置clk */
	samsung_timer_init();			/* 去设置关于系统定时器方面的东东 */
}

s3c2440_init_clocks()函数的定义如下:

void __init s3c2440_init_clocks(int xtal)
{
	s3c2410_common_clk_init(NULL, xtal, 1, S3C24XX_VA_CLKPWR);
}

有代码可知,此函数又调用了s3c2410_common_clk_init()函数;函数定义如下:

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值