diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-29 17:11:54 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-29 17:11:54 -0400 |
commit | 55a320308902f7a0746569ee57eeb3f254e6ed16 (patch) | |
tree | 43c86db843ede6a0c2aeeb147bad78bc209514cc | |
parent | 18a06efae5b37bf5cb7473b5ba91a50907a8f7ac (diff) | |
parent | d4886bc670a5ab1b74bd0a87a64344d18af206c3 (diff) |
Merge branch 'irqdomain/merge' of git://git.secretlab.ca/git/linux-2.6
Pull the code to generalize the powerpc VIRQ_DEBUG code from Grant Likely.
That code had been moved into generic irqdomain code, but still had
powerpc-specific code and could only be enabled on powerpc.
* 'irqdomain/merge' of git://git.secretlab.ca/git/linux-2.6:
irqdomain/powerpc: updated defconfigs for VIRQ_DEBUG rename
irqdomain: Remove powerpc dependency from debugfs file
-rw-r--r-- | arch/powerpc/Kconfig.debug | 10 | ||||
-rw-r--r-- | arch/powerpc/configs/85xx/p1023rds_defconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/configs/chroma_defconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/configs/corenet64_smp_defconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/configs/mpc85xx_defconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/configs/mpc85xx_smp_defconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/configs/ppc64_defconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/configs/pseries_defconfig | 2 | ||||
-rw-r--r-- | kernel/irq/Kconfig | 10 | ||||
-rw-r--r-- | kernel/irq/irqdomain.c | 8 |
10 files changed, 21 insertions, 21 deletions
diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug index 72d55dbc6119..e5f26890a69e 100644 --- a/arch/powerpc/Kconfig.debug +++ b/arch/powerpc/Kconfig.debug | |||
@@ -114,16 +114,6 @@ config DEBUGGER | |||
114 | depends on KGDB || XMON | 114 | depends on KGDB || XMON |
115 | default y | 115 | default y |
116 | 116 | ||
117 | config VIRQ_DEBUG | ||
118 | bool "Expose hardware/virtual IRQ mapping via debugfs" | ||
119 | depends on DEBUG_FS | ||
120 | help | ||
121 | This option will show the mapping relationship between hardware irq | ||
122 | numbers and virtual irq numbers. The mapping is exposed via debugfs | ||
123 | in the file powerpc/virq_mapping. | ||
124 | |||
125 | If you don't know what this means you don't need it. | ||
126 | |||
127 | config BDI_SWITCH | 117 | config BDI_SWITCH |
128 | bool "Include BDI-2000 user context switcher" | 118 | bool "Include BDI-2000 user context switcher" |
129 | depends on DEBUG_KERNEL && PPC32 | 119 | depends on DEBUG_KERNEL && PPC32 |
diff --git a/arch/powerpc/configs/85xx/p1023rds_defconfig b/arch/powerpc/configs/85xx/p1023rds_defconfig index c091aaf7685f..f4337bacd0e7 100644 --- a/arch/powerpc/configs/85xx/p1023rds_defconfig +++ b/arch/powerpc/configs/85xx/p1023rds_defconfig | |||
@@ -165,7 +165,7 @@ CONFIG_DETECT_HUNG_TASK=y | |||
165 | CONFIG_DEBUG_INFO=y | 165 | CONFIG_DEBUG_INFO=y |
166 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | 166 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set |
167 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 167 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
168 | CONFIG_VIRQ_DEBUG=y | 168 | CONFIG_IRQ_DOMAIN_DEBUG=y |
169 | CONFIG_CRYPTO_PCBC=m | 169 | CONFIG_CRYPTO_PCBC=m |
170 | CONFIG_CRYPTO_SHA256=y | 170 | CONFIG_CRYPTO_SHA256=y |
171 | CONFIG_CRYPTO_SHA512=y | 171 | CONFIG_CRYPTO_SHA512=y |
diff --git a/arch/powerpc/configs/chroma_defconfig b/arch/powerpc/configs/chroma_defconfig index acf7fb280464..f104ccde6b53 100644 --- a/arch/powerpc/configs/chroma_defconfig +++ b/arch/powerpc/configs/chroma_defconfig | |||
@@ -279,7 +279,7 @@ CONFIG_FTRACE_SYSCALLS=y | |||
279 | CONFIG_PPC_EMULATED_STATS=y | 279 | CONFIG_PPC_EMULATED_STATS=y |
280 | CONFIG_XMON=y | 280 | CONFIG_XMON=y |
281 | CONFIG_XMON_DEFAULT=y | 281 | CONFIG_XMON_DEFAULT=y |
282 | CONFIG_VIRQ_DEBUG=y | 282 | CONFIG_IRQ_DOMAIN_DEBUG=y |
283 | CONFIG_PPC_EARLY_DEBUG=y | 283 | CONFIG_PPC_EARLY_DEBUG=y |
284 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 284 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
285 | CONFIG_CRYPTO_NULL=m | 285 | CONFIG_CRYPTO_NULL=m |
diff --git a/arch/powerpc/configs/corenet64_smp_defconfig b/arch/powerpc/configs/corenet64_smp_defconfig index 7ed8d4cf2719..82b13bfcf3c0 100644 --- a/arch/powerpc/configs/corenet64_smp_defconfig +++ b/arch/powerpc/configs/corenet64_smp_defconfig | |||
@@ -95,7 +95,7 @@ CONFIG_DEBUG_FS=y | |||
95 | CONFIG_DETECT_HUNG_TASK=y | 95 | CONFIG_DETECT_HUNG_TASK=y |
96 | CONFIG_DEBUG_INFO=y | 96 | CONFIG_DEBUG_INFO=y |
97 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 97 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
98 | CONFIG_VIRQ_DEBUG=y | 98 | CONFIG_IRQ_DOMAIN_DEBUG=y |
99 | CONFIG_CRYPTO_PCBC=m | 99 | CONFIG_CRYPTO_PCBC=m |
100 | CONFIG_CRYPTO_SHA256=y | 100 | CONFIG_CRYPTO_SHA256=y |
101 | CONFIG_CRYPTO_SHA512=y | 101 | CONFIG_CRYPTO_SHA512=y |
diff --git a/arch/powerpc/configs/mpc85xx_defconfig b/arch/powerpc/configs/mpc85xx_defconfig index 5fb0c8a94811..cc87a8441566 100644 --- a/arch/powerpc/configs/mpc85xx_defconfig +++ b/arch/powerpc/configs/mpc85xx_defconfig | |||
@@ -214,7 +214,7 @@ CONFIG_DEBUG_FS=y | |||
214 | CONFIG_DETECT_HUNG_TASK=y | 214 | CONFIG_DETECT_HUNG_TASK=y |
215 | CONFIG_DEBUG_INFO=y | 215 | CONFIG_DEBUG_INFO=y |
216 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 216 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
217 | CONFIG_VIRQ_DEBUG=y | 217 | CONFIG_IRQ_DOMAIN_DEBUG=y |
218 | CONFIG_CRYPTO_PCBC=m | 218 | CONFIG_CRYPTO_PCBC=m |
219 | CONFIG_CRYPTO_SHA256=y | 219 | CONFIG_CRYPTO_SHA256=y |
220 | CONFIG_CRYPTO_SHA512=y | 220 | CONFIG_CRYPTO_SHA512=y |
diff --git a/arch/powerpc/configs/mpc85xx_smp_defconfig b/arch/powerpc/configs/mpc85xx_smp_defconfig index fb51bc90edd2..48d6682f2434 100644 --- a/arch/powerpc/configs/mpc85xx_smp_defconfig +++ b/arch/powerpc/configs/mpc85xx_smp_defconfig | |||
@@ -216,7 +216,7 @@ CONFIG_DEBUG_FS=y | |||
216 | CONFIG_DETECT_HUNG_TASK=y | 216 | CONFIG_DETECT_HUNG_TASK=y |
217 | CONFIG_DEBUG_INFO=y | 217 | CONFIG_DEBUG_INFO=y |
218 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 218 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
219 | CONFIG_VIRQ_DEBUG=y | 219 | CONFIG_IRQ_DOMAIN_DEBUG=y |
220 | CONFIG_CRYPTO_PCBC=m | 220 | CONFIG_CRYPTO_PCBC=m |
221 | CONFIG_CRYPTO_SHA256=y | 221 | CONFIG_CRYPTO_SHA256=y |
222 | CONFIG_CRYPTO_SHA512=y | 222 | CONFIG_CRYPTO_SHA512=y |
diff --git a/arch/powerpc/configs/ppc64_defconfig b/arch/powerpc/configs/ppc64_defconfig index 1acf65026773..c1442a3758ae 100644 --- a/arch/powerpc/configs/ppc64_defconfig +++ b/arch/powerpc/configs/ppc64_defconfig | |||
@@ -457,7 +457,7 @@ CONFIG_CODE_PATCHING_SELFTEST=y | |||
457 | CONFIG_FTR_FIXUP_SELFTEST=y | 457 | CONFIG_FTR_FIXUP_SELFTEST=y |
458 | CONFIG_MSI_BITMAP_SELFTEST=y | 458 | CONFIG_MSI_BITMAP_SELFTEST=y |
459 | CONFIG_XMON=y | 459 | CONFIG_XMON=y |
460 | CONFIG_VIRQ_DEBUG=y | 460 | CONFIG_IRQ_DOMAIN_DEBUG=y |
461 | CONFIG_BOOTX_TEXT=y | 461 | CONFIG_BOOTX_TEXT=y |
462 | CONFIG_CRYPTO_NULL=m | 462 | CONFIG_CRYPTO_NULL=m |
463 | CONFIG_CRYPTO_TEST=m | 463 | CONFIG_CRYPTO_TEST=m |
diff --git a/arch/powerpc/configs/pseries_defconfig b/arch/powerpc/configs/pseries_defconfig index 30e7d0d20e49..6608232663cb 100644 --- a/arch/powerpc/configs/pseries_defconfig +++ b/arch/powerpc/configs/pseries_defconfig | |||
@@ -340,7 +340,7 @@ CONFIG_FTR_FIXUP_SELFTEST=y | |||
340 | CONFIG_MSI_BITMAP_SELFTEST=y | 340 | CONFIG_MSI_BITMAP_SELFTEST=y |
341 | CONFIG_XMON=y | 341 | CONFIG_XMON=y |
342 | CONFIG_XMON_DEFAULT=y | 342 | CONFIG_XMON_DEFAULT=y |
343 | CONFIG_VIRQ_DEBUG=y | 343 | CONFIG_IRQ_DOMAIN_DEBUG=y |
344 | CONFIG_CRYPTO_NULL=m | 344 | CONFIG_CRYPTO_NULL=m |
345 | CONFIG_CRYPTO_TEST=m | 345 | CONFIG_CRYPTO_TEST=m |
346 | CONFIG_CRYPTO_CCM=m | 346 | CONFIG_CRYPTO_CCM=m |
diff --git a/kernel/irq/Kconfig b/kernel/irq/Kconfig index 5a38bf4de641..d8e323d12496 100644 --- a/kernel/irq/Kconfig +++ b/kernel/irq/Kconfig | |||
@@ -56,6 +56,16 @@ config GENERIC_IRQ_CHIP | |||
56 | config IRQ_DOMAIN | 56 | config IRQ_DOMAIN |
57 | bool | 57 | bool |
58 | 58 | ||
59 | config IRQ_DOMAIN_DEBUG | ||
60 | bool "Expose hardware/virtual IRQ mapping via debugfs" | ||
61 | depends on IRQ_DOMAIN && DEBUG_FS | ||
62 | help | ||
63 | This option will show the mapping relationship between hardware irq | ||
64 | numbers and Linux irq numbers. The mapping is exposed via debugfs | ||
65 | in the file "virq_mapping". | ||
66 | |||
67 | If you don't know what this means you don't need it. | ||
68 | |||
59 | # Support forced irq threading | 69 | # Support forced irq threading |
60 | config IRQ_FORCED_THREADING | 70 | config IRQ_FORCED_THREADING |
61 | bool | 71 | bool |
diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c index af48e59bc2ff..3601f3fbf67c 100644 --- a/kernel/irq/irqdomain.c +++ b/kernel/irq/irqdomain.c | |||
@@ -632,7 +632,7 @@ unsigned int irq_linear_revmap(struct irq_domain *domain, | |||
632 | return revmap[hwirq]; | 632 | return revmap[hwirq]; |
633 | } | 633 | } |
634 | 634 | ||
635 | #ifdef CONFIG_VIRQ_DEBUG | 635 | #ifdef CONFIG_IRQ_DOMAIN_DEBUG |
636 | static int virq_debug_show(struct seq_file *m, void *private) | 636 | static int virq_debug_show(struct seq_file *m, void *private) |
637 | { | 637 | { |
638 | unsigned long flags; | 638 | unsigned long flags; |
@@ -668,7 +668,7 @@ static int virq_debug_show(struct seq_file *m, void *private) | |||
668 | data = irq_desc_get_chip_data(desc); | 668 | data = irq_desc_get_chip_data(desc); |
669 | seq_printf(m, "0x%16p ", data); | 669 | seq_printf(m, "0x%16p ", data); |
670 | 670 | ||
671 | if (desc->irq_data.domain->of_node) | 671 | if (desc->irq_data.domain && desc->irq_data.domain->of_node) |
672 | p = desc->irq_data.domain->of_node->full_name; | 672 | p = desc->irq_data.domain->of_node->full_name; |
673 | else | 673 | else |
674 | p = none; | 674 | p = none; |
@@ -695,14 +695,14 @@ static const struct file_operations virq_debug_fops = { | |||
695 | 695 | ||
696 | static int __init irq_debugfs_init(void) | 696 | static int __init irq_debugfs_init(void) |
697 | { | 697 | { |
698 | if (debugfs_create_file("virq_mapping", S_IRUGO, powerpc_debugfs_root, | 698 | if (debugfs_create_file("irq_domain_mapping", S_IRUGO, NULL, |
699 | NULL, &virq_debug_fops) == NULL) | 699 | NULL, &virq_debug_fops) == NULL) |
700 | return -ENOMEM; | 700 | return -ENOMEM; |
701 | 701 | ||
702 | return 0; | 702 | return 0; |
703 | } | 703 | } |
704 | __initcall(irq_debugfs_init); | 704 | __initcall(irq_debugfs_init); |
705 | #endif /* CONFIG_VIRQ_DEBUG */ | 705 | #endif /* CONFIG_IRQ_DOMAIN_DEBUG */ |
706 | 706 | ||
707 | int irq_domain_simple_map(struct irq_domain *d, unsigned int irq, | 707 | int irq_domain_simple_map(struct irq_domain *d, unsigned int irq, |
708 | irq_hw_number_t hwirq) | 708 | irq_hw_number_t hwirq) |