Mike,

This code is part of DSPLink isr.c. Are you trying to register an ISR for 
shared or non-shared interrupt? If you are registering for shared interrupt 
(such as PCI), you should use the SA_SHIRQ version, otherwise use 0. But the 
define for DM642_PCI is very DSPLink-specific, so you should remove that if you 
are doing your own thing.

Regards,
Mugdha

________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mike Gao
Sent: Saturday, June 07, 2008 10:34 PM
To: [email protected]
Subject: why request_irq() return -16 on Davinci EVM?

Hi,

I met this issue when I try to setup a IRQ. It works before but stop working 
without any change on kernel.

        osStatus = request_irq (isrObj->irq,
                                ISR_Callback,
#if defined (DM642_PCI)
                                SA_SHIRQ,
                                "DSPLINK",
#else /* if defined (DM642_PCI) */
                                0,                  /* non shared, non-fiq */
                                "DSP/BIOS LINK",
#endif /* if defined (DM642_PCI) */
                                isrObj) ;



go to the kernel code in irq.c to see the setup_irq(), some code like this,

    /*
     * The following block of code has to be executed atomically
     */
    desc = irq_desc + irq;
#ifdef CONFIG_PREEMPT_HARDIRQS
    if (!(new->flags & SA_NODELAY)) {
        if (start_irq_thread(irq, desc))
            return -ENOMEM;
    }
#endif
    spin_lock_irqsave(&irq_controller_lock, flags);
    p = &desc->action;

    if ((old = *p) != NULL) {
        /* Can't share interrupts unless both agree to */
        if (!(old->flags & new->flags & SA_SHIRQ)) {
            spin_unlock_irqrestore(&irq_controller_lock, flags);
            return -EBUSY;
        }

Anybody can help me figure out what this means?

Thanks very much in advance!
Mike

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to