- 博客(30)
- 资源 (5)
- 收藏
- 关注
原创 libmali ---> libdrm ???
libmali --- gbm ---> drm plane ???竟然和电脑上的概念混淆了。MALI 只是3D加速器,没有显示输出!!!所以最后结果要给显示端。
2022-06-08 13:49:09
1534
原创 取自开源,分享于开源 —— 利用CVE-2017-8890漏洞ROOT天猫魔屏A1
本来对阿里的东西挺有好感的,没想到这么一个东西就一个开机广告问题把我的好感败光了。入手的时候根本没有什么开机广告,使用三个月之后一次系统更新就出现了开机广告。感情升级就是生个开机广告?果断投诉。可是又如何呢?最多只是把我提到的“开机广告音量大,吓死人,还不可调节音量”修改了,开机广告还是存在。就算是入手四五个月还是比较新的,直接拆了,然后扔一边,搬家的时候就当垃圾扔了。什么阿里!突然翻到之前的记录,躺着也是躺着,就分享下。...
2022-05-12 20:28:11
4523
原创 像我们这种,还是halo比较适合
写点博客,主要是记录当时的操作、学习的知识点,不需要什么特别的功能。最简单的方式,手写html,找个html网站模板,然后修改出一个.html模板,然后就是复制修改,结束。查看十分简单,直接浏览器打开index.html。只要保持整个目录结构不变,随便放,随便备份,随写随备随看。index.html目录也类似这样<!DOCTYPE HTML><html lang="en-US"><head><meta charset="UTF-8"><
2022-04-26 15:21:06
141
原创 取自开源,分享于开源 —— HHKB Pro2 换主控改造
做开发最麻烦的就是做linux开发,但一些工具只能在windows上使用,一段时间感觉需要Ubuntu下做事就装Linux mint,再过段时间,又得在windows下阅读代码、使用工具,HHKB键盘又得不停按拨码开关切换。真是烦,就想着改造,去淘宝上搜,发现一个做好stm32主控板要300多(带蓝牙)。还不如自己动手,于是找带USB device功能的,找到了一个stm32f401ccu6小板,19块,首单优惠10元,也就是9块钱就够了。果断出手。 当然,还有最最最关键的,Git...
2022-04-26 11:03:15
1720
原创 加密传输相关
目前除了几颗SoC之外就只有专用加密芯片集成了SM系列国家商用密码算法体系,任重道远,希望SoC能尽快集成。某SoC:1. AES(128/256),2. HASH(SHA1/SHA256/HMAC_SHA1/HMAC_SHA256),3. RSA(256/512/1024/2048)1. HASH甲要发消息M给乙,为了方便乙验证消息M完整,将M做HASH计算,然后将M+HASH(M)一起发送给乙。乙收到后,计算、验证 OK。丙知道后,...
2022-04-21 14:41:00
252
原创 x570 raidxpert2
搞了两个1TB硬盘组raid,AMD x570支持硬件raid, raid0模式,但操作系统下raid驱动只看到了windows的,对于一个也厌烦了windows且工作于嵌入式Linux的人来说,是头疼的事。虽然linux下有软raid开源程序(试过mdadm,但没试过组完在windows上能否识别,毕竟有些小工具只有在windows或winpe上能用),但有硬件raid为什么要闲置着。 终于看到GitHub - ichitodake/rcraid-dkms: AMD RAIDXpert driv.
2022-04-05 09:50:25
3126
原创 OpenHarmony(10) —— “续下命”,然后还可以再挣扎一段时间
OpenHarmony3.0出来很久了,之前也研究了一点,主要是想从头开始,从linux启动init进程开始了解OpenHarmony(linux版)。 之前的一点研究OpenHarmony: 了解OpenHarmony并移植再使用的记录 (gitee.com)这里提一点,一开始以为xx_lite 方式比较合适,见README_learn.md,在研究了解并按自己想法改写(init作为主要程序,其他service以.so方式加载)时遇到一个fchmodat BUG问题 ui...
2022-03-25 15:01:25
3212
原创 OpenHarmony(9) —— load ELF
还没具体看Harmony HDF 驱动框架。 Linux宏内核,但采用了LKM机制,可以动态增删模块,增加了自由度。而对于微内核的思想,其实没有“驱动”和“程序”之分。 但还是喜欢linux insmod/rmmod *.ko这样的模块动态加载,LKM机制确实很方便。 看看Linux怎么实现的吧。 编译linux驱动需要用到linux源码树的symbols, 如System.map文件等 先看下别人的分析《Linux内核模块LKM的动态加载技术分析》 https://b...
2020-12-26 21:31:13
364
原创 ARM_UNWIND_BACKTRACE (2)
修改点:1. 所有vrs[7]都要改成vrs[11],2. unwind_frame()/* We are done if current frame pc is equal to the virtual pc, prevent infinite loop */ if(pc == ucb.vrs[15]) { return 0; }如果C代码函数有递归调用,可能不会push pc,所以pop时pc是没有改变的,递归虽然调用的是同一个函数,但不能只认为只有一...
2020-12-12 17:54:15
691
原创 ARM_UNWIND_BACKTRACE
代码仓:https://codechina.youkuaiyun.com/fu851523125/arm_unwind_backtrace.git参考文章:arm上backtrace的分析与实现原理_流风回雪的博客-优快云博客2.2 unwind对于APCS来说,优点是分析起来比较简单,跟踪起来也可以很容易。缺点就是指令过多,栈消耗大,占用的寄存器也过多,比如每次调用 都必须将r11,r12,lr,pc入栈。为了解决这个问题,提出了第二种方案:使用unwind就能避免这些问题,生产指令的效率..
2020-12-10 16:51:24
3076
原创 OpenHarmony(8) —— Task调度 (1)
首先是一个疑惑,main()开头: OsSetMainTask(); OsCurrTaskSet(OsGetMainTask());secondary_cpu_start()开头: OsCurrTaskSet(OsGetMainTask());MainTask:LosTaskCB g_mainTask[LOSCFG_KERNEL_CORE_NUM];VOID* OsGetMainTask(){ return...
2020-10-19 20:05:46
2560
原创 OpenHarmony(7) —— 简单整合
代码仓:https://codechina.youkuaiyun.com/fu851523125/rtos https://codechina.youkuaiyun.com/fu851523125/rtos/-/tags/release_v0.2.0 总结下前面两个要点:1. release secondary cores参考hisi u-boot中go_cpu1 /* * 0xe51ff004 = "ldr pc, [pc, #-4]" ...
2020-10-18 15:16:04
2085
原创 OpenHarmony(6) —— 内存管理
系统运行,少不了做些内存操作,MemAlloc / MemFree,就要实行内存管理。 以LiteOS为基础,所以设计上需要看LiteOS的相关文档https://support.huaweicloud.com/LiteOS/index.html在HI3559V200 SDK开发包中也有liteos内核开发文档,其中也描述了内存管理算法。 网页资料看https://support.huaweicloud.com/kernelmanual-LiteOS/zh-cn_topic_01453...
2020-10-14 15:15:19
3109
原创 OpenHarmony(5) —— OHOS信息
代码仓:https://codechina.youkuaiyun.com/fu851523125/rtos 下载HI3516DV300官方板子的固件,烧写到自己的板子上,虽然不能正常使用,但主要看一些信息。官方教程https://device.harmonyos.com/cn/docs/start/introduce/oem_camera_start_first_example-0000001051610926EMMC 分区0x00000000 - 0x00100000 1M u-boot....
2020-10-10 11:04:16
3224
原创 OpenHarmony(4) —— system counter
进入多核时代后,ARM公司提供了timer的硬件设计,集成在了自己的多核结构中。例如:在Cortex A15 MPcore的硬件体系结构中有一个HW block叫做Generic Timer(该硬件取代了A9中的global timer、private timer的功能),为系统提供了计时以及触发timer event的功能。 ARM generic timer的硬件block主要是SOC上的System counter(多个process共享,用来记录时间的流逝)以及附着在各个proce...
2020-10-04 12:43:07
1533
原创 OpenHarmony(3) —— SMP调度理解
现代调度执行都是基于时间片(Time Slice)概念的。启动一个定时器,一个时间片时隙就是定时器的计数周期。在kernel\liteos_a\kernel\base\core\los_timeslice.c中VOID OsTimesliceCheck(VOID),一个时间片过去后进行检测是否改变当前调度TaskOsTimesliceCheck() <<===OsTickHandler() <<===OsTickEntry() ...
2020-10-02 17:51:05
2061
原创 OpenHarmony(2)
从头看起,看有没有什么改变。 harmonyos/kernel/liteos_a/arch/arm/arm/src/startup/下
2020-09-24 14:05:16
3324
原创 OpenHarmony (1)
LiteOS,比较熟悉了,出来很久了,真正接触它是在Hi3559v200运动相机上,跑着LiteOS + Linux双系。在学习了解时,希望按照自己的风格来,于是边了解边结构。 但毕竟没有全开源,所以对于底层的调度等都无法看到代码,只能望着libcortex-a7.a而惆怅。 处于对系统调度算法及SMP的好奇,搜索到RT-Thread是全开源的,于是下载研究,并在HI3518EV300上边学边写。了解了后,原来是那么简单,有点类似单片机,开个定时器,到时间了就调度。虽说简单,但设计上要考...
2020-09-22 15:15:10
3296
rgmii phy YT8511 v1.0.2 datasheet.pdf
2020-09-28
AE-4M-3017 GC4653 CSP Datasheet V1.1 20191229.pdf
2020-09-18
SV810_Brief_Datasheet.pdf
2020-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人