Re: [PATCH 07/11] x86, olpc-xo1-sci: Add GPE handler and ebookswitch functionality

From: Sebastian Andrzej Siewior
Date: Mon May 16 2011 - 05:08:19 EST


* Daniel Drake | 2011-04-30 13:32:26 [+0100]:

>diff --git a/arch/x86/platform/olpc/olpc-xo1-sci.c b/arch/x86/platform/olpc/olpc-xo1-sci.c
>index 8fbf961..9de2a00 100644
>--- a/arch/x86/platform/olpc/olpc-xo1-sci.c
>+++ b/arch/x86/platform/olpc/olpc-xo1-sci.c
>@@ -104,6 +177,37 @@ static int __devinit setup_sci_interrupt(struct platform_device *pdev)
> return r;
> }
>
>+static int __devinit setup_ec_sci(void)
>+{
>+ int r;
>+
>+ r = gpio_request(OLPC_GPIO_ECSCI, "OLPC-ECSCI");
>+ if (r)
>+ return r;
>+
>+ gpio_direction_input(OLPC_GPIO_ECSCI);
>+
>+ /* Clear pending EC SCI events */
>+ cs5535_gpio_set(OLPC_GPIO_ECSCI, GPIO_NEGATIVE_EDGE_STS);
>+ cs5535_gpio_set(OLPC_GPIO_ECSCI, GPIO_POSITIVE_EDGE_STS);

why not use the gpio framework here, i.e. gpio_set_value()?

>+
>+ /* Enable EC SCI events */
>+ cs5535_gpio_set(OLPC_GPIO_ECSCI, GPIO_EVENTS_ENABLE);
>+
>+ /* Set the SCI to cause a PME event on group 7 */
>+ cs5535_gpio_setup_event(OLPC_GPIO_ECSCI, 7, 1);
>+
>+ /* And have group 7 also fire the SCI interrupt */
>+ cs5535_gpio_set_irq(7, sci_irq);

What do you do here? Could this be hidden behind a gpio irq_chip or is
this too olpc specific?

Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/