How to write a Linux driver
1. wrote driver function file(s) .
2. stored in the proper folder, eg: character driver stored in folder drivers/char/
3. modified Makefile in this folder(eg: drivers/char/)
-added configuration at somewhere: type like that "obj-$(CONFIG_TESTDRIVER) += testdriver.o"
4. modified config.in in the same folder
-added configuration at somewhere: type like that "bool 'Mytestdriver' CONFIG_TESTDRIVER"
5. modified mem.c in the same folder
-added initial function of my driver into mem.c with same rule within it.
5. added device node in Makefile in folder vendors/Samsung/4510B
-added parameters(same as command mknod's parameters) in DEVICES section, eg: test, c, 254, 0, which stands for the register driver name, device type(char), major device number, minor device number
6. used command make menuconfig at linux root folder(eg: uClinux-dist) to let my driver choice available
7. re-compiled linux with some commands
That's all!
Ïà¹ØÎĵµ£º
1¡¢Í¨¹ýlsmodÀ´»ñµÃÄÚºËÒѼÓÔØÁËÄÇЩģ¿é£¬Õâ¸öÃüÁîÊǶÁÈ¡/proc/modulesÎļþµÄÄÚÈÝÀ´»ñµÃÐÅÏ¢µÄ¡£
2¡¢ÄÚºËÄ£¿é¹ÜÀíÊØ»¤½ø³ÌkmodÖ´ÐÐmodprobeÈ¥¼ÓÔØÄÚºËÄ£¿é¡£modprobeµÄ¹¦ÄܺÍinsmodÀàËÆ£¬µ«ÊÇËü³ýÁË×°ÈëÖ¸¶¨Ä£¿éÍ⣬»¹Í¬Ê±×°ÈëÖ¸¶¨Ä£¿éËùÒÀÀµµÄÆäËûÄ£¿é¡£
3¡¢Èç¹ûÄÚºËÖдò¿ªÁËCONFIG_MODVERSIONSÑ¡Ïî£¬Ô ......
1¡¢Linux »ù´¡
°²×°Linux²Ù×÷ϵͳ
LinuxÎļþϵͳ
Linux³£ÓÃÃüÁî
LinuxÆô¶¯¹ý³ÌÏê½â
ÊìϤLinux·þÎñÄܹ»¶ÀÁ¢°²×°Linux²Ù×÷ϵͳ
Äܹ»ÊìÁ·Ê¹ÓÃLinuxϵͳµÄ»ù±¾ÃüÁî
ÈÏʶLinuxϵͳµÄ³£Ó÷þÎñ°²×°Linux²Ù×÷ϵͳ
Linux»ù±¾ÃüÁîʵ¼ù
ÉèÖÃLinux»·¾³±äÁ¿
¶¨ÖÆLinuxµÄ·þÎñ Shell ±à³Ì»ù´¡Ê¹ÓÃvi±à¼Îļþ
ʹÓÃEmac ......
linux ϼ¯³É svn ÖÁ eclipse È«¹ý³Ì
ÒòΪ java ¿çƽ̨,¶ø eclipse ÊǸö´¿ java ¿ª·¢ÏîÄ¿,ËùÒԴ˼¯³É°²×°¹ý³ÌͬÑùÊÊÓÃÓÚ windows ϵͳ.
µÚÒ»²½:ÏÂÔØ¼¯³É svn ÖÁ eclipse ËùÐèµÄ°ü site-1.6.5.zip(¿ÉÒÔÈ¥¹ÙÍø http://subclipse.tigris.org/ ÏÂÔØ,Ò²¿ÉÒÔÈ¥×÷ÕßµÄ csdn ×ÊÔ´ÀïÏÂÔØ site-1.6.5.zip ²å¼þ)
µÚ¶þ²½:½« si ......
ǶÈëʽLinuxÏ´®¿Ú±à³Ì
Ò»¡¢ÅäÖÃÄÚºË
ÔÚǶÈëʽLinuxϽøÐд®¿Ú±à³Ì֮ǰ£¬ÏÈÔÚÄÚºËÖÐÅäÖô®¿Ú²¿·Ö£¬ÈçÏ£º
Device Drivers--->
character devices--->
Serial drivers--->
&nb ......