LXR | KVM | PM | Time | Interrupt | Systems Performance | Bootup Optimization

上一页 1 2 3 4 5 6 ··· 9 下一页

2023年12月2日

基于Trace32查看Linux进程栈调用关系

摘要: 1. 打开进程列表 点击菜单Linux->Display Process,即可查看所有进程列表。 2. 加载的可执行文件和库文件符号表 在感兴趣进程,右击选择: Display Stack Frame:最开始Stack都是由一串地址组成的。 Display maps:提供了地址范围和可执行文件/库文 阅读全文

posted @ 2023-12-02 23:59 ArnoldLu 阅读(135) 评论(0) 推荐(0) 编辑

网络连接管理Connection Manager(connman)记录

摘要: ConnMan是一个Linux下网络连接管理守护进程。ConnMan是一个模块化的系统,通过各种插件,可以扩展支持各种有线或无线设备。所有的应用程序通过D-Bus和ConnMan通信。 1 ConnMan架构 2 ConnMan内部组成 2.1 Buildroot ConnMan配置 Target 阅读全文

posted @ 2023-12-02 23:59 ArnoldLu 阅读(153) 评论(0) 推荐(0) 编辑

Linux下固件加载器Firmware Loader

摘要: 某些Linux外设需要固件才能正常工作,或者调试过程中需要更换固件。为解决设备驱动程序从内核态或者用户态加载固件到外设中,Linux提供了Firmware Loader子系统。 如果固件比较稳定,可以通过builtin方式加载。如果需要经常变动,可放入文件系统指定目录中。如果都无法找到需要根据uev 阅读全文

posted @ 2023-12-02 23:59 ArnoldLu 阅读(293) 评论(0) 推荐(0) 编辑

2023年11月24日

Buildroot下dhcpd使用简介

摘要: 关键词:dhcp、relay、config_packet、dhcpd.conf等。 DHCP(Dynamic Host Configuration Protocol)指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。担任DHCP服务器的计算机需要安装 阅读全文

posted @ 2023-11-24 23:59 ArnoldLu 阅读(269) 评论(0) 推荐(0) 编辑

2023年11月19日

基于mdev实现adb热插拔(@STM32MP157D+fusb302)

摘要: 关键词:fusb302、uevent、mdev、adbd等等。 1 fusb302关于USB插拔检测,以及增加uevent事件 fsusb302支持USB Power Delivery协议(USB Power Delivery),支持识别各种USB设备和对应的状态。 fusb302支持DRP(Dua 阅读全文

posted @ 2023-11-19 23:59 ArnoldLu 阅读(337) 评论(0) 推荐(0) 编辑

2023年11月17日

Reserved for bad PEB handling:不同NAND大小造成分区可用空间差异

摘要: 在调试一个UBI设备时,需要调整MTD分区到尽量小。在调试完成后,换另一个型号NAND,挂载分区异常。记录一下定位问题过程。 1 大容量NAND挂载出现异常现象 同样ubifs文件系统镜像,写入同样NAND硬件,但是Reserved Physical Eraseblocks数量不同,进而导致ubif 阅读全文

posted @ 2023-11-17 23:59 ArnoldLu 阅读(361) 评论(0) 推荐(0) 编辑

2023年11月14日

嵌入式Linux adbd实现概要梳理(基于STM32MP157D+Buildroot)

摘要: 关键词:USB Gadget、dwc2、configfs、functionfs、adbd等等。 基于STM32MP157D简单记录ADB实现的过程,涉及到USB、Gadget、configfs、functionfs、adbd、ADB协议等等。 基于Buildroot 2020.02.6编译adbd运 阅读全文

posted @ 2023-11-14 23:59 ArnoldLu 阅读(849) 评论(0) 推荐(1) 编辑

2023年10月29日

基于Busybox的ifup/ifdown网络配置

摘要: 如何在基于Busybox的文件系统,自动进行网络配置?通过ifup/ifdown,从/etc/network/interfaces获取配置,是一种常见的方式。 下面从Buildroot配置ifupdown脚本、ifup/ifdown工作机制、/etc/network/interfaces分别简单记录 阅读全文

posted @ 2023-10-29 23:59 ArnoldLu 阅读(501) 评论(1) 推荐(0) 编辑

2023年10月28日

BOA使用以及简析

摘要: BOA是一个非常简洁快速的单任务http服务器。官网关于BOA介绍《Boa Webserver》。 下面简单从Buildroot下配置编译、服务启动、访问做个介绍,然后对服务流程做个简单的分析。 1 Buildroot下配置BOA 在Buildroot中配置boa: Target packages 阅读全文

posted @ 2023-10-28 23:59 ArnoldLu 阅读(212) 评论(0) 推荐(0) 编辑

开发板和Windows 11网络直连配置

摘要: 将开发板通过网线和Windows 11直连,组成局域网,并且开发板可以连接Internet。 1 开发板和PC连接示意图 一般笔记本都支持WiFi和有线网络连接,将笔记本和开发板进行如下连接: 2 网络共享配置 打开控制面板\网络和 Internet\网络连接,配置“WLAN”,让“以太网”共享“W 阅读全文

posted @ 2023-10-28 23:59 ArnoldLu 阅读(329) 评论(0) 推荐(0) 编辑

2023年10月21日

uboot/Linux下MMC/SD/SDIO阅读记录

摘要: 1 uboot下MMC/SD/SDIO 1.1 uboot下MMC/SD/SDIO相关配置 uboot下关于MMC/SD/SDIO驱动以及工具配置: Device Drivers ->MMC Host controller Support MMC/SD/SDIO card support suppo 阅读全文

posted @ 2023-10-21 23:59 ArnoldLu 阅读(1007) 评论(0) 推荐(1) 编辑

2023年10月15日

以PMIC为例简析Linux MFD/Regmap/Regulator的使用

摘要: 关键词:ADI、SPI、Regmap、MFD、Regulator、PMIC等等。 以SC27XX为例,梳理一个PMIC用到的内核模块。 1. MFD框架 MFD是Multi-Function Device,MFD子系统是Linux下一种用于管理和控制多功能设备的软件框架。他提供一种统一接口,使得多个 阅读全文

posted @ 2023-10-15 23:59 ArnoldLu 阅读(682) 评论(0) 推荐(0) 编辑

2023年10月6日

基于现有dtb文件修改内容

摘要: 当有修改dtb需要,又不想经过linux编译生成dtb时,可以通过dtc工具进行dtb->dts,dts->dtb的转换。 dtc工具可以进行dtb和dts之间的转换,dts是可编辑文本。 Ubuntu下安装dtc工具: sudo apt-get install device-tree-compil 阅读全文

posted @ 2023-10-06 23:59 ArnoldLu 阅读(264) 评论(0) 推荐(0) 编辑

2023年9月16日

NAND/MTD/UBI/UBIFS概念及使用方法

摘要: 关键词:NAND,MLC/SLC,Page/SubPage,EraseBlock,OOB,ECC,BitFlip,MTD,UBI,wearing-level,LEB,PEB,EC/VID,Volume,UBIFS等等。 由于调试NAND Linux启动,记录NAND/MTD/UBI/UBIFS点点滴 阅读全文

posted @ 2023-09-16 23:59 ArnoldLu 阅读(2808) 评论(0) 推荐(0) 编辑

2023年8月21日

GIC-400 TRM阅读笔记

摘要: 相关文档:《《ARM Generic Interrupt Controller Architecture version 2.0》阅读笔记》。 Chapter 1 Introduction 1.1 About the GIC-400 GIC400负责检测、管理、分发中断。 软件可以对GIC400相关 阅读全文

posted @ 2023-08-21 09:33 ArnoldLu 阅读(340) 评论(0) 推荐(0) 编辑

GIC v2.0架构规格书阅读笔记

摘要: 相关文档:《《CoreLink™ GIC-400 Generic Interrupt Controller Revision: r0p1 Technical Reference Manual》阅读笔记》。 Chapter 1Introduction 1.1 About the Generic Int 阅读全文

posted @ 2023-08-21 09:33 ArnoldLu 阅读(258) 评论(0) 推荐(0) 编辑

ARM Star技术参考手册笔记

摘要: Chapter A1 Introduction A1.1 About the processor 处理器支持的接口包括: C-AHB:Code AHB interface。 S-AHB:System AHB interface。 D-AHB:Debug AHB interface。 EPPB:Ext 阅读全文

posted @ 2023-08-21 09:32 ArnoldLu 阅读(709) 评论(0) 推荐(0) 编辑

ARM Trusted Firmware分析——中断、异常

摘要: 中断如何送到不同EL?如何配置? 1. BL31异常向量表 BL31异常向量表根据如下定义实现: ARMv8-A规定Exception Vector Table大小为2KB,并且是2KB对齐;一共6个Vector Entry,每一个Vector Entry大小为128B。 .macro vector 阅读全文

posted @ 2023-08-21 09:30 ArnoldLu 阅读(443) 评论(0) 推荐(0) 编辑

2023年8月9日

oFono/dbus-python环境搭建以及简单认识

摘要: 关键词:D-Bus、oFono、dbus-python、ofonod、connmand等等。 1. oFono环境搭建(Buildroot+QEMU)和启动 1.1 Buildroot配置ofonod+dbus-python 配置oFono: Target packages -> Networkin 阅读全文

posted @ 2023-08-09 23:59 ArnoldLu 阅读(256) 评论(0) 推荐(0) 编辑

2023年7月10日

ARM指令和机器码对应关系:动态生成可执行指令

摘要: 汇编经过编译器生成机器可以执行的机器码。由于有一段指令需要动态生成,所以简单看了一下汇编和机器码之间的关系。做了记录方便后面查找。 大部分情况下,写C/ASM,经由工具链生成可执行机器码。所以主要功能先由C/ASM编写,然后根据需求改变部分机器码。 首先研究一下《Instruction Set As 阅读全文

posted @ 2023-07-10 23:59 ArnoldLu 阅读(388) 评论(0) 推荐(0) 编辑

2023年7月7日

Buildroot创建ramdisk、ext4、ubifs镜像,以及mkfs.ext4/mkfs.ubifs/cpio的使用

摘要: 通过mkfs.ext4和mkfs.ubifs可以生成ext4和ubi格式的文件系统文件。Buildroot中创建文件系统文件即借助这两个命令。 1. mkfs.ext4 mkfs.ext4以及mkfs.ext2/mkfs.ext3都指向mke2fs,用于创建ext4格式的文件系统。 Usage: m 阅读全文

posted @ 2023-07-07 23:59 ArnoldLu 阅读(1557) 评论(0) 推荐(0) 编辑

2023年7月1日

zImage自解压起始地址:ZRELADDR

摘要: 由于内存较小,zImage的起始地址受限。按照内存规划,修改zImage的加载地址,但是解压后Linux运行产生异常,可能是DataAbort,或者PrefetchAbort,或者Undefined Instruction。 1. 定位zImage自解压后,Kernel启动异常问题 T32启动运行后 阅读全文

posted @ 2023-07-01 23:59 ArnoldLu 阅读(213) 评论(0) 推荐(0) 编辑

2023年6月17日

ARM(A7) wfi唤醒后...是执行中断处理程序还是后一条指令

摘要: 记录WFI相关细节,以及如何让中断唤醒后先执行wfi后指令,再执行中断异常;或者优先执行中断异常,再执行wfi后指令。 1. ARM(A7)关于WFI的描述 处理器可以通过执行WFI指令进入WFI低功耗状态。 当硬件检测到WFI唤醒事件,WFI指令结束。 WFI唤醒事件无法被CPSR屏蔽位屏蔽。 执 阅读全文

posted @ 2023-06-17 23:59 ArnoldLu 阅读(483) 评论(1) 推荐(1) 编辑

2023年6月16日

Linux hwrng以及ARM TRNG记录

摘要: 关键词:hwrng,/dev/random,/dev/urandom,rngd,rngtest等。 Linux hwrng驱动比较简单,hwrng core注册设备提供sysfs几点给应用层使用。hwrnd driver提供具体硬件接口,然后注册到hwrng core中,以及往内核熵池提供随机数。 阅读全文

posted @ 2023-06-16 23:59 ArnoldLu 阅读(635) 评论(1) 推荐(0) 编辑

2023年6月4日

串口(PL011)在Linux启动运行过程中扮演的角色

摘要: 关键词:PL011、earlyprintk、earlycon、AMBA、UART、tty、console等等。 串口虽然是一种简单的工具,但是在Linux启动、运行、调试中扮演了重要角色。其稳定、易用、高效(某些场景)。 串口依赖的模块少,在FPGA初期调试中扮演重要角色。往往是CPU基本功能可用后 阅读全文

posted @ 2023-06-04 23:59 ArnoldLu 阅读(1155) 评论(0) 推荐(0) 编辑

2023年5月27日

Linux显示(五):QT显示插件(LinuxFB)及其依赖的驱动(DRM/Framebuffer)记录

摘要: 关键词:Framebuffer、linuxfb、DRM等等。 基于《基于QEMU模拟器搭建Builtroot下的QT开发环境》搭建开发环境。 QT在Linux中支持多种显示插件,包括EGLFS、LinuxFB、DirectFB、Wayland等。可以通过--platfrom选项指定选择何种插件。比如 阅读全文

posted @ 2023-05-27 23:59 ArnoldLu 阅读(4278) 评论(0) 推荐(0) 编辑

2023年5月25日

Ubuntu下OpenWRT环境配置、下载、配置、运行记录

摘要: 简单记录Ubuntu下OpenWRT开发环境配置,版本下载和编译,以及通过QEMU运行OpenWRT并和Host进行ssh通信。 1. 环境安装和版本下载 编译环境设置: sudo apt update sudo apt install build-essential ccache ecj fast 阅读全文

posted @ 2023-05-25 23:59 ArnoldLu 阅读(2642) 评论(0) 推荐(0) 编辑

2023年5月24日

Trace32下对ARM内存访问Access Classes总结

摘要: 原内容来源于T32帮助文档debugger_arm.pdf的ARM Specific Implementations->Access Classes,这里记录方便查询。 首先介绍Access Classes都有哪些选项,然后介绍常见的Access Classes组合,最后介绍如何创建合法的Acces 阅读全文

posted @ 2023-05-24 23:59 ArnoldLu 阅读(248) 评论(0) 推荐(0) 编辑

2023年5月20日

zImage的压缩、解压以及性能对比

摘要: 关键词:Image,zImage,piggy,gzip,lzo,xz,lzma等等。 1. zImage的压缩 zImage是Image经过压缩后,加上解压缩头后生成的文件:Image -> piggy_data -> piggy.o ->vmlinux(compressed) -> zImage。 阅读全文

posted @ 2023-05-20 23:59 ArnoldLu 阅读(485) 评论(2) 推荐(0) 编辑

2023年5月13日

GIC Implementation and Architecture Specification

摘要: 记录常用GIC实现和对应的架构规格: GIC Implementation GIC Architecture Specification GIC-400 CoreLink GIC-400 Generic Interrupt Controller Technical Reference Manual 阅读全文

posted @ 2023-05-13 23:59 ArnoldLu 阅读(101) 评论(0) 推荐(0) 编辑

2023年4月28日

Buildroot(2022.08-rc1)+busybox(1.35.0)启动流程

摘要: 关键词:busybox,inittab,syslogd,klogd,mdev,modprobe,watchdog,telnetd等等。 《busybox启动流程简单解析:从init到shell login》详细介绍了init对inittab的解析和执行。 下面为buildroot(2022.08-r 阅读全文

posted @ 2023-04-28 23:59 ArnoldLu 阅读(291) 评论(0) 推荐(0) 编辑

2023年4月26日

Linux RT补丁/分析/性能测试(@Ubuntu)

摘要: 关键词:rt-tests,rt等等。 要去了解实时Linux,首先了解其背景,实时Linux的目标是什么?都采取了哪些措施? 然后需要准备测试环境,需要同一版本的两个内核作对比测试。 确定内核版本之后,针对两个版本的差异进行分析,详细了解这些差异是如何保证实时性的。 最后借助rt-tests和ltp 阅读全文

posted @ 2023-04-26 10:21 ArnoldLu 阅读(3319) 评论(0) 推荐(0) 编辑

2023年4月23日

ARM A7 PMU+perf简单记录

摘要: 关键词:pmu,perf等等。 简单记录PMU及其内核驱动,内核中perf相关内容,以及两者是如何关联的。然后记录perf应用是如何和PMU硬件关联的,以及如何使用perf查看PMU结果。 A7 PMU概要 PMU作为一个扩展功能,是一种非侵入式的调试组件。 对PMU寄存器的访问可以通过CP15协处 阅读全文

posted @ 2023-04-23 23:59 ArnoldLu 阅读(853) 评论(0) 推荐(0) 编辑

Buildroot使用记录

摘要: 关键词:rootfs、BR2_EXTERNAL等等。 记录buildroot使用各种方法,以及解决的问题。 1 定制文件系统方法 1.1 根文件系统覆盖(BR2_ROOTFS_OVERLAY) 将BR2_ROOTFS_OVERLAY指向的目录覆盖到output/target根文件系统。还可以通过都好 阅读全文

posted @ 2023-04-23 23:59 ArnoldLu 阅读(852) 评论(0) 推荐(0) 编辑

2023年3月26日

嵌入式Linux GUI收集

摘要: 关键词:QT、Nano-X、MiniGUI、Wayland、LVGL等等。 QT QT框架结构 QT支持的平台 Desktop Platforms Linux/X11 DistributionArchitectureCompilerNotes openSUSE 15.1 x86_64 GCC 5 o 阅读全文

posted @ 2023-03-26 23:59 ArnoldLu 阅读(450) 评论(0) 推荐(0) 编辑

2023年3月25日

基于QEMU模拟器搭建Builtroot下的QT开发环境

摘要: 关键词:buildroot、qt、qemu等等。 1 Builtroot下载编译运行 下载Buildroot: git clone -b 2022.08 https://gitee.com/arnoldlu/buildroot.git 编译: make qemu_arm_vexpress_defco 阅读全文

posted @ 2023-03-25 23:59 ArnoldLu 阅读(604) 评论(0) 推荐(0) 编辑

2023年3月22日

Yocto 2:Yocto基本概念、编译流程、目录

摘要: 关键词:Recipe、Layer、Metadata、Poky、bitbake等等。 1 关键概念 深入了解Yocto之前,先了解一些基本概念。在Software – Yocto Project有说明。 这里摘录一段中文翻译: 配置文件: 包含全局定义变量,用户定义变量和硬件配置信息。配置文件告诉构建 阅读全文

posted @ 2023-03-22 23:59 ArnoldLu 阅读(3184) 评论(0) 推荐(0) 编辑

2023年3月19日

Python根据图片拍摄日期等整理重命名

摘要: 关键词:exif、exifread等等。 最近在整理多年拍摄的图片,希望按照拍摄时间进行排序整理制作相册。 但是有的图片有水印显示拍摄日期;有的文件创建日期因为搬运创建日期和修改日期都已不能反映拍摄日期。 后通过查看图片详细信息,发现有拍摄日期信息。所以通过Python+exifread去读取拍摄日 阅读全文

posted @ 2023-03-19 23:59 ArnoldLu 阅读(736) 评论(0) 推荐(0) 编辑

2023年3月18日

通过Python+CRemoteAPI控制Trace32进行调试

摘要: 关键词:Python、C Remote API、Trace32等等。 当需要对Trace32调试进行自动化,或者提高效率时,可以通过Remote Control API进行。 基本的调试流程如下: Python、C等语言可以通过调用C Remote API库文件,和Trace32 PowerView 阅读全文

posted @ 2023-03-18 23:59 ArnoldLu 阅读(463) 评论(0) 推荐(0) 编辑

2023年3月17日

Yocto 1:Ubuntu下开发环境搭建

摘要: 关键词:pocky,bitbake,qemu等等。 Ubuntu版本:Ubuntu 20.04.4 LTS。 1 环境配置以及仓库下载 更新Ubuntu下开发Yocto所需要的软件包: sudo apt-get install wget git-core unzip \ make gcc g++ b 阅读全文

posted @ 2023-03-17 23:59 ArnoldLu 阅读(458) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 9 下一页

导航