linux Öжϴ¦Àí
Öжϴ¦Àí
ÔÚ 2.4 ÄÚºËºÍ 2.6ÄÚºËÖж¼Ê¹Óà request_irq()
º¯ÊýÀ´×¢²áÖжϷþÎñº¯Êý¡£ÔÚ 2.4
ÄÚºËÖУ¬ÐèÒª°üº¬µÄÍ·ÎļþÊÇ #include <linux/sched.h> £¬2.6 ÄÚºËÖÐÐèÒª°üº¬µÄÍ·ÎļþÔòÊÇ #include
<linux/interrupt.h> ¡£º¯ÊýÔÐÍÈçÏ£º
2.4 ÄÚºË
int
request_irq
(unsigned
int
irq
,
void
(*
handler
)(int
,
void
*
,
struct
pt_regs
*
),
unsigned
long
frags
,
const
char
*
device
,
void
*
dev_id
);
2.6 ÄÚºË
request_irq
(unsigned
int
irq
,
irq_handler_t
handler
,
unsigned
long
flags
,
const
char
*
name
,
void
*
dev
);
ÔÚ·¢Éú¶ÔÓ¦
ÓÚµÚ 1¸ö²ÎÊý irq
µÄÖжÏʱ£¬Ôòµ÷ÓÃµÚ 2 ¸ö²ÎÊý handler
Ö¸¶¨µÄÖжϷþÎñº¯Êý(Ò²¾ÍÊÇ°Ñ handler() ÖжϷþÎñº¯Êý×¢²áµ½ÄÚºËÖÐ )¡£
µÚ 3 ¸ö²ÎÊý flags
Ö¸¶¨ÁË¿ìËÙÖжϻòÖжϹ²ÏíµÈÖжϴ¦ÀíÊôÐÔ¡£ÔÚ 2.6 ½ÌеÄÄÚºËÀï(ÎÒµÄÊÇ 2.6.27 ~ 2.6.31 )£¬ÔÚ
linux/interrupt.h Öж¨Òå²Ù×÷Õâ¸ö²ÎÊýµÄºêÈçÏ£º
/*
* These flags used only by the kernel as
part of the
*
irq handling routines.
*
*
IRQF_DISABLED - keep irqs disabled when calling the action handler
* IRQF_SAMPLE_RANDOM - irq is used to
feed the random generator
* IRQF_SHARED - allow sharing the irq among several devices
* IRQF_PROBE_SHARED - set by callers
when they expect sharing mismatches to occur
* IRQF_TIMER - Flag to mark this
interrupt as timer interrupt
* IRQF_PERCPU - Interrupt is per cpu
* IRQF_NOBALANCING - Flag to exclude
this interrupt from irq balancing
* IRQF_IRQPOLL - Interrupt is used for polling (only
the interrupt that is
* registered first in an shared interrupt is
considered for
*
performance reasons)
*/
#define
IRQF_DISABLED 0x00000020
#define IRQF_SAMPLE_RANDOM 0x00000040
#define IRQF_SHARED&
Ïà¹ØÎĵµ£º
usb_hcd_omap_probe (const struct hc_driver *driver) (dev/ohci/ohci-omap.c)
ÔÚÄ£¿é³õʼ»¯Ê±±»platform_driver_register()µ÷Óã¬ÓÃÀ´³õʼ»¯Óëohci_hcd_omap_driver
ÏàÆ¥ÅäµÄusbÖ÷¿ØÖÆÆ÷.
->usb_create_hcd(driver); ´´½¨Ò»¸ö´ú±íhost-controllerµÄÊý¾Ý½á¹¹(struct usb_hcd)²¢³õʼ»¯ core/hcd.h
->hcd = kz ......
LINUXÏÂUSB1.1É豸ѧϰС¼Ç(2)_ÐÒé
USBÐÒé:
ÏÈ¿´USB½Ó¿Ú
¿ÉÒÔ¿´³ö,ÔÚUSBʹÓÃÁË4¸ùÏß,·Ö±ðΪµçÔ´Ïß,µØÏß,ÐźÅÏߺͲî·ÖÐźÅÏß
²î·ÖÐźÅÏßÓÃÓÚ¼ì²âÐźÅÏߵĴ«ÊäÊÇ·ñÕýÈ·
ÏÂÃæÎÒÃÇÖ»¹Ø×¢ÐźÅÏß
È»ºóÊÇUSBµÄ´®¿Ú´«Êä
ÔÚ´®¿Ú´«ÊäÖÐ,ÓÉÓÚËùÓеÄÐźŹ²ÓÃÒ»¸ùÊý¾ÝÏß,ËùÒÔ²»½öÓÐÏÈÀ´ºóµ½µÄÎÊÌâ,¶øÇÒÔÚÒ»¸ ......
ÉùÃ÷
£º¿ÉÒÔ×ÔÓÉ×ªÔØ±¾ÎÄ£¬µ«ÇëÎñ±Ø±£Áô±¾ÎĵÄÍêÕûÐÔ¡£
×÷Õß
£ºÕÅ×Ó¼á
email
:zhangzijian@163.com
˵Ã÷
£º±¾ÎÄËùÉæ¼°Ê¾Àý¾ùÔÚfedora core3ϵõ½¡£
--------------------------------------------------------------------------------
/proc
ÎļþϵͳϵĶàÖÖÎļþÌṩµÄϵͳÐÅÏ¢²»ÊÇÕë¶Ôij¸öÌØ¶¨½ø³ÌµÄ£¬¶øÊÇÄ ......
ÕâÊÇÍøÉÏÌṩµÄ·½·¨£º
¡¡¡¡.Tar.gz
¡¡¡¡½âѹ£ºTar zxvf FileName.Tar.gz
¡¡¡¡Ñ¹Ëõ£ºTar zcvf FileName.Tar.gz DirName
´óÖÂ×ܽáÁËÒ»ÏÂLinuxϸ÷ÖÖ¸ñʽµÄѹËõ°üµÄѹËõ¡¢½âѹ·½·¨¡£µ«ÊDz¿·Ö·½·¨ÎÒûÓÐÓõ½£¬Ò²¾Í²»È«£¬Ï£Íû´ó¼Ò°ïÎÒ²¹³ä£¬ÎÒ½«ËæÊ±ÐÞ¸ÄÍêÉÆ£¬Ð»Ð»£¡
¡¡¡¡.Tar
¡¡¡¡½â° ......
cat ÃüÁî
ʹÓ÷½Ê½£ºcat [-AbeEnstTuv] [--help] [--version] fileName
˵Ã÷£º°Ñµµ°¸´®Á¬
½Óºó´«µ½»ù±¾Êä³ö£¨Ó©Ä»»ò¼Ó > fileName µ½ÁíÒ»¸öµµ°¸£©
²ÎÊý£º
-n »ò --number ÓÉ 1
¿ªÊ¼¶ÔËùÓÐÊä³öµÄÐÐÊý±àºÅ
-b »ò --number-nonblank ºÍ -n ÏàËÆ£¬Ö»²»¹ý¶ÔÓÚ¿Õ°×Ðв»±àºÅ
-s »ò
--squeeze-blank µ±Óöµ½ÓÐÁ¬Ð ......