笃行笔记
码龄12年
求更新 关注
提问 私信
  • 博客:560,246
    560,246
    总访问量
  • 118
    原创
  • 572
    粉丝
  • 18
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
加入CSDN时间: 2013-12-13
查看详细资料
个人成就
  • 获得154次点赞
  • 内容获得129次评论
  • 获得892次收藏
  • 博客总排名2,081,916名
创作历程
  • 1篇
    2022年
  • 6篇
    2021年
  • 1篇
    2020年
  • 1篇
    2019年
  • 60篇
    2017年
  • 4篇
    2016年
  • 10篇
    2015年
  • 40篇
    2014年
  • 4篇
    2013年
成就勋章
TA的专栏
  • USB
    30篇
  • PCI-Express
    40篇
  • ARM
    9篇
  • Windows
    14篇
  • Linux
    6篇
  • Raspberry Pi 3
    2篇
  • 工作经历
    5篇
  • 收藏
    9篇
  • WDDM
    12篇
  • Windows internal 7 学习笔记
    2篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

创作活动更多

新星杯·14天创作挑战营·第13期

这是一个以写作博客为目的的创作活动,旨在鼓励大学生博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。我们诚挚邀请你们参加为期14天的创作挑战赛!注: 1、参赛者可以进入活动群进行交流、互相鼓励与支持(开卷),虚竹哥会分享创作心得和涨粉心得,答疑及活动群请见:https://bbs.csdn.net/topics/619781944 【进活动群,得奖概率会更大,因为有辅导】 2、文章质量分查询:https://www.csdn.net/qc

90人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

AMD IOMMU与Linux (4) -- Domain, Group, Device

1.domain的本质是一个页表,1对1的关系,2.IOMMU_DOMAIN_UNMANAGED vs.IOMMU_DOMAIN_DMA a. IOMMU_DOMAIN_UNMANAGED - DMA mappings managed by IOMMU-API user, usedfor VMs b. IOMMU_DOMAIN_DMA - Internally used for DMA-API implementations. This flag a...
原创
博文更新于 2022.01.14 ·
3574 阅读 ·
0 点赞 ·
1 评论 ·
10 收藏

2021,Dec日志-GPU,DPU,IO虚拟化

上一次写还是2020.6写点东西,权当记录1. GPU: Graphic driver最近了解了一下Linux Graphic的驱动, DRM/GEM/TTM等与一个同事聊天时,他说Linux驱动程序就分两类,一类为Graphic,一类为非graphic非graphic简单,Graphic复杂(特别是GEM/TTM, VRAM/GTT内存管理)其实,个人认为Windows下也WDDM是类似的情况而且Graphic驱动,也就那几家公司(NV, INTEL, AMD)有团队在做.
原创
博文更新于 2022.01.04 ·
1215 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

AMD IOMMU与Linux (2) -- IVRS及AMD IOMMU硬件初始化

1. I/O Virtualization ACPI table [1]IVRS (I/O Virtualization Reporting Struct) -> 48-byte header -> IVDB:IVHD (I/O Virtualizaiton Hardware Definition) -- info about IOMMU and devices Types 10h, 11h, 40h ...
原创
博文更新于 2021.12.30 ·
3062 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

AMD IOMMU与Linux (3) -- DMA

两处会设置struct iommu_ops amd_iommu_ops;一处在struct iommu_device的iommu ops;另一处在struct bus_type的iommu ops;amd_iommu_init ->iommu_go_to_state ->state_next ->amd_iommu_init_pci ->...
原创
博文更新于 2021.12.30 ·
2287 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

AMD IOMMU与Linux (1) -- 初始化

具体原理就不写了,IOMMU主要做DMA与Interrupt remapping硬件功能上理解起来并不复杂,但结合Linux,复杂度就明显提高参考了一些内容,但大多数是写IOMMU硬件功能的,有提到Linux的大多数也一笔带过Reference [2]是以Intel IOMMU为介绍对象Reference [1]更加有参考价值先从pci_iommu_alloc()函数开始:在执行pci_iommu_alloc()之前,内核已经通过汇编指令,将IOMMU相关的启动函数,加载到IOM
原创
博文更新于 2021.12.28 ·
3348 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

USB xHCI, NVMe, RDMA, IO_URING, AF_XDP, SDXI

USB xHCI, NVMe, RDMA, IO_URING, AF_XDP都使用生产消费模型Spec Ring/Queue/... Element Producer Consumer Doorbell xHCI Transfer Ring Command Ring TRB (transfer request block) Host/CPU xHC .
原创
博文更新于 2021.12.28 ·
964 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

2021, Dec日志-关于PCIe的AER

PCIe定义了很多的Cap.但大多数人只用到了其中一些最常用的,比如MSI/MSIX, PMC, ARI, PCI express, PASID等等还有很多Cap, 没有深入了解的实践机会, 比如LTR, OBFF, TPH, 等等,等等,非常之多。另外一些Cap,比如AER, DPE/eDPC, ACS, ATS, SRIOV有一点点了解。ATS, PASID可以看成TA(translation agent), ATPT(address trans and protection t..
原创
博文更新于 2021.12.13 ·
3072 阅读 ·
1 点赞 ·
0 评论 ·
7 收藏

第十七篇:实例分析(1)--初探WDDM驱动学习笔记(八)

第四篇(VidPN)中提到过MIRROR驱动.在进入本篇的实际内容前, 带着好奇心, 想请教CSDN中的显卡驱动方面的大虾, 如何才能把这个驱动玩起来, 这个驱动的作用是什么,等等, 敬请指教.显卡的公司目前有两家, A与N(嵌入式方面的, 听到过一些, 比如ARM的MALI, 不太清楚). 任何一家半导体公司, 其主要内容还是硬件的设计, 软件层面上来讲, 就可大可小了, 但不可
原创
博文更新于 2014.06.03 ·
3854 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

第四十七篇:Linux中的USB XHCI HOST TRANSFER RING的相关数据结构 (2)

struct xhci_segment {union xhci_trb*trbs;/* private to HCD */struct xhci_segment*next;dma_addr_t dma;/* Max packet sized bounce buffer for td-fragmant alignment */dma_addr_t bounce
原创
博文更新于 2017.02.21 ·
4392 阅读 ·
1 点赞 ·
4 评论 ·
13 收藏

第十二篇:从生稣出熟稣,从熟稣出醍醐-再读内核驱动设计目标

"照葫芦画瓢"与"改例子代码为已所用"是软件工程师的一条捷径.无论是Windows WDK/DDK还是Linux, 都提供了数不胜数的实例, 以供驱动编程学习与实际项目的需要.以USB驱动为例, 在WDK的例子程序中, 涵盖了KMDF, UMDF, EXE一系列代码例子.而Linux中则更为丰富, 其包含了Host, composite, hub, 以及各类USB设备的驱动源代码, 让
原创
博文更新于 2014.02.07 ·
1500 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

ARMv8-A系列学习笔记(1)--Chapter 1 Introduction.The change from 32-bit to 64-bit

第一个老东家,是做TV demodulator chip的, 后来被收购,尽管多了一个TV silicon tuner业务,但公司的底层软件组,主要的工作还是基于X86的Windows AVStram/BDA PCTV driver,间接写过一点Linux V4L2/BDA PCTV driver,当然,也是基于X86的。第二个老东家,一直搞USB3.0 Device/xHCI host IP
原创
博文更新于 2017.02.27 ·
1151 阅读 ·
0 点赞 ·
2 评论 ·
2 收藏

第三十九篇:通过xHCI USB3.1 Gen 1 PC Certification认证,发文纪念

8月份通过了xHCI USB3.1 Gen 1 Embedded host certification. 中国第一家时隔三个月不到11月,通过了xHCI USB3.1 Gen 1 PC host certification. 中国第一家下了个目标:xHCI USB3.1 Gen 1 PC host certification.
原创
博文更新于 2016.12.01 ·
1179 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第十五篇:而今迈步从头越--最简单的i2c

abc
原创
博文更新于 2014.04.23 ·
1595 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第七篇:风起于青萍之末-电源管理请求案例分析(下)

第五篇:风起于青萍之末-电源管理请求案例分析(上)http://blog.csdn.net/u013140088/article/details/18180249第六篇:风起于青萍之末-电源管理请求案例分析(中)http://blog.csdn.net/u013140088/article/details/18218593
原创
博文更新于 2014.01.14 ·
3923 阅读 ·
1 点赞 ·
4 评论 ·
0 收藏

PCIe学习笔记(25)--- PL-Logical (Gen 1 and Gen 2) --- (2)

TX:DLL往PL送DATA CHARACTER,伴随着其它的几个工作单元:1. K SYMBOLTLP, DLLP需要一个START, 一个ENDSTP, END(EDB)SDP, END其它的K SYMBOL包括: COM, PAD, SKP, STP, SDP, END, EBD, FTS, IDL, EIE2. OSTS1/2SKIP O
原创
博文更新于 2017.07.27 ·
1850 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

USB/PCIE/ROOT COMPLEX & Windows/Linux Driver

好久没有写了总结一下工作多年所涉及的内容:1. USB Device: USB1.1, USB2.0, USB3.0, USB3.12. USB Host: xHCI3. PCIe: EP, Switch, Root Complex4. IOMMU5. APIC: IO-APIC, Local APIC软件(驱动)层面:1. Windows AVStream/BDA driver -- USB/PCI PCTV case (WHQL passed)2. Window.
原创
博文更新于 2020.06.06 ·
1339 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

驱动人生

2018-2019两年时间参与了以下项目PCIe Switch Management SW:Windows KMDF driver Linux kernel driver (包括 NTB kernel driver) Application tool其中,Windows KMDF driver 部分,取得了微软认证 Linux kernel driver (包括 NT...
原创
博文更新于 2019.07.14 ·
880 阅读 ·
3 点赞 ·
4 评论 ·
0 收藏

ARMv8-A系列学习笔记(9)--GIC

在学习MINDSHARE ARMv8-A的时候,碰到几个要点:第一:Synchronous v Asynchronous所谓的Sync exception的特点是:1. 是在执行一条具体的指令的时候产生的 (如执行 LOAD/STORE指令的时候,对应的虚拟地址无效,则产生异常)2. 异常处理结束,返回地址,就为产生该异常的指令地址3. 该异常是精确的(precise)
原创
博文更新于 2017.10.27 ·
1948 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

Windows internals 7 -- 3 -- 概念与工具

好多书都是看了一半就一直没再看了,每次重新翻起来的时候,又是从第一章开始,这次也不能免俗,从第一章开始先从查看版本号开始吧:在CMD LINE中可以通过WINVER来查看当前系统的版本号前面提到过WINDOWS系统的合并以前,我们公司的驱动代码,最终合成后,叫“ALL IN ONE”这个比较土的名字微软也同样,取了一个挺土的名字, ONE COREONE C
原创
博文更新于 2017.09.25 ·
979 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Windows internals 7 -- 2 -- 本书历史

以前看书,从不看所谓的各版本之间的差别现在,感觉,了解一下其中的历史,还是有一定的趣味的,到底什么趣味,见人见智至少可以感受时代的进步,科技的发展,应用的更新,或许直到有一天,所有人的工作都被AI替代了,哈哈第一版本, INSIDE WINDOWS NT,主要包含了WINDOWS NT技术的架构与设计思路, 作者,HELEN CUSTER第二版本,INSIDE WINDOW
原创
博文更新于 2017.09.21 ·
3068 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏
加载更多