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&
Ïà¹ØÎĵµ£º
ÏÈÊÇÄÚºËÇý¶¯³ÌÐò£º
#include <linux/module.h>//¾ßÌåµÄÍ·ÎļþλÖÃΪ/opt/FriendlyARM/mini2440/linux-2.6.29/include/linux/*.h
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/poll.h>
#include <l ......
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 ......
ÏÖÔÚÔݶ¨µÄѧϰĿ±êΪһ¸öUSBÊó±êµÄÉ豸µ½Ö÷»úµÄ´«Êä¹ý³ÌÈí¼þÉϵĹᴩ(»áÉæ¼°µ½²¿·ÖÓ²¼þ µ«ÊDZ¾È˵ĵçµç·֪ʶÓÐÏÞ Éæ¼°µÄÁ¿²»»á¶à)
ѧϰµÄ¿ò¼ÜÈçÏÂ:
1. USB1.1ÐÒé
A. ¿ØÖÆ´«Êä
B. Öжϴ«Êä
2. &n ......
ÉùÃ÷
£º¿ÉÒÔ×ÔÓÉ×ªÔØ±¾ÎÄ£¬µ«ÇëÎñ±Ø±£Áô±¾ÎĵÄÍêÕûÐÔ¡£
×÷Õß
£ºÕÅ×Ó¼á
email
:zhangzijian@163.com
˵Ã÷
£º±¾ÎÄËùÉæ¼°Ê¾Àý¾ùÔÚfedora core3ϵõ½¡£
--------------------------------------------------------------------------------
/proc
ÎļþϵͳϵĶàÖÖÎļþÌṩµÄϵͳÐÅÏ¢²»ÊÇÕë¶Ôij¸öÌØ¶¨½ø³ÌµÄ£¬¶øÊÇÄ ......
×¼±¸¹¤×÷
qt-everywhere-opensource-src-4.6.2.tar
½âѹ tar xvzf qt-everywhere-opensource-src-4.6.2.tar
ÅäÖÃ:
./configure -prefix /home/hyk/Qt_self_compiled/Qt_4_6_2
£¨Ö»ÊǸıäÁ˰²×°Ä¿Â¼£©
gmake
(ÖØÅäÖÃ gmake confclean , configure)
ÖÐÎç12 ......