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. vue中怎么使用vuex

    做一个简单的vuex如何使用的介绍: 先安装: npm i vuex --save-dev 新建一个store文件夹, 在store文件夹中建一个index.js文件,在该文件中:         i ...

  2. Listary安装+破解

    Listary 是 windows 下一个可以快速搜索所有程序,文件,并且可以快速启动程序和打开相应文件的这么一个工具,但这只是它的一个主要功能,还有其功能也是很屌的. 详细的介绍参考:[Listar ...

  3. [CSP-S模拟测试]:折纸(模拟)

    题目描述 小$s$很喜欢折纸.有一天,他得到了一条很长的纸带,他把它从左向右均匀划分为$N$个单位长度,并且在每份的边界处分别标上数字$0\sim n$.然后小$s$开始无聊的折纸,每次他都会选择一个 ...

  4. [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:lovemu' did not find a matching property.

    [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.js ...

  5. python判断list中是否包含某个元素

    python判断list中是否包含某个元素 theList = ['a','b','c'] if 'a' in theList: print 'a in the list' if 'd' not in ...

  6. PHP-执行外部程序

    备份 / 恢复数据库 exec - 执行一个外部程序(在 php 文件所在目录进行执行) 很久以前写的,很多方法是项目中的直接复制粘体用不了,只能提供下思路. 用到执行外部程序的就这一句: exec( ...

  7. 有意思的B+树漫画介绍

    转载自:伯乐专栏作者/玻璃猫,微信公众号 - 梦见 漫画:什么是b+树 这一次我们来介绍 B+ 树. 一个m阶的B树具有如下几个特征: 1.根结点至少有两个子女. 2.每个中间节点都包含k-1个元素和 ...

  8. servlet--禁用浏览器缓存

    禁用浏览器缓存:Cache-Control.pragma.expires response.setHeader("Cache-Control", "no-cache&qu ...

  9. Learning OSG programing---osgAnimation(2)

    osg::Node* createBase(const osg::Vec3& center,float radius) { ; ; *radius; *radius; osg::Vec3 v0 ...

  10. Pikachu漏洞练习平台实验——越权漏洞(八)

    1.概述 由于没有对用户权限进行严格的判断 导致低权限的账号(比如普通用户)可以去完成高权限账号(比如超管)范围内的操作 水行越权:A用户和B用户属于同一级别用户,但各自不能操作对方个人信息.A用户如 ...