1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * PMU IRQ registration for the iop3xx xscale PMU families. 4*4882a593Smuzhiyun * Copyright (C) 2010 Will Deacon, ARM Ltd. 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #include <linux/platform_device.h> 8*4882a593Smuzhiyun #include "irqs.h" 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun static struct resource pmu_resource = { 11*4882a593Smuzhiyun .start = IRQ_IOP32X_CORE_PMU, 12*4882a593Smuzhiyun .end = IRQ_IOP32X_CORE_PMU, 13*4882a593Smuzhiyun .flags = IORESOURCE_IRQ, 14*4882a593Smuzhiyun }; 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun static struct platform_device pmu_device = { 17*4882a593Smuzhiyun .name = "xscale-pmu", 18*4882a593Smuzhiyun .id = -1, 19*4882a593Smuzhiyun .resource = &pmu_resource, 20*4882a593Smuzhiyun .num_resources = 1, 21*4882a593Smuzhiyun }; 22*4882a593Smuzhiyun iop3xx_pmu_init(void)23*4882a593Smuzhiyunstatic int __init iop3xx_pmu_init(void) 24*4882a593Smuzhiyun { 25*4882a593Smuzhiyun platform_device_register(&pmu_device); 26*4882a593Smuzhiyun return 0; 27*4882a593Smuzhiyun } 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun arch_initcall(iop3xx_pmu_init); 30