error

1.procixx设置800M,uboot中是720M

了解到整个过程是,当procixx配置后,通过FSBL中的ps_init.c反应出来

// ARM_PLL_FDIV = 48
    // [22:16]
    EMIT_MASKWRITE(SLCR_REG_BASE + 0x100, 0x007f0000U, 0x00300000U),
    // ARM_PLL_CLKOUT0_DIVISOR = 2
    // [6:0]
    EMIT_MASKWRITE(SLCR_REG_BASE + 0x104, 0x0000007fU, 0x00000002U),

因为在procixx中设置的输入频率为33.3333M

33.3333/2*48=799.999

为什么在uboot中 clk dump得到的是720M呢

因为虽然procixx中设置了,但是我fmxx_nb1708_defconfig中使用的是fmxx-ql7010.dts

fmxx-ql7010.dts又包含了fmxx-psoc.dtsi

fmxx-psoc.dtsi中重新将clk设置为30000000

slcr: slcr@e0026000 {
            u-boot,dm-pre-reloc;
            #address-cells = <1>;
            #size-cells = <1>;
            compatible = "fmxx,psoc-slcr", "syscon", "simple-mfd";
            reg = <0xE0026000 0x1000>;
            ranges;

clkc: clkc@100 {
                u-boot,dm-pre-reloc;
                compatible = "fmxx,psoc-clkc";
                reg = <0x100 0x100>;
                #clock-cells = <1>;
                ps-clk-frequency = <30000000>;

30/2*48=720

解决办法就是,使用fmxx-ql7010-ai.dts,里面没有对ps-clk-frequency的定义,使用FSBL中定义的33.3333。

另/home/zhangyi/work/psoc_linux/u-boot-2018.07-fmxx-idyll/board/fmxx/fmql/Makefile

obj-y    += board.o
#obj-y    += ps_init_zb1.o
#obj-y    += ps_init_zb2.o
#obj-y    += ps_init_zb3.o
#obj-y    += ps_init_zb4.o
#obj-y    += ps_init_ai_demo.o
如果将全部都注释掉,那么在board.c中需要将ps_init();注释掉,因为其定义在ps_init_zbx中。

int board_early_init_f(void)
{
    //ps_init();
#ifdef CONFIG_DEBUG_UART
    debug_uart_init();
#endif

clocks_init();
    return 0;
}

是为记。

procixx 时钟的坑的更多相关文章

  1. STM32 时钟配置的坑

    今天在调试公司的一款产品的时候发现8M的晶振用完了,于是找了一个16M的替代 坑爹的就在这里,明明已经把时钟按照时钟树配置好了,但是串口等外设一直无法正常工作 折腾了一下午,终于发现这位老兄的文章ht ...

  2. procixx和最近调试的坑

    流程: 1.procixx/vivado 配置soc硬件信息,导出FSBL.out: 2.配置uboot dts,生成u-boot (需要打开的硬件 配置为status = "okay&qu ...

  3. 与webview打交道中踩过的那些坑

    随着HTML5被越来越多的用到web APP的开发当中,webview这一个神器便日渐凸显出重要地位.简要的说,webview能够在移动应用中开辟出一个窗口,在里面显示html页面,css以及js代码 ...

  4. jquery图片时钟

    一.生成数字时钟 <script src="http://code.jquery.com/jquery-latest.js"></script> <s ...

  5. 与webview打交道踩过的坑

    随着HTML5被越来越多的用到web APP的开发当中,webview这一个神器便日渐凸显出重要地位.简要的说,webview能够在移动应用中开辟出一个窗口,在里面显示html页面,css以及js代码 ...

  6. 2-STM32带你入坑系列(点亮一个灯--Keil)

    1-STM32带你入坑系列(STM32介绍) 首先是安装软件 这一节用Kei来实现,需要安装MDK4.7这个软件,怎么安装,自己百度哈.都学习32的人了,不会连个软件都不会安装吧....还是那句话 没 ...

  7. FUTABA 13-ST-84GINK + DS3231 时钟

    收拾东西的时候又看到之前收拾的vfd相关的盒子,偶然又加的群,又买了两种屏试水. 大的买屏还送vfd变压器,这玩意卖的少,一个5块,不买血亏!不知道什么时候开始早已没有DIY是省钱这种观念了.草... ...

  8. 【FZSZ2017暑假提高组Day2】圆盘时钟

    [问题描述] 作为出题人的小Z相信大家对上图这样的圆盘时钟都不会陌生——在理想圆盘时钟上,秒针每一分钟转一圈,分针每一小时转一圈,时针每12小时转一圈,它们均是匀速转动的,在0点时三条针均指向表盘上的 ...

  9. 微信小程序踩坑集合

    1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教程:https://mp.weixin.qq.com/debu ...

随机推荐

  1. @ApiModelProperty

    @ApiModelProperty用法   @ApiModelProperty()用于方法,字段: 表示对model属性的说明或者数据操作更改 value–字段说明 name–重写属性名字 dataT ...

  2. OC + RAC (二) Command 命令的用法

    -(void)_test2{ ///////////////////////////////////////Command 命令的用法 注意使用command.executionSignals去订阅时 ...

  3. POJ 2253 Frogger ( 最短路变形 || 最小生成树 )

    题意 : 给出二维平面上 N 个点,前两个点为起点和终点,问你从起点到终点的所有路径中拥有最短两点间距是多少. 分析 : ① 考虑最小生成树中 Kruskal 算法,在建树的过程中贪心的从最小的边一个 ...

  4. window.frames[iframe].document 在ie可以用,在360、火狐中都不兼容?

    <iframe id="myf" scrolling="auto" frameborder="0" src="" ...

  5. php面试专题---19、MySQL高可扩展和高可用考点

    php面试专题---19.MySQL高可扩展和高可用考点 一.总结 一句话总结: 要区别分区和分库分表,分区的话对用户是透明的,分库分表的话需要程序员做点事情,主从数据库同步的话借助的是二进制日志 1 ...

  6. HTML5 新属性的讲解

    1.选择器: 标签选择器: class选择器: id选择器: 后代选择器:div li div下所有li 子代选择器:div>li div的所有子一代 li 元素 交集选择器:div.class ...

  7. git subtree模块化代码管理

    Git Subtree 的原理 首先,你有两个伟大的项目——我们叫他P1项目.P2项目,还有一个牛逼的要被多个项目共用的项目——我们叫他S项目.我们通过简要讲解使用Subtree来同步代码的过程来解释 ...

  8. php基础函数,数组

    1·字符串的处理: 2·爆炸函数(explode()): 里面填两个参数把.炸掉,在abc里 炸出来的数组 粘回去(implode()): 两个参数同上 3·截取字符串(substr()) 里面放三个 ...

  9. Python笔记(十七)_面向对象编程

    面向对象编程 概念:简称OOP,是一种程序设计思想:OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数 面向对象的设计思想:抽象出类class,根据类class创建实例对象instan ...

  10. 20190825 On Java8 第十二章 集合

    第十二章 集合 java.util 库提供了一套相当完整的集合类(collection classes)来解决这个问题,其中基本的类型有 List . Set . Queue 和 Map. 不要在新代 ...