Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pci: move microblaze and powerpc pci flag functions into asm-generic

Move separate microblaze and powerpc pci flag functions pci_set_flags,
pci_add_flags, and pci_has_flag into asm-generic/pci-bridge.h so other
archs can use them.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Michal Simek <monstr@monstr.eu>

+73 -106
+10 -57
arch/microblaze/include/asm/pci-bridge.h
··· 10 10 #include <linux/pci.h> 11 11 #include <linux/list.h> 12 12 #include <linux/ioport.h> 13 + #include <asm-generic/pci-bridge.h> 13 14 14 15 struct device_node; 15 16 16 - enum { 17 - /* Force re-assigning all resources (ignore firmware 18 - * setup completely) 19 - */ 20 - PCI_REASSIGN_ALL_RSRC = 0x00000001, 21 - 22 - /* Re-assign all bus numbers */ 23 - PCI_REASSIGN_ALL_BUS = 0x00000002, 24 - 25 - /* Do not try to assign, just use existing setup */ 26 - PCI_PROBE_ONLY = 0x00000004, 27 - 28 - /* Don't bother with ISA alignment unless the bridge has 29 - * ISA forwarding enabled 30 - */ 31 - PCI_CAN_SKIP_ISA_ALIGN = 0x00000008, 32 - 33 - /* Enable domain numbers in /proc */ 34 - PCI_ENABLE_PROC_DOMAINS = 0x00000010, 35 - /* ... except for domain 0 */ 36 - PCI_COMPAT_DOMAIN_0 = 0x00000020, 37 - }; 17 + #ifdef CONFIG_PCI 18 + extern struct list_head hose_list; 19 + extern int pcibios_vaddr_is_ioport(void __iomem *address); 20 + #else 21 + static inline int pcibios_vaddr_is_ioport(void __iomem *address) 22 + { 23 + return 0; 24 + } 25 + #endif 38 26 39 27 /* 40 28 * Structure of a PCI controller (host bridge) ··· 151 163 extern struct pci_controller *pcibios_alloc_controller(struct device_node *dev); 152 164 extern void pcibios_free_controller(struct pci_controller *phb); 153 165 extern void pcibios_setup_phb_resources(struct pci_controller *hose); 154 - 155 - #ifdef CONFIG_PCI 156 - extern unsigned int pci_flags; 157 - 158 - static inline void pci_set_flags(int flags) 159 - { 160 - pci_flags = flags; 161 - } 162 - 163 - static inline void pci_add_flags(int flags) 164 - { 165 - pci_flags |= flags; 166 - } 167 - 168 - static inline int pci_has_flag(int flag) 169 - { 170 - return pci_flags & flag; 171 - } 172 - 173 - extern struct list_head hose_list; 174 - 175 - extern int pcibios_vaddr_is_ioport(void __iomem *address); 176 - #else 177 - static inline int pcibios_vaddr_is_ioport(void __iomem *address) 178 - { 179 - return 0; 180 - } 181 - 182 - static inline void pci_set_flags(int flags) { } 183 - static inline void pci_add_flags(int flags) { } 184 - static inline int pci_has_flag(int flag) 185 - { 186 - return 0; 187 - } 188 - #endif /* CONFIG_PCI */ 189 166 190 167 #endif /* __KERNEL__ */ 191 168 #endif /* _ASM_MICROBLAZE_PCI_BRIDGE_H */
+1 -49
arch/powerpc/include/asm/pci-bridge.h
··· 10 10 #include <linux/pci.h> 11 11 #include <linux/list.h> 12 12 #include <linux/ioport.h> 13 + #include <asm-generic/pci-bridge.h> 13 14 14 15 struct device_node; 15 - 16 - enum { 17 - /* Force re-assigning all resources (ignore firmware 18 - * setup completely) 19 - */ 20 - PCI_REASSIGN_ALL_RSRC = 0x00000001, 21 - 22 - /* Re-assign all bus numbers */ 23 - PCI_REASSIGN_ALL_BUS = 0x00000002, 24 - 25 - /* Do not try to assign, just use existing setup */ 26 - PCI_PROBE_ONLY = 0x00000004, 27 - 28 - /* Don't bother with ISA alignment unless the bridge has 29 - * ISA forwarding enabled 30 - */ 31 - PCI_CAN_SKIP_ISA_ALIGN = 0x00000008, 32 - 33 - /* Enable domain numbers in /proc */ 34 - PCI_ENABLE_PROC_DOMAINS = 0x00000010, 35 - /* ... except for domain 0 */ 36 - PCI_COMPAT_DOMAIN_0 = 0x00000020, 37 - }; 38 - #ifdef CONFIG_PCI 39 - extern unsigned int pci_flags; 40 - 41 - static inline void pci_set_flags(int flags) 42 - { 43 - pci_flags = flags; 44 - } 45 - 46 - static inline void pci_add_flags(int flags) 47 - { 48 - pci_flags |= flags; 49 - } 50 - 51 - static inline int pci_has_flag(int flag) 52 - { 53 - return (pci_flags & flag); 54 - } 55 - #else 56 - static inline void pci_set_flags(int flags) { } 57 - static inline void pci_add_flags(int flags) { } 58 - static inline int pci_has_flag(int flag) 59 - { 60 - return 0; 61 - } 62 - #endif 63 - 64 16 65 17 /* 66 18 * Structure of a PCI controller (host bridge)
+62
include/asm-generic/pci-bridge.h
··· 1 + /* 2 + * This program is free software; you can redistribute it and/or 3 + * modify it under the terms of the GNU General Public License 4 + * as published by the Free Software Foundation; either version 5 + * 2 of the License, or (at your option) any later version. 6 + */ 7 + #ifndef _ASM_GENERIC_PCI_BRIDGE_H 8 + #define _ASM_GENERIC_PCI_BRIDGE_H 9 + 10 + #ifdef __KERNEL__ 11 + 12 + enum { 13 + /* Force re-assigning all resources (ignore firmware 14 + * setup completely) 15 + */ 16 + PCI_REASSIGN_ALL_RSRC = 0x00000001, 17 + 18 + /* Re-assign all bus numbers */ 19 + PCI_REASSIGN_ALL_BUS = 0x00000002, 20 + 21 + /* Do not try to assign, just use existing setup */ 22 + PCI_PROBE_ONLY = 0x00000004, 23 + 24 + /* Don't bother with ISA alignment unless the bridge has 25 + * ISA forwarding enabled 26 + */ 27 + PCI_CAN_SKIP_ISA_ALIGN = 0x00000008, 28 + 29 + /* Enable domain numbers in /proc */ 30 + PCI_ENABLE_PROC_DOMAINS = 0x00000010, 31 + /* ... except for domain 0 */ 32 + PCI_COMPAT_DOMAIN_0 = 0x00000020, 33 + }; 34 + 35 + #ifdef CONFIG_PCI 36 + extern unsigned int pci_flags; 37 + 38 + static inline void pci_set_flags(int flags) 39 + { 40 + pci_flags = flags; 41 + } 42 + 43 + static inline void pci_add_flags(int flags) 44 + { 45 + pci_flags |= flags; 46 + } 47 + 48 + static inline int pci_has_flag(int flag) 49 + { 50 + return pci_flags & flag; 51 + } 52 + #else 53 + static inline void pci_set_flags(int flags) { } 54 + static inline void pci_add_flags(int flags) { } 55 + static inline int pci_has_flag(int flag) 56 + { 57 + return 0; 58 + } 59 + #endif /* CONFIG_PCI */ 60 + 61 + #endif /* __KERNEL__ */ 62 + #endif /* _ASM_GENERIC_PCI_BRIDGE_H */