随笔分类 - Linux

1 2 3 4 5 ··· 12 下一页

Linux 应用编程、驱动编程、内核知识、读书笔记
摘要:邮箱:pengdonglin137@163.com 参考:https://stackoverflow.com/questions/1706328/how-do-shared-libraries-work-in-a-mixed-64bit-32bit-system 概述 在嵌入式开发时,经常会通过编译 阅读全文
posted @ 2019-12-06 14:53 摩斯电码 阅读(2838) 评论(0) 推荐(0) 编辑
摘要:作者 彭东林 pengdonglin137@163.com 平台 Linux-4.14.13 Qemu + vexpress 概述 前面介绍了single_open,下面结合一个简单的demo驱动,学习一下seq_file的用法。 下面是一张示意图: 正文 seq_demo驱动里实现了一个简单的链表 阅读全文
posted @ 2018-02-10 21:28 摩斯电码 阅读(1064) 评论(0) 推荐(0) 编辑
摘要:作者 彭东林 pengdonglin137@163.com 平台 Linux-4.14.13 Qemu + vexpress 概述 从内核中导出信息到用户空间有很多方法,可以自己去实现file_operations的read函数或者mmap函数,但是这种方法不够简单,而且也会有一些限制,比如一次re 阅读全文
posted @ 2018-02-10 21:23 摩斯电码 阅读(5101) 评论(0) 推荐(0) 编辑
摘要:作者 作者:彭東林 郵箱:pengdonglin137@163.com QQ:405728433 软件版本 Linux-4.10.17 概述 在之前的博客里介绍了TQ2440上移植设备树的方法,其实,Samsung已经把大部分工作做了,所以往TQ2440上面移植设备树基本就是修改设备树。 下面是从g 阅读全文
posted @ 2017-08-11 14:18 摩斯电码 阅读(975) 评论(0) 推荐(0) 编辑
摘要:1、声卡驱动注册完成后的框图 2、open & hw_params 完。 阅读全文
posted @ 2017-08-05 20:47 摩斯电码 阅读(406) 评论(0) 推荐(0) 编辑
摘要: 为了尽量还原《深入Linux内核架构》这本书的环境,我下载了Linux 2.6.24,由于这个内核版本比较老,所以用最新的gcc编译会有问题,所以需要安装一个比较老的gcc,从该内核的README得知,gcc的版本最少应该是3.2. 阅读全文
posted @ 2017-07-02 13:03 摩斯电码 阅读(1376) 评论(2) 推荐(0) 编辑
摘要:记录一些Linux Device Drivers中常用的API。 Linux官方提供的内核文档: 1、 最新版: https://www.kernel.org/doc/html/latest/ 2、 4.10: https://www.kernel.org/doc/html/v4.10/ 3、 Un 阅读全文
posted @ 2017-05-11 13:58 摩斯电码 阅读(2821) 评论(1) 推荐(1) 编辑
摘要:内核文档: Documentation/vm/pagemap.txt pagemap is a new (as of 2.6.25) set of interfaces in the kernel that allowuserspace programs to examine the page ta 阅读全文
posted @ 2017-05-03 15:36 摩斯电码 阅读(4020) 评论(0) 推荐(0) 编辑
摘要:作者信息 作者: 彭东林 邮箱: pengdonglin137@163.com QQ: 405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核版本: Linux-4.10 Busybox版本:busybox-1.24.2 工具链: gc 阅读全文
posted @ 2017-02-22 21:57 摩斯电码 阅读(11637) 评论(9) 推荐(0) 编辑
摘要:作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台 tiny4412 ADK Linux-4.9 概述 前面一篇博文基於tiny4412的Linux內核移植 实例学习中断背后的知识(1)结合示例分析了一下新版kernel引入设备树和irq domain后 阅读全文
posted @ 2017-01-26 00:27 摩斯电码 阅读(2221) 评论(0) 推荐(1) 编辑
摘要:作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台 tiny4412 ADK Linux-4.9 概述 前面几篇博文列举了在有设备树的时候,gpio中断的用法示例。下面我们尝试分析一下Linux内核是如何做到的,如果哪写的有问题,欢迎大家批评指正,谢谢。 阅读全文
posted @ 2017-01-25 12:07 摩斯电码 阅读(4273) 评论(0) 推荐(1) 编辑
摘要:作者:彭東林 郵箱:pengdonglin137@163.com QQ:405728433 開發板 TQ2440 + 64MB 內存 + 256MB Nand 軟件 Linux: Linux-4.9 (https://github.com/pengdonglin137/linux-4.9 ) u-b 阅读全文
posted @ 2017-01-02 00:18 摩斯电码 阅读(3976) 评论(10) 推荐(1) 编辑
摘要:作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uImage做了稍許改動 簡介 前面我們實現了一種設備樹下中斷的使用方法,下面介紹第二種,這種方式本質上跟前 阅读全文
posted @ 2016-12-25 23:27 摩斯电码 阅读(797) 评论(0) 推荐(0) 编辑
摘要:有时我们需要在/sys下面创建一些目录, 下面给出了一个示例。 在加载驱动模块后, 在/sys下面会创建一个名为sysfs_demo的目录,并在其中在创建几个文件和目录。 这里用到的两个函数分别是: kobject_create_and_add 和 sysfs_create_group。前一个函数用 阅读全文
posted @ 2016-12-24 15:18 摩斯电码 阅读(5040) 评论(0) 推荐(0) 编辑
摘要:作者:彭东林 邮箱:pengdonglin137@163.com 在阅读kernel代码的时候,总是看到有很多驱动都在第一行定义pr_fmt,闲来没事,分析了一下, 发现,确实挺方便的。下面记录分享一下。 我们知道,在驱动中可以使用dev_dbg来输出log,在输出的log中会有一些额外的信息,如所 阅读全文
posted @ 2016-12-21 22:50 摩斯电码 阅读(3851) 评论(0) 推荐(1) 编辑
摘要:轉載: http://jingyan.baidu.com/article/4b07be3c60da3f48b380f3f0.html 一,安装fcitx,这么好的软件,ubuntu软件中心肯定是找得到的,但还是命令来得快一些吧。 sudo apt-get install fcitx-table-wb 阅读全文
posted @ 2016-11-28 17:31 摩斯电码 阅读(641) 评论(0) 推荐(0) 编辑
摘要:作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uImage做了稍許改動 概述 這篇博客以一個簡單的led燈實驗演示一下在含有設備樹、pinctrl時的gp 阅读全文
posted @ 2016-11-20 23:09 摩斯电码 阅读(1514) 评论(0) 推荐(0) 编辑
摘要:在使用設備樹的時候, 有時會遇到下面的問題. 在設備樹中配置的屬性如下: fusb301,init-mode = <0x20>; 但是在驅動中讀出的卻是: rc = of_property_read_u8(dev_node, "fusb301,init-mode", &data->init_mode 阅读全文
posted @ 2016-11-08 20:10 摩斯电码 阅读(6776) 评论(0) 推荐(0) 编辑
摘要:下面說一下在用戶空間調用open/close/dup跟驅動中的open和release的對應。 下面是測試驅動: 下面是用戶空間測試代碼: 下面是輸出的log: 通過分析log,我們得出結論, 用戶空間每調用一次open,驅動中的open都會被執行一次,而在調用dup的時候,只是將struct fi 阅读全文
posted @ 2016-10-23 18:21 摩斯电码 阅读(299) 评论(0) 推荐(0) 编辑
摘要:在閱讀Linux內核代碼的時候,會經常遇到下面的幾個宏函數: IS_ENABLED 這個宏最爲常見 IS_BUILTIN IS_MODULE IS_REACHABLE 這幾個宏函數是在文件include/linux/kconfig.h中定義的,如下: 首先需要有一些基礎知識. 我們知道,在進行內核配 阅读全文
posted @ 2016-10-14 14:45 摩斯电码 阅读(1997) 评论(0) 推荐(0) 编辑

1 2 3 4 5 ··· 12 下一页