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!
Ïà¹ØÎĵµ£º
linuxµÄ½ø³Ì¼äͨÐÅ·½Ê½Ö÷ÒªÓУºÄäÃû¹ÜµÀ¡¢ÓÐÃû¹ÜµÀ¡¢ÏûÏ¢¶ÓÁС¢¹²ÏíÄÚ´æ¡¢Ðźš¢ÐźÅÁ¿¼°Ðźŵơ¢socketÍøÂçͨÐÅ¡£½üÈÕÓÉÓÚÏîÄ¿ÐèÒª£¬ÓÃlinux±àдarmµÄÓ¦ÓóÌÐò£¬ÀïÃæÓм¸¸ö¹¦ÄÜÄ£¿é£¬Èô¸É½ø³Ì£¬½ø³Ì¼äµÄͨÐÅ·½Ê½Ñ¡ÔñÁ˹ܵÀ¡¢¹²ÏíÄÚ´æºÍÐźÅÁ¿µÄÅäºÏ¡£Õ⼸ÌìÖÕÓڰѳÌÐòµÄ¿ò¼Ü´î½¨ºÃÁË£¬¶øÎÒÒ²¶Ô¹ÜµÀͨÐÅÓÐÁ˽øÒ»²½µÄÈÏʶ¡£
......
ǶÈëʽLinuxÏ´®¿Ú±à³Ì
Ò»¡¢ÅäÖÃÄÚºË
ÔÚǶÈëʽLinuxϽøÐд®¿Ú±à³Ì֮ǰ£¬ÏÈÔÚÄÚºËÖÐÅäÖô®¿Ú²¿·Ö£¬ÈçÏ£º
Device Drivers--->
character devices--->
Serial drivers--->
&nb ......
ÆäʵÎÄÕÂËã²»ÉÏÔ´´£¬ÊÇÅöµ½ÎÊÌâµÄʱºòÉÏÍø¶«ËÑËÑÎ÷ËÑËѵÄÄÚÈÝ£¬ËãÊǽ軨Ï×·ðÁË°É£¬¸ÐлԴ´Õß¡£
1. °²×°ÐéÄâ»ú£¬ÎÒÓõÄÊÇÒ»¸öÂÌ»¯°æ¡£Ð½¨ÐéÄâ»úµÄ¹ý³ÌÈçÏ£º
Õª×Ô£ºhttp://blog.163.com/zongbin521/blog/static/10217990200981094622635/
ÎÒÃÇÒÔ´´½¨LINUXϵͳΪÀý¡£
µÚÒ»²½:Æô¶¯VMware£¬ÔÚÆäÖ÷½çÃæ“Ö÷Ò³” ......
¹¤×÷¶ÓÁУ¨work queue£©ÊÇÁíÍâÒ»ÖÖ½«¹¤×÷ÍƺóÖ´ÐеÄÐÎʽ £¬ËüºÍÎÒÃÇÇ°ÃæÌÖÂÛµÄËùÓÐÆäËûÐÎʽ¶¼Óв»Í¬¡£¹¤×÷¶ÓÁпÉÒ԰ѹ¤×÷Íƺ󣬽»ÓÉÒ»¸öÄÚºËÏß³ÌÈ¥Ö´ÐУ¬Ò²¾ÍÊÇ˵£¬Õâ¸öÏ°벿·Ö¿ÉÒÔÔÚ½ø³ÌÉÏÏÂÎÄÖÐÖ´ÐС£ÕâÑù£¬Í¨¹ý¹¤×÷¶ÓÁÐÖ´ÐеĴúÂëÄÜÕ¼¾¡½ø³ÌÉÏÏÂÎĵÄËùÓÐÓÅÊÆ¡£×îÖØÒªµÄ¾ÍÊǹ¤×÷¶ÓÁÐÔÊÐí±»ÖØе÷¶ÈÉõÖÁÊÇ˯Ãß¡£
ÄÇô£ ......
10ÔÂ24ÈÕÏûÏ¢£¬¾Ý¹úÍâýÌ屨µÀ£¬LinuxÖ®¸¸ÀîÄÉ˹·ÍÐÍß×È(Linus Torvalds)ÖÜËÄΪWindows 7Åõ³¡£¬²¢ÊúÆðÁË´óÄ´Ö¸¡£
ÖÜËÄ£¬ÍÐÍß×ÈÔÚÈÕ±¾³öϯLinuxÑÐÌֻᣬÔÚ»áÒéÐÝÏ¢Æڼ䣬ËûÅܵ½Á˸½½üµÄWindows 7ÁãÊÛ̯룬²¢¶ÔמµÍ·ÎªWindows 7ÊúÆðÁË´óÄ´Ö¸¡£
ÎÞÂÛÊÇÕæÐÄ×£¸££¬»¹ÊÇÔ¢º¬·í´Ì£¬Ï ......