/* * Support functions for OMAP GPIO * * Copyright (C) 2003-2005 Nokia Corporation * Written by Juha Yrjölä <juha.yrjola@nokia.com> * * Copyright (C) 2009 Texas Instruments * Added OMAP4 support - Santosh Shilimkar <santosh.shilimkar@ti.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */#include<linux/init.h>#include<linux/module.h>#include<linux/interrupt.h>#include<linux/syscore_ops.h>#include<linux/err.h>#include<linux/clk.h>#include<linux/io.h>#include<linux/device.h>#include<linux/pm_runtime.h>#include<linux/pm.h>#include<linux/of.h>#include<linux/of_device.h>#include<linux/irqdomain.h>#include<mach/hardware.h>#include<asm/irq.h>#include<mach/irqs.h>#include<asm/gpio.h>#include<asm/mach/irq.h>#define OFF_MODE 1staticLIST_HEAD(omap_gpio_list);structgpio_regs{u32irqenable1;u32irqenable2;u32wake_en;u32ctrl;u32oe;u32leveldetect0;u32leveldetect1;u32risingdetect;u32fallingdetect;u32dataout;u32debounce;u32debounce_en;};structgpio_bank{structlist_headnode;void__iomem