- 博客(133)
- 资源 (22)
- 收藏
- 关注
原创 龙芯2K1000/2K500开发板如何利用coredump 进行调试
文件复制到PC 机上,然后使用交叉工具链中的gdb 进行调试。编译时加入调试信息 ((PC 机上))查看core 文件的名字 (开发板上)开启core 文件 (开发板上)查看ulimit 的所有参数设置。执行程序之后在当前路径生成了名为。的 coredump 文件。
2024-02-20 13:03:04
553
原创 在龙芯2K500/2K1000上使用OpenWRT
OpenWrt是一个为嵌入式设备(通常是无线路由器)开发的高扩展度的GNU/Linux发行版。与许多其他路由器的发行版不同,OpenWrt是一个完全为嵌入式设备构建的功能全面、 易于修改的由现代Linux内核驱动的操作系统。在实践中,这意味着您可以得到您需要的所有功能,却仍能避免臃肿。OpenWrt不是一个单一且不可更改的固件,而是提供了具有软件包管理功能的完全可写的文件系统, 让您通过使用适配任何应用的软件包来定制设备。对于开发人员来说,OpenWrt是一个无需围绕它构建完整固件就能开发应用程序的框架。
2024-02-19 14:43:10
1251
原创 使用llvm 编译最新的linux 内核(LoongArch)
gcc 从linux 官方下载:http://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.2.0/x86_64-gcc-13.2.0-nolibc-loongarch64-linux.tar.xz。从https://www.kernel.org/ 下载最新的版本(linux-next) ,此时用的是linux 6.6rc1。出现上面的错误是因为不module 也还不支持,修改内核配置 关掉。
2023-09-06 20:12:45
1389
3
原创 编译LoongArch的llvm交叉工具链
下载gcc交叉工具链https://github.com/sunhaiyong1978/CLFS-for-LoongArch/releases/download/8.1/CLFS-loongarch64-8.1.1-x86_64-cross-tools-gcc-libc.tar.xz,并解压到。从https://github.com/llvm/llvm-project 下最新的。解压源码后,在源码目录执行编译脚本 build.sh。编译完成之后会安装到当前目录下的。
2023-09-06 20:10:29
887
原创 OpenHarmony 4.0 源码编译hb 问题排查记录
从错信息看是找到某个目录,hb 是python写的,所以打算看看源码是找个目录出错了,根据出错信息直接看源码文件。下载build_lite 源码, 从中复制hb_internal 到openharmony 的源码目录即可。这个仓库里面有,所以从这里下载一份到源码放到OpenHarmony 中去。下载好Openharmony 4.0Beta2 的源码。,在OpenHamony 源码下确实没有发现有。查看python 代码可知报错原因是没找到。, 去OpenHarmony 源码仓发现。
2023-09-05 20:23:06
3786
1
原创 Openharmony3.2 源码编译(ubuntu 22.04) 过程记录
在ubuntu 22.04 下编译OpenHarmony 3.2源码的过程记录
2023-09-05 20:19:43
2109
原创 Qt for Python
目前python的qt 绑定有两种方式 pyqt 和 pyside。目前PyQt是由一家小公司维护的,PyQt历史更长一些,比较稳定,开发社区也比较大,有相关的deploy工具;而PySide(又名Qt for Python)现由Qt公司维护,比PyQt更年轻一些。截至2019年,最新版本是PyQt5和PySide2。PySide6是2020年发行的。PySide2和PySide6,分别是基于C++下的Qt5和Qt6开发的。
2023-07-18 09:28:20
1408
原创 龙芯电脑(LoongArch)如何升级BIOS(UEFI固件)
可查看固件的版本信息,版本信息包括版本号,编译时间,git commit ID.插好装有固件的U 盘(U盘格式为fat32或ext3格式), 上电开机后待出现。升级固件,固件升级过程为先擦除,后写入,待出现。输入对应的标号,(本例中U盘的标号是。进入配置界面后通过上下选择键选中。按回车进入UEFI 命令行。, 如上图所示USB对应的是。键进去UEFI配置界面。, 之后再查找U盘对应的。查看SPI命令的使用说明。后,表示升级完成,输入。
2023-06-18 21:42:30
3597
原创 Linux/LoongArch 系统调用 ABI
本文档描述了 Linux/LoongArch 的系统调用 ABI。由于当前内核仅有 64 位版本,以下的描述均视为遵循 LP64* 的过程调用约定。
2023-05-31 22:10:56
1183
原创 交叉编译成LoongArch(Makefile,CMake,AutoTool,Qt等方式)
介绍如何在x86 的机器上交叉编译出在loongarch 架构上运行的程序。针对linux 常见编译构建方式(Makefile,CMake,AutoTool,Qt)提供了交叉编译的方法
2023-05-31 21:57:21
3421
3
原创 在x86平台体验龙芯LoongArch--使用Qemu-7.2安装LoongArch版的ArchLinux
在x86机器上使用源码编译qemu 7.2 ,并安装LoongArch版的ArchLinux
2023-03-18 08:28:18
6177
原创 # LoongArch 内存模型与栅障
存储访问类型与访存虚拟地址绑定,通过页表项中的MAT(Memory Access Type)域决定。MAT域的值域存储访问类型的对应关系是:0–强序非缓存,1–一致可缓存,2–弱序非缓存,3–一保留。存储访问类型的设置过程对于应用软件是透明的。,所访问的对象既可以是也可以是。通常采用这种访问类型访问内存以获得高性能。。,即所有访问严格按照程序中的次序执行且当前访存操作彻底完成前不能开始执行下一个访存操作;而。
2022-11-30 10:01:34
1311
1
原创 制作CentOS 8 最小系统(LoongArch)
从错误信息可知是下载repomd.xml 文件失败,打这个网址确实出错,原因是LoongArch 没有8.0 的版本有8.3和8.4版本,所以将版本号改为 8.3。制作完的系统通过chroot可以正常使用,就是体积点大,可以通过减少一些包来进行空间的压缩。dnf-rootfs.log 记录了所有包的下载,安装,校验的过程。
2022-10-10 10:50:16
753
原创 龙芯平台(LoongArch)常用开发工具安装
目前龙芯平台的主流桌面操作系统: Loongnix 20, UOS 20, Kylin 10均为DEB系;主流服务器操作系统Loongnix 8.x, Kylin 10, UOS 20均为RPM系。一、桌面操作系统1、基本开发工具更新软件源apt update1.1 安装编译所需软件包apt install build-essential通常会安装gcc, g++, make等软件及开发依赖的库1.2 安装QT5apt install qtcreator qtbase5-dev -yq
2022-04-10 17:10:15
17035
11
原创 ssh 自动登录脚本
#!/bin/bashPORT=22REMOTE_HOST=192.168.2.5REMOTE_USR=test1PWD=123function auto_login(){ /usr/bin/expect <<-EOF spawn ssh -p $PORT $REMOTE_USR@$REMOTE_HOST expect { "password" {send "$PWD\r"; set timeout -1} } expect eof exit EOF}au
2022-02-25 11:30:02
2417
原创 龙芯(LoongArch)架构获取CPUID
根据龙芯架构手册可知,通过 cpucfg 指令可以读取一系列配置寄存器,0 号配置寄存器存放的是CPU 标识ID。 所以只要用cpucfg 读取 0号配置寄存器即可。代码如下:#include <stdio.h>#include <stdint.h>#define LOONGARCH_CPUCFG0 0x0uint32_t read_cpucfg(uint32_t reg){ uint32_t val = 0; asm volatile("cpucfg %0, %
2022-02-23 10:45:26
1282
原创 docker导出网络namespace到宿主机
查看运行的容器# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES5a1c7a7a8eae loongsongd/debian:v10-loongarch64 "/bin/bash" 2 hours ago Up 2 hours sleepy_dhawan查看指...
2021-12-22 11:41:23
641
原创 制作Debian 最小系统(Loongarch)
# apt install debootstrap# cd /usr/share/debootstrap/scripts# ln -s sid DaoXiangHu-testing# cd ~# mkdir iso# debootstrap --no-check-gpg --variant=minbase --components=main,non-free,contrib --arch=loongarch64 --foreign DaoXiangHu-testing iso http://p.
2021-10-14 21:42:00
1371
原创 系统启动耗时分析systemd 常用命令
分析总体耗时$ systemd-analyze Startup finished in 4.718s (kernel) + 10.642s (userspace) = 15.361s graphical.target reached after 10.472s in userspace分析关键耗时$ systemd-analyze critical-chainThe time after the unit is active or started is printed after
2021-09-18 09:10:19
1618
原创 busybox 集成systemd之后reboot 失败
在busybox 系统中执行reboot 失败,使用reboot -f 可以强制重启# rebootSystem has not been booted with systemd as init system (PID 1). Can't operate.Failed to connect to bus: Host is downFailed to talk to init daemon.系统里面集成了 systemd,查看systemd 的使用说明 https://www.freed.
2021-08-16 19:33:20
1692
原创 Loongarch 软件移植
AutoTools 添加Loongarch 支持为了简化可移植构建的难度,早期有一套AutoTools的工具帮助程序员构建软件。c/c++开源项目大多由Autotools 工具管理,源码编译常见三步曲。./configuremake make install在Loongarch 下编译常见的问题如下:./configureconfigure: error: cannot guess build type; you must specify one在 ./configur
2021-06-27 18:37:53
4396
原创 Linux 内核编译
查看帮助,会列出make 所支持的参数及说明make help清理内核清理绝大部分编译生成的文件,但保留配置文件(.config) 和 编译外部模块所需的环境make clean清理所有编译生成的文件,包括配置文件(.config) 及其他的备份文件、make mrproper在make mrproper 的基础,还清除编缉器里的备份文件和patch 文件make distclean编译内核# 这里以loongson3 的配置为例make loongson3..
2021-05-12 10:00:12
196
原创 如何提交kernel patch
1. 配置gitgit config --global --replace-all user.name "michael" //git 代码提交的名字git config --global --replace-all user.email "michael@gmail.com" //git 代码提交的邮箱git config --global --replace-all format.signoff true //使用git commit -s 提交时会自动加上signed-
2021-04-22 10:37:06
1104
原创 busybox下 CAN 设置失败
操作与出错信息如下:[root@Loongson-GD:~]# ifconfig can0 down[root@Loongson-GD:~]# ip link set can0 up type can bitrate 250000ip: either "dev" is duplicate, or "type" is garbage[root@Loongson-GD:~]# ifconfig can0 up[ 1408.592235] sja1000_platform 1fe00c00.can c
2021-03-29 19:26:58
1209
原创 u-boot-2019.10 启动流程分析
平台:ls2k coreu-boot 中的README 有整个启动流程的说明arch/mips/cpu/u-boot.lds 中指定了入口为 _startarch/mips/cpu/start.S ENTRY(_start) 开始 /* U-Boot entry point */ b reset mtc0 zero, CP0_COUNT # clear cp0 count for most accurate boot timing#if defined(CONFIG_MIPS
2021-02-02 20:29:21
615
原创 将rtthread-4.0.3 移植到LS1B的踩坑记录
从github 下了rt-thread 的最新版本rt-thread 4.0.3,发现其中对LS1B的支持太匮乏,并且在板子无法正常运行。好在对LS1C的支持还算完善,遂参考LS1C采用新框架移植串口驱动到LS1B上,在移植的过程中遇到了一些坑,现踩坑过程记录如下。移植完串口驱动后一运行就送大礼了,报错误信息如下:initialize rti_board_start:0 donecurrent sr: 0x1000fc00 \ | /- RT - Thread Operating Sys
2021-02-02 16:56:55
730
1
原创 使用Qt Installer Framework制作安装包
安装QtInstallerFrameworQt Installer Framework 下载地址:http://download.qt.io/official_releases/qt-installer-framework/下载最新的QtInstallerFramework-win-x86.exe 然后安装。 这里下载的是最新4.0.1版本。默认是安装在C:\Qt\QtIFW-4.0.1。注意:安装路径不支持中文,本人亲测Qt的其他安装程序也不支持中文路径。所以用这个制作出来的安装包也不支持中文路径
2021-01-07 17:48:08
1102
1
原创 如何制作deb包(基于源码包与二进包)
安装工具与依赖# apt install build-essential devscripts基于源码包制作:$ tar xf foo-0.1.tar.gz$ cd foo-0.1$ ls foo.c Makefile$ dh_make -f ../foo-0.1.tar.gz$ ls debian foo.c Makefile$ ls ../ foo_0.1 foo_0.1-1_mips64el.buildinfo foo_0.1.orig.tar.gz foo_0...
2020-12-15 19:51:55
723
原创 交叉编译龙芯平台的uboot 和 kernel
u-boot 2013 export ARCH=mips export CROSS_COMPILE=mips64el-linux- 如果想指定编译目录: export BUILD_DIR=/tmp/build 或 make -O=/tmp/build make ls2k_pai_config makeu-boot 2019 (gcc-9.1 mips64el) export ARCH=mips export CROSS_COMPILE=mips64el-linux- c
2020-12-09 10:36:30
1071
原创 uos20(龙芯平台)上编译及更换最新kernl 5.9及kernel 4.19
OS:UOS 20下载龙芯提供的4.19 源码源码下载地址:http://ftp.loongnix.org/kernel/linux-4.19.90/Linux-4.19.90-5.tar.gz解压编译$ tar xf Linux-4.19.90-5.tar.gz$ cd Linux-4.19.90-5$ make loongson3_defconfig$ make -j4$ make install INSTALL_PATH=./_install$ make modules_inst
2020-12-08 14:37:43
4190
10
原创 linux 4.19在龙芯平台上编译出错解决方法
OS: Loongnix server 1.7工具链为:系统自带的gcc-4.8.5 和 gcc-7.3平台:3A3000/3A4000源码:kernel: 4.19编译步骤···make loongson3_defconfigmake -j4···出错信息:HOSTCC arch/mips/boot/compressed/calc_vmlinuz_load_addr arch/mips/boot/compressed/head.S: Assembler messages: arch/m
2020-12-04 11:47:20
945
原创 u-boot-2019 u-boot 命令分析
代码分析看u-boot源码我们知道,在u-boot中的每一个命令都是通过U_BOOT_CMD或U_BOOT_CMD_COMPLETE来定义的。下面来分析分析他们的具体实现逻辑。U_BOOT_CMD 是一个宏定义,代码在 include/command.h中。#define U_BOOT_CMD(_name, _maxargs, _rep, _cmd, _usage, _help) \ U_BOOT_CMD_COMPLETE(_name, _maxargs, _rep, _cmd, _usage,
2020-12-03 16:42:12
362
原创 u-boot-2019 引导菜单分析
configs/ls2k_core.h 中定义了默认的菜单项及其他默认变量#define CONFIG_EXTRA_ENV_SETTINGS \ CONSOLE_STDOUT_SETTINGS \ "loadaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ "rd_start=0x86000000\0" \ "rd_siz
2020-12-03 16:40:43
636
原创 u-boot-2019 修改内核引导参数
$ make menuconfig[*] Enable boot arguments (console=ttyS0,115200 root=ubi0:rootfs ubi.mtd=root,2048 mtdparts=" CONFIG_MTDPARTS_DEFAULT " noinitrd init=/linuxrc rootfstype=ubifs rw video=ls1xfb:ls1xfb:1920x1080-16@60)
2020-11-27 09:32:00
294
原创 u-boot-2019 修改nand分区大小
$ make menuconfig //修改Default MTD partition scheme 里面的内容Command line interface > Filesystem commands and support > [*] MTD partition support
2020-11-27 09:26:27
864
原创 启动busybox报错/linuxrc failed
启动busybox-1.31.1 制作的文件系统报错,错误信息:not syncing: Requested init /linuxrc failed (error -2).这是因为buysbox 编译为共享库方式,busybox编出来的文件系统不带动态库。而开发者没有将动态库复制完整或存放路径不对导致解决办法:通过ldd busybox 查看依赖的库及库的存放路径,之后将相应的库文件复制到相应路径即可或者将busybox编译改为静态编译make menuconfigSettings
2020-11-25 17:18:00
1222
1
广东龙芯2K1000星云板用户手册V1.0.pdf
2023-05-31
广东龙芯2K500开发板用户手册V1.3.pdf
2023-05-31
指令系统的自主要兼容(视频截图版).pptx
2020-08-13
Head First Design Patterns中文版PDF完整高清带目录
2013-04-15
IEJSLeakSDetector2.0.1.1
2012-08-13
龙芯 3A 处理器用户手册(下册)
2012-02-18
龙芯 3A 处理器用户手册(上册)
2012-02-18
龙芯3A处理器用户手册
2011-01-20
Linux移植实验指导书
2010-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人