Port on Board DDR Chip on QorIQ T1&2 Series

FSL(Now is NXP) used DIMM slot on T1040RDB and T2080QDS board. And my company first customized board used DIMM also.

But, due to the reliability, we decided change DIMM slot to on board DDR chip, so I need make it work.

The fsl support one powerful tool named ‘Code warrior’ and it has a plugin named ‘QCVS’. We can validate DDR configurates by it. See Ref.4 for more information.

After validate, we should make some change to U-Boot.

First add ‘CONFIG_SYS_DDR_RAW_TIMING’ defined in board config.h file.

Frequently-used GIT command

clone一个repo [crayon-69ce4ba4b8ba1148013654/] 获取并且整合另外一个repos到本地repos refs [crayon-69ce4ba4b8ba3143326231/] 上传本地repo branch到remote branch [crayon-69ce4ba4b8ba4378487357/] 获取remote的branch的更新 [crayon-69ce4ba4b8ba5363494868/] 设置local branch的tracking remote branch [crayon-69ce4ba4b8ba6607677026/]  

Something About NAPI

Reference Monitoring and Tuning the Linux Networking Stack: Receiving Data High Performance Multi-core Networked and Storage Systems for Linux SMP affinity and proper interrupt handling in Linux

Upgrade to 16GB DDR3L for T430

之前一直是买机器时直接配的8G内存,我以为是8G×1,但是后来发现是4G×2,这几天在网上查了资料,并且我们公司最近也在用DDR3的颗粒,发现DDR3L的颗粒兼容1.5V的DDR3,果断入手8G×2。 JD 499大洋入手,点此直达。同样普压内存单条369一根8G。 有关DDR3L兼容DDR3的链接:点此直达。

T2081 Board Debug Note

这两天调试了自己公司做的fsl T2081板子,遇到了一些坑,不过最后还是搞定了,记录之已备候查。 主要是时钟问题,由于我们的在一块主板上兼容了1022、1042和2081三种平台。所以SYS/DDR reference clock也是一样的,都是100M的SYS clock和66.66M的DDR clock。 之前调试1042的时候没有问题,但是在调试2081的时候,SD卡启动打印了一堆乱码,经过比较感觉乱发就是CPU送出来的启动信息,于是用示波器量之,发现每个bit为5.6us,和115200想比,差不多为对方的2/3。于是直接修改"board/freescale/t208xqds/spl.c"文件中board_init_f函数的16550的初始化,如下: [crayon-69ce4ba4b8cc5836959499/] 重新烧写便可以显示正常信息。 但是,是什么原因导致基准时钟的问题呢?因为时钟差2/3,所以我开始怀疑是否是主板上DDR和SYS的时钟芯片焊反了,不过发现并没有焊反。 后来想到,评估板是66.66/133.33的时钟,而且CPU肯定允许一定范围的时钟输入,所以这个参考时钟CPU肯定不知道,需要人工设置,于是查查BSP代码, 在"board/freescale/t208xqds/spl.c"中: [crayon-69ce4ba4b8cc8114340579/] 同样在"board/freescale/t208xqds/t208xqds.c"中也有,只是spl.c是给FPL用的,t208xqds.c是给NOR启动或者SPL使用的。 查了一下QIXIS_READ是读CPLD寄存器信息,原来FSL通过这种方法就可以在不改代码的前提下通过拨码修改参考时钟。 于是直接写死sys/ddr为100/66.66。启动后显示: [crayon-69ce4ba4b8ccc579580227/] 显示CPU的DDR clock太快,这个问题之前在T4240上遇到过,是因为RCW配置DDR pll和DDR Latency的问题,但是查了RCW配置字中的MEM_PLL_RAT和DRAM LAT都没有问题,只能跟踪代码了。 调用流程为: board/freescale/t208xqds/ddr.c: ddr_freq = get_ddr_freq(0) / 1000000; arch/powerpc/cpu/mpc85xx/speed.c: gd->mem_clk…

PPPOE upgrade freely

北京电信鸟人,免费升级宽带都不吱一声,还好我看到了 100M -> 200M Before: After: 电信接电话的小姑娘明显不够专业,还是现场施工的专业啊,妥妥的给哥换了一个光猫。    

Cross Compile net-tools

net-tools提供很多网络方面的工具,如arp、ifconfig、netstat、route、mii-tool等等 [crayon-69ce4ba4b8dd3733654167/] Reference net-tools - Project Home

Performance Benchmark Tools in Linux

CPU/RAM Performance Benchmark stress stress-ng sysbench Networking Performance Benchmark netperf Hard Disk Performance Benchmark Reference OpenBenchmarking.org netperf 与网络性能测量 How To Stress Test CPU and Memory (VM) On a Linux and Unix With…