linux spiÇý¶¯
linux spiÇý¶¯
Äں˰汾£ºlinux-2.6.29
Ö÷ÒªµÄ¼¸¸ö½á¹¹
platform_device platform_driver s3c24xx_spi spi_master spi_bitbang spi_device spi_driver spidev_data s3c_spi_info
µÚÒ»²½£º×¢²áplatform_device
ÔÚarch/arm/mach-s3c2410/mach-qt2410.c ÖÐ×¢²áplatform_device £¬ÆäÖÐs3c2410_spi_info ×÷Ϊplatform_device.private_data. platform_device.name Ϊ"s3c2410-spi".
ͬʱÔÚmach-qt2410.c ÖÐ×¢²áspi_board_info, ÆäÖÐspi_board_info.bus_num=0, Óës2c2410_spi_info ÖеÄbus_num Ïàͬ, ÒÔºó»áͨ¹ýbus_num ±È¶ÔÀ´Æ¥Åä¡£
µÚ¶þ²½£º×¢²áplatform_driver
ÔÚdriver/spi/spi_s3c24xx.c ÖÐ×¢²áplatform_driver (s3c24xx_spi_driver) £¬Õâ¸öplatform_driver µÄÃû×ÖΪ"s3c2410-spi" £¬ÕâÑùÃû×ÖÓëplatform_device µÄÏàͬ£¬ÔÚ×¢²áµÄʱºò»áÆ¥Åäµ½Ò»Æð¡£²¢µ÷ÓÃs3c24xx_spi_driver.probe º¯Êýs3c24xx_spi_probe ¡£
µÚÈý²½£º×¢²áspi_device
ÔÚ.probe º¯ÊýÖд´½¨s3c24xx_spi £¬¸Ã½á¹¹ÖаüÀ¨ÁËÒ»¸öspi_bitbang, Ò»¸öspi_master £¬
ÅäÖÃÁËһЩ»¥Ïà¹ØÁªµÄÏîÒÔºó( ½«3c2410_spi_info.bus_num ×÷Ϊspi_master.bus_num) £¬¼´É¨Ãè×¢²áµÄspi_board_info Á´±í£¬²éÕÒËùÓÐspi_board_info.bus_num Óëspi_master.bus_num ÏàµÈµÄÏ²¢ÎªÃ¿Ò»Ïî×¢²áspi_device £¬ÆäÖÐspi_device µÄÃû×ÖΪspi_board_info. Modalias ¡£
µÚËIJ½£º×¢²á×Ö·ûÉ豸£¬×¢²áspi_driver
ÔÚdriver/spi/spidev.c ÖУ¬ÏÈ×¢²á ÁËÒÔSPIDEV_MAJOR ΪÖ÷É豸ºÅ£¬spidev_ops ΪÎļþ²Ù×÷¼¯µÄ×Ö·ûÉ豸 ¡£
×¢²áspi_driver . ÔÚdriver/spi/spidev.c ÖУ¬ÆäÖÐspi_driver µÄÃû×ÖΪ”spidev” £¬ÕâÑùÓë¸Õ²Å×¢²áµÄspi_device ÏàÆ¥Å䣬ÔÚspi_driver.probe ²¢ÎªÃ¿¸öÆ¥ÅäµÄspi_device ´´½¨ÁËÒ»¸öspidev_data £¬²¢ÔÚsys ϵͳÖÐ×¢²áÒ»¸ö´øÓÐÒÔSPIDEV_MAJOR ΪÖ÷É豸ºÅ£¬ÒÔ£°¿ªÊ¼µÄµÝÔöµÄÊý×ÖΪ¸±É豸ºÅµÄÉ豸µã£¬ÕâÑùÈç¹ûÓÐudev ÔËÐеĻ°»áÔÚ/dev ÏÂÃæ½Úµã¡£
ºÃÁË£¬ËùÓеŤ×÷×¼±¸¾ÍÐ÷ÁË£¬Óû§¿ÉÒÔͨ¹ý·ÃÎÊ/dev/ ϵĽڵãÀ´Ê¹ÓÃÕâ¸öÇý¶¯ÁË¡£
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌṩÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
LinuxÏÂCVS·þÎñÆ÷µÄ°²×°ÓëÅäÖÃ
1¡¢CVS·þÎñÆ÷µÄ°²×°
¡¡¡¡CVS·þÎñÆ÷°æ¿ÉÒÔ´ÓÍøÉϵĺܶàµØ·½ÏÂÔص½£¬Ò²¿ÉÒÔµ½CVSµÄ¹Ù·½ÍøÕ¾½øÐÐÏÂÔØ¡£¸ù¾ÝÄãËùʹÓõÄϵͳ£¬ÏÂÔØÏàÓ¦µÄ°æ±¾£¬È»ºó½øÐа²×°¡£ÒòΪµ±Ç°´ó²¿·ÖÈËÊÇÔÚLinuxÏÂʹÓÃCVS·þÎñÆ÷½øÐа汾¹ÜÀí£¬²¢ÇÒRedhat LinuxÊÇÄ¿Ç°×îÁ÷ÐеÄÒ»¸öLinux·¢ÐаæÖ®Ò»£¬ËùÒÔ±¾ÎĽ«Ö÷Òª»ùÓÚRe ......
Íز¨±ü³Ð²»¶Ï¿ªÍؽøÈ¡µÄ¾«Éñ£¬ÔÚ¼¼ÊõÑз¢ºÍÖ§³ÖÉϲ»¶ÏµÄͶÈëÈËÁ¦ÎïÁ¦£¬Á¦ÇóÔÚ²»¶Ï±ä»¯µÄÊг¡ÐèÇóÖУ¬´ïµ½100%µÄ¿Í»§ÂúÒâ¶È¡£ÔÚ¸Õ¸Õ̤Èë2010Ä꣬¸ù¾Ý¹ýÍùµÄÊг¡µ÷²é£¬½áºÏ¿Í»§µÄÐèÇóºÍ½¨Ò飬Íز¨ÓʼþϵͳÍƳöÁËLinux_°²ÌÚ°æ±¾£¬×÷ΪдºË͸ø¹ã´ó¿Í»§µÄµÚÒ»·ÝÀñÎï¡£
°²ÌÚ´¦ÀíÆ÷ÊÇ×î½üÊ®Äê²ÅÖð½¥·¢Õ¹ÆðÀ´µ ......
/*
* linux/kernel/asm.s
*
* (C) 1991 Linus Torvalds
*/
/*
* asm.s contains the low-level code for most hardware faults.
* page_exception is handled by the mm, so that isn't here. This
* file also handles (hopefully) fpu-exceptions ......