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

LinuxÄÚºËÖеÄplatform»úÖÆ


 
LinuxÄÚºËÖеÄplatform»úÖÆ
´ÓLinux 2.6ÆðÒýÈëÁËÒ»Ì×еÄÇý¶¯¹ÜÀíºÍ×¢²á»úÖÆ£ºplatform_deviceºÍplatform_driver¡£LinuxÖд󲿷ֵÄÉ豸Çý¶¯£¬¶¼¿ÉÒÔʹÓÃÕâÌ×»úÖÆ£¬É豸ÓÃplatform_device±íʾ£¬Çý¶¯ÓÃplatform_driver½øÐÐ×¢²á¡£
Linux platform driver»úÖÆºÍ´«Í³µÄdevice driver »úÖÆ(ͨ¹ýdriver_registerº¯Êý½øÐÐ×¢²á)Ïà±È£¬Ò»¸öÊ®·ÖÃ÷ÏÔµÄÓÅÊÆÔÚÓÚplatform»úÖÆ½«É豸±¾ÉíµÄ×ÊÔ´×¢²á½øÄںˣ¬ÓÉÄÚºËͳһ¹ÜÀí£¬ÔÚÇý¶¯³ÌÐòÖÐʹÓÃÕâЩ×ÊԴʱͨ¹ýplatform deviceÌṩµÄ±ê×¼½Ó¿Ú½øÐÐÉêÇ벢ʹÓá£ÕâÑùÌá¸ßÁËÇý¶¯ºÍ×ÊÔ´¹ÜÀíµÄ¶ÀÁ¢ÐÔ£¬²¢ÇÒÓµÓнϺõĿÉÒÆÖ²ÐԺͰ²È«ÐÔ(ÕâЩ±ê×¼½Ó¿ÚÊǰ²È«µÄ)¡£platform»úÖÆµÄ±¾ÉíʹÓò¢²»¸´ÔÓ£¬ÓÉÁ½²¿·Ö×é³É£ºplatform_deviceºÍplatfrom_driver¡£Í¨¹ýplatform»úÖÆ¿ª·¢µ×²ãÉ豸Çý¶¯µÄ´óÖÂÁ÷³ÌÈçͼËùʾ¡£
ͼ platform»úÖÆ¿ª·¢Çý¶¯Á÷³Ì
platform_device½á¹¹ÌåÓÃÀ´ÃèÊöÉ豸µÄÃû³Æ¡¢×ÊÔ´ÐÅÏ¢µÈ¡£¸Ã½á¹¹±»¶¨ÒåÔÚinclude/linux/platform_device.hÖУ¬¶¨ÒåÔ­ÐÍÈçÏ£º
struct platform_device {
const char * name;    //¶¨ÒåÆ½Ì¨É豸µÄÃû³Æ
int id;
struct device dev;
u32 num_resources;
struct resource * resource; //¶¨ÒåÆ½Ì¨É豸µÄ×ÊÔ´¡£
};
ÏÂÃæÀ´¿´Ò»ÏÂplatform_device½á¹¹ÌåÖÐ×îÖØÒªµÄÒ»¸ö³ÉÔ±struct resource * resource¡£struct resource±»¶¨ÒåÔÚinclude/linux/ioport.hÖУ¬¶¨ÒåÔ­ÐÍÈçÏ£º
struct resource {
resource_size_t start;  //¶¨Òå×ÊÔ´µÄÆðʼµØÖ·
resource_size_t end;  //¶¨Òå×ÊÔ´µÄ½áÊøµØÖ·
const char *name;    //¶¨Òå×ÊÔ´µÄÃû³Æ
unsigned long flags; //¶¨Òå×ÊÔ´µÄÀàÐÍ£¬±ÈÈçMEM£¬IO£¬IRQ£¬DMAÀàÐÍ
struct resource *parent, *sibling, *child;  //×ÊÔ´Á´±íÖ¸Õë
};
ͨ¹ýµ÷Óú¯Êýplatform_add_devices£¨£©ÏòϵͳÖÐÌí¼Ó¸ÃÉ豸ÁË£¬¸Ãº¯ÊýÄÚ²¿µ÷ÓÃplatform_device_register( )½øÐÐÉ豸ע²á¡£Òª×¢ÒâµÄÊÇ£¬ÕâÀïµÄplatform_deviceÉ豸µÄ×¢²á¹ý³Ì±ØÐëÔÚÏàÓ¦É豸Çý¶¯¼ÓÔØÖ®Ç°±»µ÷Ó㬼´Ö´ÐÐplatform_driver_register£¨£©Ö®Ç°£¬Ô­ÒòÊÇÇý¶¯×¢²áʱÐèҪƥÅäÄÚºËÖÐËùÓÐÒÑ×¢²áµÄÉ豸Ãû¡£
½ÓÏÂÀ´À´¿´platform_driver½á¹¹ÌåµÄÔ­ÐͶ¨Ò壬ÔÚinclude


Ïà¹ØÎĵµ£º

ÖпƺìÆì¿ªÔ´Linux½â¾ö·½°¸

2009Äê12ÔÂ29ÈÕ£¬Ìì¼«ÍøÖ÷°ìµÄÖ÷ÌâΪ“2010ÄêµÄ»ú»á”µÄÑÐÌֻᣬÔÚÖйشåÓ²Å̾ưɾÙÐС£À´×ÔÖпƺìÆì¡¢°Ë°Ù¿Í¡¢Ê±´úÒÚÐÅ¡¢¹ãͨÐÅ´ï¡¢360°²È«ÎÀÊ¿µÄר¼Ò²Î¼ÓÁËÕâ´Î»î¶¯¡£»áÉÏ£¬¼ÇÕßר·ÃÁËÖпƺìÆìÈí¼þ¼¼Êõ¹«Ë¾²úÆ·Êг¡²¿×ܼཪºì¡£
¡¡
¡¡Ì¸Æð¿ª¹ú²úÔ´Èí¼þ2009ÄêµÄ±íÏÖ£¬½ªºì½éÉÜ˵£º“LinuxÒѾ­ÈÕÇ÷³ÉÊì£¬Ê ......

linuxÏÂÍø¿¨ÅäÖÃ

linuxϵͳ°²×°Í꣬ÒÔºóͨ¹ýÃüÁîģʽÅäÖÃÍø¿¨IP¡£ÅäÖÃÎļþͨ³£ÊÇ/etc/sysconfig/network-scripts/ifcfg-interface-name
1.ÅäÖÃÍø¿¨IPµØÖ·
vi /etc/sysconfig/network-scripts/ifcfg-eth0 #µÚ¶þ¿éÍø¿¨£ºvi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth0 #ÎïÀíÉ豸Ãû
IPADDR=192.168.1.10 #IPµØÖ·
NETMASK=255. ......

Ten Powerful Linux Commands

Today is the last day in 2009, I have no idea what should I do but just want to pray that my family, relatives and bosom  friends would have a sweet life in the next year. Linux is a 2nd OS in my life, there are always something new can make me  feel awesome, so I think that with continuou ......

¹ØÓÚlinuxͼÐνçÃæµÄ»ù±¾ÖªÊ¶

  ºÜ¶àLINUX³õѧÕß·Ö²»Çå³þlinuxºÍXÖ®¼ä,XºÍXfree86Ö®¼ä,XºÍKDE,GNOMEµÈÖ®¼äÊÇʲô¹ØÏµ.³£³£»ìÏý¸ÅÄî,ÎÒÏëÒԱȽÏÒ×ÓÚÀí½âµÄ·½Ê½ËµÃ÷Ò»ÏÂX,X11,XFREE,WM,KDE,GNOMEµÈÖ®¼äµÄ¹ØÏµ.ÓÉÓÚ±¾ÈËˮƽÓÐÏÞ¿ÉÄÜ´æÔÚ´íÎó,Çë¸ßÊÖÖ¸Õý.      
   
  Ò»,linux±¾ÉíûÓÐͼÐνçÃæ,linuxÏÖÔÚµÄͼÐνçÃæ ......

¹ØÓÚLinuxµÄÊÓÆµ±à³Ì(v4l2±à³Ì)


¹ØÓÚLinuxµÄÊÓÆµ±à³Ì(v4l2±à³Ì)
Posted on ÐÇÆÚÒ», 2ÔÂ 23rd, 2009 at 11:47 ÏÂÎç
Ô´ÎÄÀ´×Ôhttp://www.isongzi.com/2009/02/23/v4l2/
ǰÑÔ£ºÄ¿Ç°ÕýÔÚæÓÚARMƽ̨µÄLinuxÓ¦ÓóÌÐòµÄ¿ª·¢£¨ÆäʵÊÇ¸Õ¸ÕÆð²½Ñ§Ï°À²£©¡£µ×²ãµÄ¶«Î÷²»Óÿ¼ÂÇÁË£¬¿ª·¢°å×ÓÌṩÁËNAND Bootloader£¬ºÍLinux 2.6µÄÔ´Â룬¶øÇÒ¶¼±àÒëºÃÁË¡£×Ô¼º±àÒëµÄ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ