- 博客(37)
- 收藏
- 关注
原创 qemu跑龙芯2K问题记录
1.下载qemu;2…/configure的时候会报错报错1:ERROR: zlib check failedMake sure to have the zlib libs and headers installed.解决办法:sudo apt-get install zlib*sudo apt-get install libglib2.0-devsudo apt-get install libtool报错2:ERROR: pixman >= 0.21.8 not present.P
2022-04-08 19:03:16 744
原创 龙芯资源合集
龙芯交叉编译器1a,1b : pmon编译器链接(百度网盘)gcc-4.3-ls32:https://pan.baidu.com/s/1hP9cPPsB1XPUUZqmjpvhvA 内核编译器gcc-3.4.6-2f链接:https://pan.baidu.com/s/1GFcGb5qXbrfQaUMDZJFqEw2k,2j,2h: pmon编译器gcc-4.40-pmon链接:https://pan.baidu.com/s/1l9vf87vXPS2JrzsUOs_6gw
2022-01-17 10:09:46 1075 2
原创 龙芯编译驱动
2k上编译模块化编译驱动方法(有些客户的设备一直在更新,编译到内核会花费很长时间解决编译问题,而模块化编译,对于验证板卡方案,相对较快): 1.在2k机器上编译内核源码(或者3a机器上,若是刚安装的2k系统,编译内核还想要ncurses库); 2.进入到驱动所在源码目录,执行make -C kernel_path M=/driver_path modules(其中kernel_path为内核所在绝对路径,driver_path为驱动所在路径)...
2021-12-23 20:56:27 1071
原创 pmon打印信息
2k pmon打印信息如下:initserial good ^_^...Soft CLK SEL adjust begin10010c85MEM :10010c87DC :ÙØØÙØÑÜÛÇÄØh{6022:YþÙÚØÙØÑÜÛÇÄØhû6022:YþÙÚØÙØÑÜÛUSE internel SATA ref clock00001fffff9f0401PMON2000 MIPS Initializing. Standby...cache enable don
2021-09-30 20:57:55 496
原创 pmon和内核编译
pmon编译1.本地编译make cleancd zloader.ls2kmake cfgmake tgt=rom2.交叉编译cd zloader.ls2kmake cfg &&make tgt=rom CROSS_COMPILE=/gcc-4.4.0-pmon/bin/mipsel-linux-make dtb 会生成gzrom-dtb.bin,即为pmon二进制;内核编译1.内核本地编译cp arch/mips/configs/loongson2k1000_
2021-09-30 17:46:14 284
原创 pmon常用操作
常用命令1.查看设备命令devls,其中syn0和syn1为两路gmac网卡,usbn为usb设备(n为第几个usb设备,可以为0~4),igb为pcie网卡,wdn为sata存储盘(n为第几个sata设备,可以为0-4);2.更新pmon命令,根据pmon存储位置的不同,可以分很多中情况,如果从fat格式的u盘里更新带dtb的pmon,命令如下:load -rf 0xbfc00000 /dev/fs/fat@usb0/gzrom-dtb.bin其中u盘中二级三级目录需要/号加目录进行依次叠加,文
2021-09-28 15:05:34 2700
原创 内存之压力测试
linux下内存测试方法:第一步:free查看系统/ # free total used free shared buffers Mem: 7688848 1477184 6211664 0 0 Swap: 0 0 0Total: 7688848 1477
2021-06-21 10:14:30 2970
原创 ejtag使用指南
1.ejtag是什么??ejtag是一种mips下的软件调试工具,兼顾程序烧录,问题定位,死机排故等功能,常用的操作包括烧录pmon,内核,检测cpu执行,读取外设状态等;2.参考文档:doc/目录下的文档,有硬件连接图和软件操作指导,比较全;3.常用操作如下pmon烧录下面以2K1000 linux下为例子(win下类似)1.进入到ejtag,如下:cd /home/jdm/ejtag/ejtag-debug2.执行ejtag程序,如下:./ejtag_debug_usb cpu0
2021-04-30 10:35:30 2063 2
原创 龙芯内存大小配置
用过龙芯的小朋友应该都知道,以前的cpu,调试完Pmon下s1和内存参数之后,内核几乎不用改,一下子就可以跑通,为什么现在2k下既要配置pmon,也要配置什么dts, wf! 美其名曰:遵守大内核规范,要理解这个问题,首先还得看一下源码中的处理,以2h和2k为例分别解析:2h比较老,骨灰级玩家无需解释,以前帮客户适配板卡,pmon下搞一搞s1和参数,嗖一下,内核不用怎么配,就正常启动,压力测试也能过,内存大小也能自动适配,原因是内核里解析了pmon传递的boot_param结构体中的emap成员,该成员里
2021-03-13 17:28:15 810
原创 linux之常用命令
#sshscp -r root@43.224.34.73:/home/lk /rootscp -r /root/lk root@43.224.34.73:/home/lk/cpfilessh jdm@10.30.141.17#systemdmidecode#kernel debugulimit -a #show memory stack size and so on informationsulimit -s xxx #change sizewatch -n 1 “cat xxx”mkf
2021-02-26 21:11:21 141
原创 读书笔记之基于龙芯的linux内核探索解析
1.1龙芯处理器简介中央处理器(cpu)分为复杂指令集计算机(cisc)和精简指令集计算机(risc),cisc具有指令集复杂而庞大,指令字不等长,寻址方式复杂,计算指令操作数可以是内存等特征,典型代表有x86.risc具有指令集精简而高效,指令字等长,寻址方式简明,计算指令操作必须是寄存器等特征,典型代表有arm,mips,power.两者各有其优劣.龙芯cpu属于无互锁流水阶段微型计算机(mips)家族,是risc精简指令集体系结构的一种.产品以32位和64位单核及多核为主,主要面向网络安全,高端嵌
2021-02-26 21:07:31 2288
原创 pcie扫盲
基本概念:1.宽度:PCIe标准支持X1、X2、X4、X8等链路宽度;2.链路速率:由两个设备所支持的最高速率决定,gen1,gen2,gen3;软件可改,但是一般gen2有问题,降低速效果不大;3.链路翻转:又叫链路反转,比如一个x4的设备,正常的接法是lan0到lan3,如下图左侧电路接法,链路反转的接法如下图右侧接法.设计链路反转的原因有多个,硬件布线,绕lan0通信故障的情况; 下面是2k上软件修改方法:pmon文件中Targets/LS2K/ls2k/start.S,以pcie1为例子
2021-02-25 16:40:31 1834 1
转载 buildroot
龙芯 buildroot 使用详解文章转载出处:https://blog.csdn.net/tongxin1101124/article/details/102514589一般文件系统都要包含很多第三方软件,如:busybox,tftp,apache,PHP,DNS,qt等等,为了避免繁琐的移植工作,buildroot应运而生,通过menuconfig来配置我们需要的功能,不需要的去掉,再执行make编译,buildroot就会自动从指定的服务器上下载源码包,自动编译,自动搭建成我们所需要的嵌入式文件系
2021-02-25 15:46:50 532 1
原创 linux之pwm分析
以2K1000为例:pmon下的pwm使能:文件Targets/LS2K/ls2k/start.S; li t0, 0xbfe10420 //sdio lw t2, 0x0(t0) lui t1, 0x10 //enable pwm0, pwm1, i2c0, i2c1, nand, sata, i2s, gmac1 //no hda, no ac97 ori t1, t1, 0x3f48 //用于控制使能相应设备,其中12~15位用于使能pwm0
2021-02-05 17:07:30 1329
原创 gpio中断
资源出处(防删除):https://blog.csdn.net/tongxin1101124/article/details/90703917龙芯2K1000有60个GPIO引脚,GPIO 引脚与中断引脚的对应关系如下备注:共享中断的GPIO只支持电平触发模式。GPIO的一个共享中断号里有两个以上GPIO时,此时只支持高电平触发模式GPIO 引脚 中断引脚 中断号 说明GPIO0 Gpio_int0 68 专用 GPIO 引脚,与中断引脚一一对应GPIO1 Gpio_int1 69 专用 GPIO
2021-01-17 19:46:45 4443
原创 nand相关
以下部分内容摘自:https://blog.csdn.net/tongxin1101124/article/details/110231562(有现成的东西,嘻嘻嘻,搬运一下,防止到时候删了,哈哈哈)一、pmon下通过devcp文件系统和内核镜像放到nand分区操作流程1、启动到pmon命令行下(vmlinuz为编入ramdisk的内核) a、mtd_erase /dev/mtd0r b、set append "console=ttyS0,115200 rdinit=/sbin/ini
2021-01-17 17:28:50 547
原创 git常用操作
提交代码git push origin master显示当前源码loggit log --graph生成补丁git diff commit1 commit2 >kernel.patch打补丁git apply kernel.patch生成两个版本之间的补丁,并指定生成到目录里git format-patch commit1...commit2 -o kernel_patch_dir #export patch ,kernel_patch_dir is the dir of s
2021-01-01 19:22:49 85
原创 ubuntu上搭建rtt开发环境并编译2K1000 bsp
系统介绍:RT-Thread是一个集实时操作系统(RTOS)内核、中间件组件的物联网操作系统;rt-thread特点:资源占用极低,超低功耗设计,组件丰富,支持高性能应用,跨平台;类似vxWorks 6.8bsp;参考书记:<<嵌入式实时操作系统:RT-Thread设计与实现>>rtt创始人熊谱翔编写;rt-thread官网:https://www.rt-thread.org/源码地址:https://github.com/RT-Thread/rt-thread.
2020-11-03 22:03:16 1500
原创 龙芯上的温度传感器
这块驱动不通的内核实现方式类似,但是驱动模型和系统下读取的方式略有差别,2.6.32内核(下面以2h为例分析)linux下驱动文件:arch/mips/loongson2/loongson2hsoc/temperature.c //温度采集具体实现#define CPU0_SENSOR_BASE 0x900000001fef0000static void temp_handler(void){ unsigned char temp; unsigned int tm
2020-11-02 22:07:03 1082
原创 通过固件传递自定义启动参数给内核
代码如下:static int data_x = 1024;static int data_y = 768;static int __init datax_setup(char* str){ data_x=simple_strtol(str,NULL,0); return 0;}__setup("data_x=", datax_setup);static int __init datay_setup(char* str){ data_y=simple_strtol(s
2020-06-15 20:34:46 191
原创 内存压力测试
板卡的内存稳定性,一般是通过linux下通过stressapptest来验证,一般跑12个小时,跑的内存大小一般把内存跑的仅剩100M左右即可,每次跑完,free一下还剩多少内存;打开终端,./stressapptest -s 43200 -M 900 &上面命令为跑12个小时,大小900M,如果为2G,跑两个900M,free上面的命令查看内存大小...
2020-06-14 18:08:59 2915
原创 龙芯平台下的mac地址
/本文档是个人整理,保留最终解释权,仅供参考,有jdm独家提供/以2K1000为例,针对目前pmon版本,commit fb1e467f74bf25de83d9ddf00d043ae93ffd7ebf Date: Tue Apr 7 10:53:30 2020 +0800内核版本,commit 103a9ad99285e010f4da02682b37b0c9b30c3608 Date: Thu Jun 11 12:59:26 2020 +0800龙芯平台的mac地址一般有三种存储方式:1.存
2020-06-14 17:24:39 1421
原创 linuxcan接口测试
测试须知:不同处理器核控制器不同,或者本身处理器中无can控制器,也可以通过其他总线转接,都大同小异,can协议准守通用的规范,在linux下访问统一使用socket访问,如下mips结构2K1000处理器板卡进行can验证;2k1000有两路can,一路出来三根物理信号线,CAN_L,CAN_H,GND,连接到usb转can核的对应接口上,can核上的r+和r-要外部回环短接;下面进行测试:方法一,通过本地can总线和其他板卡或者外部can设备通信can配置部分:#ifconfig can0 d
2020-05-16 21:12:01 2913 2
原创 2k增加pmon、内核里加入多路串口
pmon下diff --git a/Targets/LS2K/include/bonito.h b/Targets/LS2K/include/bonito.hindex 046273d..2db2b6d 100644--- a/Targets/LS2K/include/bonito.h+++ b/Targets/LS2K/include/bonito.h@@ -56,6 +56,9 @@...
2020-05-16 20:48:00 1225 1
原创 pmon下nandflash相关操作
龙芯平台下nandflash相关操作pmon下查看nandflash设备(只能通过打印信息查看)NAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3V 8-bit)NAND_ECC_NONE selected by board driver. This is not recommended !!...
2020-03-17 08:16:35 1987 2
原创 pmon下修改分辨率示范
#以下为修改内容From f9a26c1fee3e7749b64d6463da1f4967d0620e28 Mon Sep 17 00:00:00 2001From: jindongming <jindongming@loongson.cn>Date: Mon, 2 Sep 2019 19:52:27 +0800Subject: [PATCH] change display r...
2019-09-06 08:07:25 820
原创 Linux kernel important documents about drivers
dtsarch/mips/loonson2/dts/2k1000.dtsi2c driversdrivers/i2c/busses/i2c-ls.cls_i2c_probe match resources in dts.i2c init;fill adap->algo= &ls_i2c_algo;##nand driversdriver/mtd/nand/aud...
2018-12-02 18:02:33 164
原创 计算机基本知识
越深入理解内核各个io子系统驱动,越感觉基础很重要,下面提到仅供个人抛砖引玉,不时的询问自己(摘自陈老师的公众号),并加入自己的延伸。1.信息的表达和处理 整数和浮点数的表示;数值的转换、移位2.从汇编层面理解程序的执行 顺序、分支、循环、函数调用、数组、结构体等在汇编层面是怎么实现的,寄存器和内存是怎么使用的 理解了这些其实也就理解了冯诺依曼计算机体系结构,这是计算机学...
2018-11-26 22:57:32 161
原创 安装win10和ubuntu双系统
1.安装完win10系统后,去ubuntu官网下载iso镜像,分64位(标有amd64)和32位(i386),用ultralS0 制作u盘启动,u盘会格式化;2.在ultraISO选择“打开”,选择镜像,选择“启动”,“写入硬盘映像”,后面选择默认即可,制作成功;3.在win系统下预留一段未分区的扇区,ubuntu18.04安装的时候会自行搜索空余分区;4.插入做好的u盘启动盘,重启后...
2018-10-24 21:46:16 215
串口调试和测试验证方法
2022-12-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人