Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

gpio linux ʵÏÖÄ£ÐÍ

 Ô­ÎĵØÖ·£ºhttp://lhsblog01.blog.163.com/blog/static/1020045192010221104237126/
     
       GPIOÊÇÓëÓ²¼þÌåϵÃÜÇÐÏà¹ØµÄ£¬linuxÌṩһ¸öÄ£ÐÍÀ´ÈÃÇý¶¯Í³Ò»´¦ÀíGPIO£¬¼´¸÷¸ö°å¿¨¶¼ÓÐʵÏÖ×Ô¼ºµÄgpio_chip¿ØÖÆÄ£¿é£ºrequest, free, input,output, get,set,irq...
        È»ºó°Ñ¿ØÖÆÄ£¿é×¢²áµ½ÄÚºËÖУ¬Õâʱ»á¸Ä±äÈ«¾ÖgpioÊý×飺gpio_desc[]. 
        µ±Óû§ÇëÇógpioʱ£¬¾Í»áµ½Õâ¸öÊý×éÖÐÕÒµ½£¬²¢µ÷ÓÃÕâ¸öGPIO¶ÔÓ¦µÄgpio_chipµÄ´¦Àíº¯Êý¡£
        gpioʵÏÖΪһ×é¿ÉÓÃµÄ gpio_chip, ÓÉÇý¶¯´«Èë¶ÔÓ¦ gpioµÄÈ«¾ÖÐòºÅ È¥ request, dataout ,datain, free. Õâʱ»áµ÷ÓÃgpio_chipÖоßÌåµÄʵÏÖ¡£
       ¼Ä´æÆ÷¶Áдº¯Êý:   __raw_writel()   __raw_writeb()   __raw_readl()   __raw_readb()
        gpioÊÇÒ»×é¿É¿Ø¼þµÄ½Å£¬Óɶà¸ö¼Ä´æÆ÷ͬʱ¿ØÖÆ¡£Í¨¹ýÉèÖöÔÓ¦µÄ¼Ä´æÆ÷¿ÉÒÔ´ïµ½ÉèÖÃGPIO¿Ú¶ÔӦ״̬Ó빦ÄÜ¡£
Êý¾Ý״̬£¬ÊäÈëÊä³ö·½Ïò£¬ÇåÁ㣬Öжϣ¨ÄǸö±ßÑØ´¥·¢£©£¬ Ò»°ãÊÇÒ»×飨bank£©Ò»×éµÄ¡£
//****************linux ÖÐ GPIOÄ£ÐÍ****************************************//
×¢²á·½·¨£º
1£ºstruct gpio_chip: ±íʾһ¸ögpio controller.ͨ¹ýÕâ¸ö½á¹¹³éÏó»¯ËùÓÐµÄ GPIOÔ´£¬¶øÈðåÉÏÆäËüµÄÄ£¿é¿ÉÒÔÓÃÏàͬµÄ½Ó¿Úµ÷ÓÃʹÓÃÕâЩGPIO¡£
2: struct gpio_desc: ±íʾһ¸ögpio¿Ú£¬º¬¶ÔÓ¦µÄ gpio_chip.
3: ARCH_NR_GPIOS£º  Óë°åÏà¹ØµÄGPIO¿ÚÊýÁ¿£¬¼´ÊÇÈ«¾ÖGPIOÊý×飺static struct gpio_desc gpio_desc[ARCH_NR_GPIOS];
4£º ×¢²á gpio_chipʱ£¬¾ÍÊǸù¾Ý chip µÄÊý¾Ý ÐÞ¸ÄÈ«¾Ö GPIOÊý×éÖÐ gpio_desc ×ֶΣ¨chip, flags£©¡£
//************* twl4030 ÖÐ GPIOµÄʵÏÖ *******************//
Ê×ÏÈ twl4030ÖÐµÄ GPIOÄ£¿é: ÔÚ twl4030µÄÇý¶¯×¢²áʱ£¬probeÖУ¬Éú³ÉÁËGPIO¶ÔÓ¦µÄ i2c_client Óë platform_device.
twl4030£¬µ±¼ÓÔØGPIOµÄÇý¶¯(Æ¥Åäplatform_device)ʱ£¬Ê×ÏȽøÐжÔÓ¦µÄÉèÖã¬GPIOÉèÖá£
È»ºóÉèÖýṹ£º gpio_chip: twl_gpiochip: gpio_twl4030_pulls,pio_twl4030_debounce,
×¢²á Ö®£ºret = gpiochip_add(&twl_gpiochip);//Ìí¼Óµ½È«¾ÖµÄ gpio_descÊý×éÖС£¼´ÊÇÉèÖ


Ïà¹ØÎĵµ£º

linuxÃüÁîÊÖ²á


 
·½±ãµÄlinuxÃüÁîÊÖ²á
 
À´Ô´: ChinaUnix²©¿Í ¡¡ÈÕÆÚ£º 2006.07.24 00:31¡¡(¹²ÓÐ0ÌõÆÀÂÛ) ÎÒÒªÆÀÂÛ
 
NO
·ÖÀà
PS1
ÃüÁîÃû
Ó÷¨¼°²ÎÊý
¹¦ÄÜ×¢½â
¶ÔÓ¦Õ½Ú
1
Îļþ¹ÜÀí
#
ls
ls -a
Áгöµ±Ç°Ä¿Â¼ÏµÄËùÓÐÎļþ£¬°üÀ¨ÒÔ.Í·µÄÒþº¬Îļþ
Îļþ¹ÜÀí
#
ls
ls -l»òll
Áгöµ±Ç°Ä¿Â¼ÏÂÎļþµÄÏêϸР......

linuxµÄ´¥ÃþÆÁÖ®ËÄ£ºandroidµÄtslib¶ÔϲãLinuxµÄ¿ØÖÆ

£¨1£©ÈýÐǵĴ¥ÃþÆÁÇý¶¯s3c-ts.c£º
s3c_ts_init-¡·platform_driver_register(&s3c_ts_driver)£»
static struct platform_driver s3c_ts_driver = {
       .probe          = s3c_ts_probe,
       .dri ......

LinuxÏÂconfigureÃüÁî²ÎÊýµÄÏêϸ˵Ã÷

Linux»·¾³ÏµÄÈí¼þ°²×°£¬²¢²»ÊÇÒ»¼þÈÝÒ×µÄÊÂÇé;Èç¹ûͨ¹ýÔ´´úÂë±àÒëºóÔÚ°²×°£¬µ±È»ÊÂÇé¾Í¸üΪ¸´ÔÓһЩ;ÏÖÔÚ°²×°¸÷ÖÖÈí¼þµÄ½Ì³Ì¶¼·Ç³£ÆÕ±é;µ«Íò±ä²»ÀëÆäÖУ¬¶Ô»ù´¡ÖªÊ¶µÄÔúÊµÕÆÎÕ£¬°²×°¸÷ÖÖÈí¼þµÄÎÊÌâ¾ÍÓ­Èжø½âÁË¡£Configure½Å±¾ÅäÖù¤¾ß¾ÍÊÇ»ù´¡Ö®Ò»£¬ËüÊÇautoconfµÄ¹¤¾ßµÄ»ù±¾Ó¦Óá£
ÓëһЩ¼¼ÇÉÏà±È£¬ConfigureÏԵûù´¡Ò» ......

linux LVM»ù±¾²Ù×÷

1.Ôö¼ÓÓ²¼þ
Ôö¼ÓµÄideÓ²ÅÌǰ׺Ϊhd£¬scsiÓ²ÅÌǰ׺Ϊsd£»µÚÒ»¿éÓ²ÅÌΪhda»òsda£¬µÚ¶þ¿éÓ²ÅÌΪhdb»òsdb,ÒÔ´ËÀàÍÆ¡£
2.ÓÃpvcreate´´½¨physical volumn
pvcreate /dev/sdb1 /dev/sdb2
´Ë´¦ËùÓõķÖÇøÊǵڶþ²½ÖвÙ×÷µÄÀàÐÍΪ8eµÄ·ÖÇø£¬pvcreateµÄ²ÎÊý¿ÉÒÔΪ1¸ö»ò¶à¸ö£»´´½¨Íê³Éºó¿ÉÒÔÓÃpvdisplay -vÀ´²é¿´´´½¨µÄÇé¿ö£¬ÓÃpvre ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ