qcom-pdc.c (c95baf12f5077419db01313ab61c2aac007d40cd) | qcom-pdc.c (95bf9305d2e38b6d47eb91abfdc7472f05e0f5bd) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. 4 */ 5 6#include <linux/err.h> 7#include <linux/init.h> 8#include <linux/interrupt.h> 9#include <linux/irq.h> 10#include <linux/irqchip.h> 11#include <linux/irqdomain.h> 12#include <linux/io.h> 13#include <linux/kernel.h> | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. 4 */ 5 6#include <linux/err.h> 7#include <linux/init.h> 8#include <linux/interrupt.h> 9#include <linux/irq.h> 10#include <linux/irqchip.h> 11#include <linux/irqdomain.h> 12#include <linux/io.h> 13#include <linux/kernel.h> |
14#include <linux/module.h> |
|
14#include <linux/of.h> 15#include <linux/of_address.h> 16#include <linux/of_device.h> | 15#include <linux/of.h> 16#include <linux/of_address.h> 17#include <linux/of_device.h> |
18#include <linux/of_irq.h> |
|
17#include <linux/soc/qcom/irq.h> 18#include <linux/spinlock.h> 19#include <linux/slab.h> 20#include <linux/types.h> 21 22#define PDC_MAX_IRQS 168 23#define PDC_MAX_GPIO_IRQS 256 24 --- 400 unchanged lines hidden (view full) --- 425remove: 426 irq_domain_remove(pdc_domain); 427fail: 428 kfree(pdc_region); 429 iounmap(pdc_base); 430 return ret; 431} 432 | 19#include <linux/soc/qcom/irq.h> 20#include <linux/spinlock.h> 21#include <linux/slab.h> 22#include <linux/types.h> 23 24#define PDC_MAX_IRQS 168 25#define PDC_MAX_GPIO_IRQS 256 26 --- 400 unchanged lines hidden (view full) --- 427remove: 428 irq_domain_remove(pdc_domain); 429fail: 430 kfree(pdc_region); 431 iounmap(pdc_base); 432 return ret; 433} 434 |
433IRQCHIP_DECLARE(qcom_pdc, "qcom,pdc", qcom_pdc_init); | 435static int qcom_pdc_probe(struct platform_device *pdev) 436{ 437 struct device_node *np = pdev->dev.of_node; 438 struct device_node *parent = of_irq_find_parent(np); 439 440 return qcom_pdc_init(np, parent); 441} 442 443static const struct of_device_id qcom_pdc_match_table[] = { 444 { .compatible = "qcom,pdc" }, 445 {} 446}; 447MODULE_DEVICE_TABLE(of, qcom_pdc_match_table); 448 449static struct platform_driver qcom_pdc_driver = { 450 .probe = qcom_pdc_probe, 451 .driver = { 452 .name = "qcom-pdc", 453 .of_match_table = qcom_pdc_match_table, 454 .suppress_bind_attrs = true, 455 }, 456}; 457module_platform_driver(qcom_pdc_driver); 458MODULE_DESCRIPTION("Qualcomm Technologies, Inc. Power Domain Controller"); 459MODULE_LICENSE("GPL v2"); |