自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (4)
  • 收藏
  • 关注

原创 2025 - GDB 盲调笔记--调试 “无调试符号“ “无调试信息“ 的三方程序

x /20i 0x0000007ff43b3a90 # examine,用于解析指定内存地址的数据,可通过选项来决定是解析为汇编指令还是指定格式的数据。info proc mappings # 这个才是准确的, info sharelibrary(i sh) 显示的是可执行区的内存起始地址。c # 或者其它的继续运行指令, 如单步运行 si、ni,运行到函数结束 finish。si 会进函数(有调试符号可以不用加i)2). gdb 指令。

2025-03-09 12:55:46 299

原创 Python+PYGObject/PYGtk+CSS样式--2024python示例

Python+PyGObject/PyGtk+CSS修改背景色

2024-04-30 16:35:20 517 2

原创 安卓免Root做klipper上位机教程

虚拟电脑可以在8.0以上没越狱的安卓系统中安装klipper上位机程序

2023-12-16 18:08:54 2859

原创 安卓免Root做klipper-3D打印上位机

2023年安卓免root支持klipper控制板

2023-12-05 16:18:54 1002

原创 手机上玩.NET的两种方式

少见!手机上玩.NET!

2023-11-21 17:47:56 1379

原创 两步操作在手机上安装虚拟电脑运行linux

虚拟电脑在手机上的安装,只需要很简单地点击几次确定,就能安装好桌面环境

2023-08-06 15:20:48 2152

原创 手机变电脑2023之虚拟电脑droidvm

手机变电脑的那些app之虚拟电脑

2023-08-05 20:55:14 3825

原创 zig语言代替C语言进行裸机开发的尝试-2023年笔记

zig能替代C语言了吗?zig armv8a aarch64 arm64 freestanding bare-metal

2023-01-03 15:43:35 4019

原创 几行代码演示linux kernel、libc、userSpace app的关系

史上最最最最小的rootfs示例,及libc库的实现原理,单独运行linux内核镜像

2022-12-30 22:50:19 1044 2

原创 Windows10安装ubuntu(WSL2,可直接调用Win10程序) —2022年笔记

Windows10 使用自带linux子系统模块安装 Ubuntu-22.04(WSL2)WSL跨系统调用windows10宿主中的指令、程序与Intel Haxm系列模拟器冲突处理

2022-12-28 15:48:57 3348 1

原创 免root超简单运行linux-2022

安卓手机免root运行linux的小应用,不到2MB的apk安装包,支持一键安装linux、一键安装gui、一键删除linux、一键重启后台进程、集成novnc、支持从电脑端浏览器连接。

2022-06-07 22:20:52 824

原创 termux.apk 原理分析

termux 原理分析,是个在安卓手机上免root加载linux的相当流行的app

2022-06-01 18:49:42 3843 4

原创 纯C语言开发无java、无dex的安卓native apk(新NDK-r23e + WSL)---2022笔记

纯C语言开发无java、无dex的安卓native apk(新NDK-r23e + WSL)---2022笔记

2022-05-20 17:06:53 1681 3

原创 纯C语言开发无java、无dex的安卓native apk---2022笔记

纯C语言开发无java、无dex的安卓native apk

2022-05-13 22:10:19 1111

原创 纯C语言开发无java、无dex的安卓apk---2022笔记

纯C语言开发无java、无dex的安卓apkandroid native-activityandroid native_app_glue

2022-05-12 17:54:10 7289 1

原创 (ROC-RK3568-PC) 裸机24_驱动VOP2显示自绘画面

在rk3568(armv8-a)上驱动VOP2,试验图形界面

2022-04-26 14:59:17 1196 5

原创 (ROC-RK3568-PC) 裸机23_驱动VOP2显示彩条画面

此代码是从前一篇的 uefi 项目中扣出来的,整理后也只能让vop2通过hdmi接口显示彩条画面,仍不能显示framebuffer的内容。

2022-04-25 12:12:48 1127 1

原创 (ROC-RK3568-PC) 裸机22_rk3568 uefi 编译

项目地址:https://github.com/jaredmcneill/quartz64_uefi环境 win10+WSL

2022-04-19 17:40:47 2885 3

原创 (ROC-RK3568-PC) 裸机21_GIC中断

包括以下内容:中断分组,中断类型,中断分发,异常向量表,用于REE及TEE切换的 【假中断】,以及PPI中断号划分。

2022-04-10 17:42:16 2830

原创 (ROC-RK3568-PC) 裸机20_armv8-a最简TrustZone示例

miniDemo1_trustzone.zip 是 armv8-a 架构最简的 TrustZone 示例代码

2022-04-10 17:35:59 1502

原创 (ROC-RK3568-PC) 裸机19_VOP2和IEP笔记

RK3568 VOP2 笔记

2022-03-26 16:39:54 5391 3

原创 (ROC-RK3568-PC) 裸机18_hdmi驱动

实现了一份测试型的 hdmi 驱动。ARMv8a_4_hdmi 想点亮hdmi,但没成功 编译:make spl 运行:demo指令 只实现了以下功能: 1). 探测有没有 hdmi 屏幕插入 2). 配置 hdmi 屏幕分辨率为最低标准(720p, 但无画面) rk3568 中的画面产生器为:vop2(读内存中像素信息,并转为视频信号,对应于linux中的crtc) vop2 跟 rk3399 中的vop不一样,网上能参考的资料基本没...

2022-03-26 09:44:52 2578 3

原创 (ROC-RK3568-PC) 裸机17_compile_commands.json读源码

uboot 这种古老的项目,源码里面各个无关平台的代码太讨厌,查函数引用的时候跳出来一堆。本身只关心 rk3568 相关的,找个函数引用,硬是出来一堆让你选。网上各种找,发现 make 编译的时候可以生成 compile_commands.json,即导出运行过编译指令,包括文件名、编译指令、宏定义等等,导出 compile_commands.json后, 再结合 vscode 的 clangd 插件,阅读代码要方便得多。如何生成 compile_commands.json?1.

2022-03-23 19:20:21 1172 2

原创 (ROC-RK3568-PC) 裸机16_SPL and DTB 笔记

正在玩 firefly linux sdk 中的 uboot,对其中的 spl 做个笔记。firefly linux sdk 包含linux源码,uboot源码,rootfs 之类的东西,总共16G还大点!为便于描述,firefly linux sdk uboot 简称为 uboot。uboot完整的编译指令:make rk3568_defconfig./make.sh rk3568生成的与 spl相关的文件在uboot的./spl/目录中u-boot-spl ...

2022-03-23 18:41:02 2435 2

原创 (ROC-RK3568-PC) 裸机15_点亮 LED

源码:ARMv8-A bare-metal: ARMv8里面的 rk3568_3_GPIO_I2C_PMIC__LED.zipROC-RK3568-PC 板子点个LED,需要写好i2c接口代码,然后操作板载rk809这颗PMIC打开LED的供电,然后才能对LED所在的GPIO1组进行操作。MobaXterm_Personal终端 uart 显示中文:1).Edit Session2). Terminal Settings页3). Terminal font settings...

2022-03-12 21:59:32 1281

原创 (ROC-RK3568-PC) 裸机14_GPIO1默认没供电LED点不亮

firefly 官方的提到的两颗 LED,我的代码点不亮(GPIO1_B1和 GPIO1_B2)。发现只能点 LED_DIY2,查板子电路图《ROC-RK3568-PC-V10-20210519-1630_硬件原理图.pdf》发现:GPIO1所在的电路默认没有供电得通过对板载的 PMIC (rk809)进行操作,打开 LDO4但这个操作,需要用到 I2C接口代码,CPU是用 I2C 接口管理rk809 的。代码后续补充。...

2022-03-11 16:13:58 754

原创 win10中WSL与Intel Haxm系列模拟器产生冲突

windows 中的 wsl 基于微软自家的 Hyper-V (ms Hyper-V 系虚拟化加速)有些第三方的安卓模拟器,基于 Intel 家的 Haxm (Intel Haxm 系虚拟化加速)但是,一个运行中的系统,同时只可能由一个 VMM 来管理物理硬件。用 MS 家的,其它基于 Intel 家硬件加速的软件,就运行不了。按道理,运行不了就提示报错就行了,干嘛要无故关我机啊。。。我都不知道是哪个软件触发的 intelhaxm调用。C:\Users\l..

2022-03-08 16:34:40 1464

原创 (ROC-RK3568-PC) 裸机13_驱动GIC600,开启中断

armv8 GIC600驱动成功(rk3568)

2022-02-27 15:18:25 982 3

原创 (ROC-RK3568-PC) 裸机12_Loader 分析整理

loader.bin 包含 一个TPL文件 和 两个 SPL 文件。通过 "./RKLoaderTools/boot_merger RKLoader.ini"命令行生成RKLoader.ini中需要指定 tpl.bin usb.bin spl.bin三个bin文件的路径

2022-02-15 19:25:21 3102

原创 (ROC-RK3568-PC) 裸机11_DDR初始化

因为没有办法在自己写的 tpl 中初始化 DDR,改为编写 spl。使用 rk3568_ddr_1560MHz_v1.08.bin 做为 tpl 来初始化内存。

2022-02-12 14:57:39 2006 4

原创 (ROC-RK3568-PC) 裸机10_TEE环境

参考:ARMv8-a架构简介ARMv8-a架构简介Large memory: 应用对内存的需求可能超出32-bit架构所能支持的最大内存(4G),需要寻址更大内存。Execution state:指有AArch64和AArch32两套运行环境,分别执行64-bit和32-bit指令集。软件可以在需要的时候,切换Execution state。Exception level:AArch64最大的改动,就是引入 EL0~El3中个运行级别...

2022-02-01 15:20:36 4892 1

原创 (ROC-RK3568-PC) 裸机9_bootrom代码分析

rk3568 的 bootrom在 0xffff0000处,hexdump出来一段。0000000000000000 <.data>: 0: d53800a0 mrs x0, mpidr_el1 4: 92403c00 and x0, x0, #0xffff 8: f100001f cmp x0, #0x0 c: 540001a0 b.eq 0x40...

2022-01-25 22:48:23 1334 1

原创 Station P2(ROC-RK3568-PC) 裸机开发8_串口收发

下载地址:StationP2(ROC-RK3568-PC)裸机串口代码-硬件开发文档类资源-CSDN下载完全是是从 rkuboot项目里面扣出来整理的。 }else if(strEqual(argBuffer, "hexdump")){ printascii("\r\n"); const char* buf = (const char*)0xfdcc0...

2022-01-25 16:24:01 835 3

原创 Station P2(ROC-RK3568-PC) 裸机开发7_裸机代码

终于整理出一份能运行的代码了。

2022-01-23 17:18:46 1610 2

原创 Station P2(ROC-RK3568-PC) 裸机开发6_CPU漏洞

前面本来想从uboot中扣出所有TPL相关的文件的,但是发现扣不全,扣出来也没法编译。就转而去读代码, 发现 uboot/start.S 里面有一段 cpu 勘误之类的代码,想着是不是跟CPU漏洞有关,然后一通看, 发现还真挺好玩的。ARM cpu 漏洞https://www.163.com/dy/article/FIMPM0LN0517M3K7.html假自主的隐患爆发:鲲鹏和飞腾CPU受“幽灵”漏洞影响https://blog.csdn.net/weixin_43669969/ar

2022-01-22 22:07:09 2558 1

原创 Station P2(ROC-RK3568-PC) 裸机开发5_RKUBoot TPL

完整编译 u-boot-next-dev:./make.sh rk3568 2>&1 >log.txt生成两个主要的文件是:RKLoader:rk356x_spl_loader_v1.08.111.binUoot FIT Image:uboot.img两个都是有特定格式的混合文件。RKLoader 的生成,是下面的指令:E:\Dev\EE\Rockchip\u-boot-next-dev\make.sh:function pack_loader_image

2022-01-22 17:35:51 2134

原创 Station P2(ROC-RK3568-PC) 裸机开发4_芯片手册

Rockchip RK3568 TRM Part1 V1.1-20210301.pdf1.1 Address Mapping(这一小节非常重要)RK3568 boot from internal BootRom, which supports remap function by softwareprogramming. Remap is controlledbyPMU_SGRF_SOC_CON1[12:11]. When remap is set to2’b01, the BootRom is

2022-01-21 16:18:16 2197 9

原创 Station P2(ROC-RK3568-PC) 裸机开发3_烧写工具

官方下载页面:https://www.t-firefly.com/doc/download/107.html AndroidTool烧写工具,即RKDevTool_Release_v2.84.zip 这个页面下载的RKDevTool内带的config.cfg是针对ROC-RK3568-PC,其它板子可能不通用。 RK驱动助手,即 DriverAssitant_v5.1.1.zip,设备驱动,让windows10可以认出板子。RKDevTool语言切换:config.i...

2022-01-20 22:38:47 2238

原创 Station P2(ROC-RK3568-PC) 裸机开发2_编译官方Uboot

官方推荐的 gcc 版本:--------------------https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-linux-gnu/https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linu

2022-01-20 21:19:41 2226 3

原创 Station P2(ROC-RK3568-PC) 裸机开发1_开发环境搭建

我是这个设备:Station P2, 下面的链接说里面的板子是 ROC-RK3568-PC ,但是好像这个板子做了两个版本的电路板。https://download.t-firefly.com/product/Board/RK356X/Document/Hardware/ROC-RK3568-PC/Specification/CN/ROC-RK3568-PC-开源主板-规格书.pdf想在这个设备上玩裸机开发,了解了下这个板子的参数: CPU : RK3568 A55 =&...

2022-01-18 10:35:24 2551

GIC600 驱动成功(rk3568)

实验型GICv3小驱动,不支持LPI、ITS。 armv8 架构,支持rk3568实板和qemu虚拟板

2022-02-27

Station P2(ROC-RK3568-PC) 裸机开发 之切换到DDR中运行

因为没有办法在自己写的 tpl 中初始化DDR,改为编写 spl。 使用 rk3568_ddr_1560MHz_v1.08.bin 做为 tpl 来初始化内存。 SPL 环境:AArch64 + EL3 + DDR + (入口地址 = 0x00000000) 代码运行后会先初始化 uart2 串口,然后运行一个 mini shell 供交互用 支持 help、exit、hexDump 三条指令 输入 q 并回车,重复5次仍可让设备回到 MASKROM 模式! 从这版开始, printf() 能输出 u64 数据了。

2022-02-12

Station P2(ROC-RK3568-PC) 裸机开发之最简裸机代码

不设置运行栈,沿用 bootrom 环境的栈 运行后只等待一会, 然后又退回bootrom运行,即让板子又重新回到MASKROM模式

2022-02-11

Station P2(ROC-RK3568-PC) 裸机开发之串口收发代码

不设置运行栈,沿用 bootrom 环境的栈 运行后会先初始化 uart2 串口,然后运行一个 mini shell 供交互用 支持 help、exit、hexDump 三条指令

2022-02-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除