uboot中系统时钟初始化函数:system_clock_init

时钟初始化函数内容如下:

/** system_clock_init: Initialize core clock and bus clock.* void system_clock_init(void)*/
system_clock_init:ldr	r0, =ELFIN_CLOCK_POWER_BASE	@0xe0100000/* Set Mux to FIN */ldr	r1, =0x0str	r1, [r0, #CLK_SRC0_OFFSET]ldr	r1,	=APLL_LOCKTIME_VALstr	r1,	[r0, #APLL_LOCK_OFFSET]/********lxg added*********************/ldr	r0, =ELFIN_CLOCK_POWER_BASE	@0xe0100000ldr	r1,	=MPLL_LOCKTIME_VALstr	r1,	[r0, #MPLL_LOCK_OFFSET]/********end*********************//* Disable PLL */
#if defined(CONFIG_CHECK_MPLL_LOCK)
retryloop:
#endifldr	r1, =0x0str	r1, [r0, #APLL_CON0_OFFSET]ldr	r1, =0x0str	r1, [r0, #MPLL_CON_OFFSET]ldr	r1, =0x0str	r1, [r0, #MPLL_CON_OFFSET]ldr   	r1, [r0, #CLK_DIV0_OFFSET]ldr	r2, =CLK_DIV0_MASKbic	r1, r1, r2ldr	r2, =CLK_DIV0_VALorr	r1, r1, r2str	r1, [r0, #CLK_DIV0_OFFSET]ldr	r1, =APLL_VALstr	r1, [r0, #APLL_CON0_OFFSET]ldr	r1, =MPLL_VALstr	r1, [r0, #MPLL_CON_OFFSET]ldr	r1, =VPLL_VALstr	r1, [r0, #VPLL_CON_OFFSET]/*******lxg added***********************/ldr	r1, =EPLL_VALstr	r1, [r0, #EPLL_CON_OFFSET]/*******lxg added***********************/ldr   	r1, [r0, #CLK_DIV1_OFFSET]ldr	r2, =CLK_DIV1_MASKbic	r1, r1, r2ldr	r2, =CLK_DIV1_VALorr	r1, r1, r2str	r1, [r0, #CLK_DIV1_OFFSET]ldr   	r1, [r0, #CLK_DIV2_OFFSET]ldr	r2, =CLK_DIV2_MASKbic	r1, r1, r2ldr	r2, =CLK_DIV2_VALorr	r1, r1, r2str	r1, [r0, #CLK_DIV2_OFFSET]ldr   	r1, [r0, #CLK_DIV4_OFFSET]ldr	r2, =CLK_DIV4_MASKbic	r1, r1, r2ldr	r2, =CLK_DIV4_VALorr	r1, r1, r2str	r1, [r0, #CLK_DIV4_OFFSET]ldr   	r1, [r0, #CLK_DIV6_OFFSET]ldr	r2, =CLK_DIV6_MASKbic	r1, r1, r2ldr	r2, =CLK_DIV6_VALorr	r1, r1, r2str	r1, [r0, #CLK_DIV6_OFFSET]/*******end*****************//*******end*****************/
#if defined(CONFIG_EVT1)ldr	r1, =AFC_ONstr	r1, [r0, #APLL_CON1_OFFSET]
#endifmov	r1, #0x10000
1:	subs	r1, r1, #1bne	1b#if defined(CONFIG_CHECK_MPLL_LOCK)/* MPLL software workaround */ldr	r1, [r0, #MPLL_CON_OFFSET]orr     r1, r1, #(1<<28)str	r1, [r0, #MPLL_CON_OFFSET]mov	r1, #0x100
1:	subs	r1, r1, #1bne	1bldr	r1, [r0, #MPLL_CON_OFFSET]and	r1, r1, #(1<<29)cmp	r1, #(1<<29)bne 	retryloop/* H/W lock detect disable */ldr	r1, [r0, #MPLL_CON_OFFSET]bic     r1, r1, #(1<<28)str	r1, [r0, #MPLL_CON_OFFSET]
#endifldr	r1, [r0, #CLK_SRC0_OFFSET]//ldr	r2, =0x10001111 //lxg changed.ldr	r2, =0x00000111orr	r1, r1, r2str	r1, [r0, #CLK_SRC0_OFFSET]// added by terry 2012.12.4 for camera ldr r1, [r0, #CLK_SRC1_OFFSET]bic r1, r1, #(0xf<<12)orr r1, r1, #(0x1<<12) //0001 XusbXTIstr r1, [r0, #CLK_SRC1_OFFSET]#if defined(CONFIG_MCP_AC)/* CLK_SRC6[25:24] -> OneDRAM clock sel = MPLL */ldr	r1, [r0, #CLK_SRC6_OFFSET]bic	r1, r1, #(0x3<<24)orr	r1, r1, #0x01000000str	r1, [r0, #CLK_SRC6_OFFSET]/* CLK_DIV6[31:28] -> 4=1/5, 3=1/4(166MHZ@667MHz), 2=1/3 */ldr	r1, [r0, #CLK_DIV6_OFFSET]bic	r1, r1, #(0xF<<28)bic	r1, r1, #(0x7<<12)	@; ONENAND_RATIO: 0orr	r1, r1, #0x30000000str	r1, [r0, #CLK_DIV6_OFFSET]#elif defined (CONFIG_MCP_H)/* CLK_SRC6[25:24] -> OneDRAM clock sel = 00:SCLKA2M, 01:SCLKMPLL */ldr	r1, [r0, #CLK_SRC6_OFFSET]bic	r1, r1, #(0x3<<24)orr	r1, r1, #0x00000000str	r1, [r0, #CLK_SRC6_OFFSET]/* CLK_DIV6[31:28] -> 4=1/5, 3=1/4(166MHZ@667MHz), 2=1/3 */ldr	r1, [r0, #CLK_DIV6_OFFSET]bic	r1, r1, #(0xF<<28)bic	r1, r1, #(0x7<<12)	@; ONENAND_RATIO: 0orr	r1, r1, #0x00000000str	r1, [r0, #CLK_DIV6_OFFSET]	#elif defined (CONFIG_MCP_B) || defined (CONFIG_MCP_D)/* CLK_SRC6[25:24] -> OneDRAM clock sel = 00:SCLKA2M, 01:SCLKMPLL */ldr	r1, [r0, #CLK_SRC6_OFFSET]bic	r1, r1, #(0x3<<24)orr	r1, r1, #0x01000000str	r1, [r0, #CLK_SRC6_OFFSET]/* CLK_DIV6[31:28] -> 4=1/5, 3=1/4(166MHZ@667MHz), 2=1/3 */ldr	r1, [r0, #CLK_DIV6_OFFSET]bic	r1, r1, #(0xF<<28)bic	r1, r1, #(0x7<<12)	@; ONENAND_RATIO: 0orr	r1, r1, #0x30000000str	r1, [r0, #CLK_DIV6_OFFSET]#elif defined (CONFIG_MCP_SINGLE)/* CLK_DIV6 *//*ldr	r1, [r0, #CLK_DIV6_OFFSET]bic	r1, r1, #(0x7<<12)	@; ONENAND_RATIO: 0str	r1, [r0, #CLK_DIV6_OFFSET]*/ //lxg mask#endif	mov	pc, lr

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/460556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【excel技巧读书笔记001】清除打开过的文件记录

我们在工作的时候经常打开工作薄&#xff0c;这些工作薄都会在最近使用的工作薄列表看到&#xff0c;如果不希望别人看到自己打开过的记录&#xff0c;可以将最近使用的工作薄列表清空。具体步骤如下&#xff1a;1.【文件】-【选项】-【高级】-【显示】显示此数目的最近使用文档…

写一个函数,使给定的一个二维数组(3×3)转置,即行列互换

写一个函数&#xff0c;使给定的一个二维数组&#xff08;&#xff13;&#xff13;&#xff09;转置&#xff0c;即行列互换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 163 Solved: 120[Submit][Status][Web Board]Description 写一个函数&#xff0c;使给定的一个二维…

快速开发系统之前台页面 ---- NO1----登录页面

2019独角兽企业重金招聘Python工程师标准>>> 快速开发系统之前台页面 ---- NO1----登录页面 <% page language"java" contentType"text/html; charsetutf-8"pageEncoding"utf-8"%> <!DOCTYPE html> <html lang"z…

微信公众平台用户分组管理开发文档详解

本文转载至 http://www.5icool.org/a/201402/a4292.html 时间&#xff1a;2014-02-09 来源&#xff1a;互联网 开发者可以使用接口&#xff0c;对公众平台的分组进行查询、创建、修改操作&#xff0c;也可以使用接口在需要时移动用户到某个分组。 创建分组 一个公众账号&…

HP服务器F10 Function Disabled,无法使用F10安装操作系统

HP惠普服务器正确安装操作系统的方法是使用F10引导安装&#xff0c;可以自动安装操作系统&#xff0c;与硬件结合的更好&#xff0c;而且安装完成后&#xff0c;如果是windows操作系统&#xff0c;可以有HP管理页。某次&#xff0c;在使用F10引导安装操作系统的时候&#xff0c…

apt-get for ubuntu 工具简介

先介绍几个和apt-get相关的目录: /var/lib/dpkg/available 文件的内容是软件包的描述信息, 该软件包括当前系统所使用的 Debian 安装源中的所有软件包,其中包括当前系统中已安装的和未安装的软件包. /var/cache/apt/archives 目录是在用 apt-get install 安装软件时&#xff0c…

【VMCloud云平台】SCAP(一)规划

完成了System Center中的悍将SCO基础篇后&#xff0c;咱们来聊聊SCAP&#xff0c;很多人说SCAP是一个简单的组件&#xff0c;何必单独拿出来聊呢&#xff1f;我倒是认为不然&#xff0c;作为System Center中为数不多的主打Portal类型的组件&#xff08;除开组件的Web Console就…

内核配置与编译——Makefile文件分析

以下内容源于朱有鹏嵌入式课程的学习&#xff0c;如有侵权&#xff0c;请告知删除。 &#xff08;1&#xff09;Makefile中刚开始定义了kernel的内核版本号。这个版本号在模块化驱动安装时会需要用到。 &#xff08;2&#xff09;在make编译内核时&#xff0c;可以通过命令行…

android学习日记12--布局管理器

1、概述  布局管理器的用途&#xff1a;  a、可以更好的管理组件;  b、通过使用布局管理器&#xff0c;Android应用程序可以做到平台无关性 布局管理器都是ViewGroup的子类&#xff0c;所有可充当容器的父类都是ViewGroup&#xff0c;而ViewGroup也是View的子类 下面分别…

PXE装机+kickstart无人值守安装

搭建PXE远程安装服务器&#xff0c;本例集成了TFTP服务、DHCP服务&#xff0c;能够向客户机发送PXE引导程序&#xff0c;内核&#xff0c;启动菜单等。1.准备RHEL6安装源&#xff0c;网络安装源一般通过HTTP&#xff0c;FTP协议发布&#xff0c;另外页支撑NFS协议。采用FTP协议…

sqlserver

查看表结构 sp_columns tablename; sp_help tablename; DataView.RowFilter筛选DataTable中的数据 /定义一个DataView &#xff0c;得到一个全部职员的视图DataView dataView1 DbHelperSQL.QueryDataView(sql);//过滤得到一个只显示男职员的视图 dataView1.RowFilter "…

内核通识——内核中架构相关代码简介

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 1、内核代码基本分为3块 &#xff08;1&#xff09;arch目录 本目录下全是cpu架构有关的代码。本文说的就是这个目录中的内容。 &#xff08;2&#xff09;drivers目录 本目录下全是硬件的驱动。 &…

java   cxf实现webservice接口方式之不依赖spring

今天需要用cxf来实现webserive接口的需求。网上搜了搜资料基本上都是cxf结合spring的方式。整理了一份不依赖spirng的方式。学习学习 第一步&#xff1a;导入需要的jar包第二步&#xff1a;编写接口类&#xff1a;package com.tydic.test.service.cxf;public interface HelloT…

一道关于比赛胜负的Sql查询题目

以前做过一道题目&#xff0c;一直没有来得及总结下来。贴图&#xff1a; 记得以前曾经找到了两种方法&#xff0c;今天试了一下&#xff0c;还是可以的&#xff0c;贴出过程&#xff1a; 下面是具体的查询方法&#xff1a; 原来放的是图片,今天又练习了一下,附代码: 1 create …

SharePoint 2013 Nintex Workflow 工作流帮助(六)

博客地址 http://blog.csdn.net/foxdave 工作流动作 7. Call web service&#xff08;Integration分组&#xff09; 一个调用WebService的操作。 自然&#xff0c;配置项中主要是指向一个WebService进行调用。 关于配置项的说明&#xff1a; URL 必填项&#xff0c;也就是WebSe…

C#实现反射调用动态加载的DLL文件中的方法

反射的作用&#xff1a;1&#xff0e; 可以使用反射动态地创建类型的实例&#xff0c;将类型绑定到现有对象&#xff0c;或从现有对象中获取类型 2&#xff0e; 应用程序需要在运行时从某个特定的程序集中载入一个特定的类型&#xff0c;以便实现某个任务时可以用到反射。3&…

uboot的移植一一更换控制台串口

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 1、场景需求 X210开发板的SOC中一共有4个串口&#xff08;串口0~3&#xff09;&#xff0c;并且用DB9接口引出了2个串口&#xff0c;分别是串口0和串口2。其中靠近网口的是串口0&#xff0c;远离网口…

Oracle初始化参数之memory_target

一、引言&#xff1a; Oracle 9i引入pga_aggregate_target&#xff0c;可以自动对PGA进行调整&#xff1b; Oracle 10g引入sga_target&#xff0c;可以自动对SGA进行调整&#xff1b; Oracle 11g则对这两部分进行综合&#xff0c;引入memory_target&#xff0c;可以自动调整所有…

充实你的素材库!10款免费的 PSD 素材下载

由于网页设计师没有时间来自己从零开始设计&#xff0c;所以在设计项目中使用网络上已有的设计素材是常见的方式。这就是为什么我们经常会到网上搜索可以免费下载的素材。 今天&#xff0c;我们这里有几套不同的免费的 PSD 素材分享给你&#xff0c;从 iPhone 样机到用户界面等…

Linux系统下的硬盘分区、格式化与挂载

以下内容源于网络资源的学习与整理&#xff0c;如有侵权请告知删除。 参考内容 分区是什么意思_360问答 磁盘分区_360百科 挂载_360百科 fdisk对一个块设备进行分区_XZY028的博客-CSDN博客_块设备分区 怎么创建一个ramdisk块设备_XZY028的博客-CSDN博客 linux磁盘分区和挂载_苍…