This can be used as a wakeup source for power management. Signed-off-by: Li Yang <le...@freescale.com> --- arch/powerpc/boot/dts/p2020ds.dts | 9 ++++++++- arch/powerpc/platforms/85xx/mpc85xx_ds.c | 26 +++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/boot/dts/p2020ds.dts b/arch/powerpc/boot/dts/p2020ds.dts index 1101914..f4c6520 100644 --- a/arch/powerpc/boot/dts/p2020ds.dts +++ b/arch/powerpc/boot/dts/p2020ds.dts @@ -1,7 +1,7 @@ /* * P2020 DS Device Tree Source * - * Copyright 2009 Freescale Semiconductor Inc. + * Copyright 2009-2010 Freescale Semiconductor Inc. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -155,6 +155,13 @@ compatible = "fsl,elbc-fcm-nand"; reg = <0x6 0x0 0x40000>; }; + + ngpi...@3,0 { + compatible = "fsl,p2020ds-fpga"; + reg = <0x3 0 0x30>; + interrupt-parent = <&mpic>; + interrupts = <0 0>; + }; }; s...@ffe00000 { diff --git a/arch/powerpc/platforms/85xx/mpc85xx_ds.c b/arch/powerpc/platforms/85xx/mpc85xx_ds.c index 8190bc2..a8807fe 100644 --- a/arch/powerpc/platforms/85xx/mpc85xx_ds.c +++ b/arch/powerpc/platforms/85xx/mpc85xx_ds.c @@ -4,7 +4,7 @@ * Author Xianghua Xiao (x.x...@freescale.com) * Roy Zang <tie-fei.z...@freescale.com> * - Add PCI/PCI Exprees support - * Copyright 2007 Freescale Semiconductor Inc. + * Copyright 2007-2010 Freescale Semiconductor Inc. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -200,6 +200,30 @@ static void __init mpc85xx_ds_setup_arch(void) printk("MPC85xx DS board from Freescale Semiconductor\n"); } +static irqreturn_t event_isr(int irq, void *dev_id) +{ + + printk(KERN_INFO "MPC85xxDS: Event button been pushed.\n"); + return IRQ_HANDLED; +} + +static int __init p2020ds_ngpixis_init(void) +{ + int event_irq, ret; + struct device_node *np; + + np = of_find_compatible_node(NULL, NULL, "fsl,p2020ds-fpga"); + if (np) { + event_irq = irq_of_parse_and_map(np, 0); + ret = request_irq(event_irq, event_isr, 0, "event", NULL); + if (ret) + printk(KERN_ERR "Can't request board event int\n"); + of_node_put(np); + } + return 0; +} +machine_device_initcall(p2020_ds, p2020ds_ngpixis_init); + /* * Called very early, device-tree isn't unflattened */ -- 1.6.6-rc1.GIT _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev