IMX7D contains a new version of GPC IP block (GPCv2). It has two major functions: power management and wakeup source management.
Two drivers were developed to support these functions: One irqchip driver (irq-imx-gpcv2.c) is to manage the interrupt wakeup source. One suspend driver (pm-imx7.c) is used to manage the system power states. Patch V6: Clean up the codes (irq-imx-gpcv2.c) according to the review feedback of Thomas Glx Use raw_spin_lock in the irq_mask and irq_unmask callbacks Split the struct definition into two: irqchip and suspend Unified coding style Patch V5: Splitted it into two patches per Thomas Gleixner suggestion. -- one for irqchip -- one for suspend Patch V4: Splitted the driver into two function drivers: one irqchip driver for wakeup source management, and one suspend driver for power state management. Patch V3: Added the assemble codes (suspend-imx7.S) for SUSPEND_MEM state. Supported the SUSPEND_MEM power mode. Patch V2: Added the basic driver APIs for power management. Supported the STANDBY power mode. Patch V1: Implemented the driver for IRQ wakeup sources. Shenwei Wang (2): irqchip: imx-gpcv2: IMX GPCv2 driver for wakeup sources ARM: imx: Add suspend codes for imx7D arch/arm/mach-imx/Kconfig | 1 + arch/arm/mach-imx/Makefile | 2 + arch/arm/mach-imx/pm-imx7.c | 765 +++++++++++++++++++++++++++++++++++++++ arch/arm/mach-imx/suspend-imx7.S | 529 +++++++++++++++++++++++++++ drivers/irqchip/Kconfig | 7 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-imx-gpcv2.c | 263 ++++++++++++++ include/soc/imx/gpcv2.h | 163 +++++++++ 8 files changed, 1731 insertions(+) create mode 100644 arch/arm/mach-imx/pm-imx7.c create mode 100644 arch/arm/mach-imx/suspend-imx7.S create mode 100644 drivers/irqchip/irq-imx-gpcv2.c create mode 100644 include/soc/imx/gpcv2.h -- 2.5.0.rc2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/