当前位置:   article > 正文

从零开始之驱动开发、linux驱动(一、驱动基础)_不同cpu驱动开发

不同cpu驱动开发

 

准备19年在深圳这边找驱动相关的工作了,所以从头开始再学一遍韦东山老师的驱动课程,并做好记录,希望能找到满意的工作。

同时该系列的驱动都是在前面新移植的linux3.16.57的基础上工作的。

 

之前的驱动模型学习和分析,从框架上了解的驱动的组织形式(在4.9的内核的基础上分析的)。

https://blog.csdn.net/qq_16777851/article/category/7901554

 

 

在ARM工作模式中,处理器模式切换可以通过软件控制进行切换,即修改CPSR模式位,但这是在特权模式下,当我们处于用户模式下,是没有权限实现模式转换的。若想实现模式切换,只能由另一种方法来实现,即通过中断或是异常处理过程进行切换。于是ARM指令集中提供了两条产生异常的指令,通过这两条指令可以用软件的方法实现异常,其中一个就是中断指令swi(另一个是断点中断BKPT ).

 

 软件中断指令(Software Interrupt, swi)用于产生软中断,实现从用户模式变换到管理模式,CPSR保存到管理模式的SPSR中,执行转移到swi向量。在其他模式下也可以使用SWI指令,处理器同样切换到管理模式。

1.SWI指令格式如下:

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号