/* * CCI cache coherent interconnect driver * * Copyright (C) 2013 ARM Ltd. * Author: Lorenzo Pieralisi <lorenzo.pieralisi@arm.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. * * This program is distributed "as is" WITHOUT ANY WARRANTY of any * kind, whether express or implied; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */#include<linux/arm-cci.h>#include<linux/io.h>#include<linux/interrupt.h>#include<linux/module.h>#include<linux/of_address.h>#include<linux/of_irq.h>#include<linux/of_platform.h>#include<linux/perf_event.h>#include<linux/platform_device.h>#include<linux/slab.h>#include<linux/spinlock.h>#include<asm/cacheflush.h>#include<asm/smp_plat.h>staticvoid__iomem*cci_ctrl_base;staticunsignedlongcci_ctrl_phys;#ifdef CONFIG_ARM_CCI400_PORT_CTRLstructcci_nb_ports{unsignedintnb_ace;unsignedint