Re: [PATCH 1/4] arm: msm: gpio support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 30, 2010 at 4:58 PM, H Hartley Sweeten
<hartleys@xxxxxxxxxxxxxxxxxxx> wrote:
> On Tuesday, March 30, 2010 4:12 PM, Daniel Walker wrote:
>> From: Daniel Walker <c_dwalke@xxxxxxxxxxx>
...
>> +
>> +static void msm_gpio_irq_ack(unsigned int irq)
>> +{
>> +     unsigned long irq_flags;
>> +     struct msm_gpio_chip *msm_chip = get_irq_chip_data(irq);
>> +     unsigned b;
>> +
>> +     spin_lock_irqsave(&msm_chip->lock, irq_flags);
>> +
>> +     b = 1U << (irq - FIRST_GPIO_IRQ - msm_chip->chip.base);
>
> Urk... That's a bit confusing...
>
> You might want to make this a macro or an inline function with some kind
> of comment.
>

On a related note, why did you inline msm_gpio_clear_detect_status? It
is used from two other functions.

>> +
>> +#if MSM_GPIO_BROKEN_INT_CLEAR
>> +     /* Save interrupts that already triggered before we loose them. */
>> +     /* Any interrupt that triggers between the read of int_status */
>> +     /* and the write to int_clear will still be lost though. */
>> +     msm_chip->int_status_copy |= readl(msm_chip->regs.int_status);
>> +     msm_chip->int_status_copy &= ~b;
>> +#endif
>> +     writel(b, msm_chip->regs.int_clear);
>> +
>> +     msm_gpio_update_both_edge_detect(msm_chip);
>> +     spin_unlock_irqrestore(&msm_chip->lock, irq_flags);
>> +}
>> +
...

-- 
Arve Hjønnevåg
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux