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

Configure Feed

Select the types of activity you want to include in your feed.

powerpc/sysdev: Add __init attribute to eligible functions

Some files functions in 'arch/powerpc/sysdev' are deserving of an `__init`
macro attribute. These functions are only called by other initialization
functions and therefore should inherit the attribute.
Also, change function declarations in header files to include `__init`.

Signed-off-by: Nick Child <nick.child@ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20211216220035.605465-6-nick.child@ibm.com

authored by

Nick Child and committed by
Michael Ellerman
6c552983 c49f5d88

+40 -40
+3 -3
arch/powerpc/include/asm/cpm2.h
··· 1133 1133 CPM_CLK_DUMMY 1134 1134 }; 1135 1135 1136 - extern int cpm2_clk_setup(enum cpm_clk_target target, int clock, int mode); 1137 - extern int cpm2_smc_clk_setup(enum cpm_clk_target target, int clock); 1136 + int __init cpm2_clk_setup(enum cpm_clk_target target, int clock, int mode); 1137 + int __init cpm2_smc_clk_setup(enum cpm_clk_target target, int clock); 1138 1138 1139 1139 #define CPM_PIN_INPUT 0 1140 1140 #define CPM_PIN_OUTPUT 1 ··· 1143 1143 #define CPM_PIN_GPIO 4 1144 1144 #define CPM_PIN_OPENDRAIN 8 1145 1145 1146 - void cpm2_set_pin(int port, int pin, int flags); 1146 + void __init cpm2_set_pin(int port, int pin, int flags); 1147 1147 1148 1148 #endif /* __CPM2__ */ 1149 1149 #endif /* __KERNEL__ */
+1 -1
arch/powerpc/include/asm/i8259.h
··· 7 7 8 8 extern void i8259_init(struct device_node *node, unsigned long intack_addr); 9 9 extern unsigned int i8259_irq(void); 10 - extern struct irq_domain *i8259_get_host(void); 10 + struct irq_domain *__init i8259_get_host(void); 11 11 12 12 #endif /* __KERNEL__ */ 13 13 #endif /* _ASM_POWERPC_I8259_H */
+1 -1
arch/powerpc/include/asm/ipic.h
··· 65 65 IPIC_MCP_MU = 7, 66 66 }; 67 67 68 - extern void ipic_set_default_priority(void); 68 + void __init ipic_set_default_priority(void); 69 69 extern u32 ipic_get_mcp_status(void); 70 70 extern void ipic_clear_mcp_status(u32 mask); 71 71
+1 -1
arch/powerpc/include/asm/mpic.h
··· 472 472 extern void mpic_cpu_set_priority(int prio); 473 473 474 474 /* Request IPIs on primary mpic */ 475 - extern void mpic_request_ipis(void); 475 + void __init mpic_request_ipis(void); 476 476 477 477 /* Send a message (IPI) to a given target (cpu number or MSG_*) */ 478 478 void smp_mpic_message_pass(int target, int msg);
+2 -2
arch/powerpc/include/asm/xics.h
··· 38 38 39 39 /* PAPR ICP */ 40 40 #ifdef CONFIG_PPC_ICP_HV 41 - extern int icp_hv_init(void); 41 + int __init icp_hv_init(void); 42 42 #else 43 43 static inline int icp_hv_init(void) { return -ENODEV; } 44 44 #endif 45 45 46 46 #ifdef CONFIG_PPC_POWERNV 47 - extern int icp_opal_init(void); 47 + int __init icp_opal_init(void); 48 48 extern void icp_opal_flush_interrupt(void); 49 49 #else 50 50 static inline int icp_opal_init(void) { return -ENODEV; }
+3 -3
arch/powerpc/sysdev/cpm2.c
··· 135 135 } 136 136 EXPORT_SYMBOL(__cpm2_setbrg); 137 137 138 - int cpm2_clk_setup(enum cpm_clk_target target, int clock, int mode) 138 + int __init cpm2_clk_setup(enum cpm_clk_target target, int clock, int mode) 139 139 { 140 140 int ret = 0; 141 141 int shift; ··· 265 265 return ret; 266 266 } 267 267 268 - int cpm2_smc_clk_setup(enum cpm_clk_target target, int clock) 268 + int __init cpm2_smc_clk_setup(enum cpm_clk_target target, int clock) 269 269 { 270 270 int ret = 0; 271 271 int shift; ··· 326 326 u32 res[3]; 327 327 }; 328 328 329 - void cpm2_set_pin(int port, int pin, int flags) 329 + void __init cpm2_set_pin(int port, int pin, int flags) 330 330 { 331 331 struct cpm2_ioports __iomem *iop = 332 332 (struct cpm2_ioports __iomem *)&cpm2_immr->im_ioport;
+1 -1
arch/powerpc/sysdev/dart_iommu.c
··· 226 226 dart_cache_sync(orig_dp, orig_npages); 227 227 } 228 228 229 - static void allocate_dart(void) 229 + static void __init allocate_dart(void) 230 230 { 231 231 unsigned long tmp; 232 232
+2 -2
arch/powerpc/sysdev/fsl_mpic_err.c
··· 58 58 .irq_unmask = fsl_mpic_unmask_err, 59 59 }; 60 60 61 - int mpic_setup_error_int(struct mpic *mpic, int intvec) 61 + int __init mpic_setup_error_int(struct mpic *mpic, int intvec) 62 62 { 63 63 int i; 64 64 ··· 121 121 return IRQ_HANDLED; 122 122 } 123 123 124 - void mpic_err_int_init(struct mpic *mpic, irq_hw_number_t irqnum) 124 + void __init mpic_err_int_init(struct mpic *mpic, irq_hw_number_t irqnum) 125 125 { 126 126 unsigned int virq; 127 127 int ret;
+1 -1
arch/powerpc/sysdev/fsl_pci.c
··· 1106 1106 1107 1107 struct device_node *fsl_pci_primary; 1108 1108 1109 - void fsl_pci_assign_primary(void) 1109 + void __init fsl_pci_assign_primary(void) 1110 1110 { 1111 1111 struct device_node *np; 1112 1112
+1 -1
arch/powerpc/sysdev/fsl_pci.h
··· 120 120 extern struct device_node *fsl_pci_primary; 121 121 122 122 #ifdef CONFIG_PCI 123 - void fsl_pci_assign_primary(void); 123 + void __init fsl_pci_assign_primary(void); 124 124 #else 125 125 static inline void fsl_pci_assign_primary(void) {} 126 126 #endif
+1 -1
arch/powerpc/sysdev/i8259.c
··· 208 208 .xlate = i8259_host_xlate, 209 209 }; 210 210 211 - struct irq_domain *i8259_get_host(void) 211 + struct irq_domain *__init i8259_get_host(void) 212 212 { 213 213 return i8259_host; 214 214 }
+1 -1
arch/powerpc/sysdev/ipic.c
··· 767 767 return ipic; 768 768 } 769 769 770 - void ipic_set_default_priority(void) 770 + void __init ipic_set_default_priority(void) 771 771 { 772 772 ipic_write(primary_ipic->regs, IPIC_SIPRR_A, IPIC_PRIORITY_DEFAULT); 773 773 ipic_write(primary_ipic->regs, IPIC_SIPRR_B, IPIC_PRIORITY_DEFAULT);
+1 -1
arch/powerpc/sysdev/mpic.c
··· 1839 1839 } 1840 1840 1841 1841 #ifdef CONFIG_SMP 1842 - void mpic_request_ipis(void) 1842 + void __init mpic_request_ipis(void) 1843 1843 { 1844 1844 struct mpic *mpic = mpic_primary; 1845 1845 int i;
+4 -4
arch/powerpc/sysdev/mpic.h
··· 8 8 9 9 #ifdef CONFIG_PCI_MSI 10 10 extern void mpic_msi_reserve_hwirq(struct mpic *mpic, irq_hw_number_t hwirq); 11 - extern int mpic_msi_init_allocator(struct mpic *mpic); 12 - extern int mpic_u3msi_init(struct mpic *mpic); 11 + int __init mpic_msi_init_allocator(struct mpic *mpic); 12 + int __init mpic_u3msi_init(struct mpic *mpic); 13 13 #else 14 14 static inline void mpic_msi_reserve_hwirq(struct mpic *mpic, 15 15 irq_hw_number_t hwirq) ··· 37 37 38 38 #ifdef CONFIG_FSL_SOC 39 39 extern int mpic_map_error_int(struct mpic *mpic, unsigned int virq, irq_hw_number_t hw); 40 - extern void mpic_err_int_init(struct mpic *mpic, irq_hw_number_t irqnum); 41 - extern int mpic_setup_error_int(struct mpic *mpic, int intvec); 40 + void __init mpic_err_int_init(struct mpic *mpic, irq_hw_number_t irqnum); 41 + int __init mpic_setup_error_int(struct mpic *mpic, int intvec); 42 42 #else 43 43 static inline int mpic_map_error_int(struct mpic *mpic, unsigned int virq, irq_hw_number_t hw) 44 44 {
+3 -3
arch/powerpc/sysdev/mpic_msi.c
··· 24 24 } 25 25 26 26 #ifdef CONFIG_MPIC_U3_HT_IRQS 27 - static int mpic_msi_reserve_u3_hwirqs(struct mpic *mpic) 27 + static int __init mpic_msi_reserve_u3_hwirqs(struct mpic *mpic) 28 28 { 29 29 irq_hw_number_t hwirq; 30 30 const struct irq_domain_ops *ops = mpic->irqhost->ops; ··· 68 68 return 0; 69 69 } 70 70 #else 71 - static int mpic_msi_reserve_u3_hwirqs(struct mpic *mpic) 71 + static int __init mpic_msi_reserve_u3_hwirqs(struct mpic *mpic) 72 72 { 73 73 return -1; 74 74 } 75 75 #endif 76 76 77 - int mpic_msi_init_allocator(struct mpic *mpic) 77 + int __init mpic_msi_init_allocator(struct mpic *mpic) 78 78 { 79 79 int rc; 80 80
+3 -3
arch/powerpc/sysdev/mpic_timer.c
··· 384 384 } 385 385 EXPORT_SYMBOL(mpic_request_timer); 386 386 387 - static int timer_group_get_freq(struct device_node *np, 387 + static int __init timer_group_get_freq(struct device_node *np, 388 388 struct timer_group_priv *priv) 389 389 { 390 390 u32 div; ··· 411 411 return 0; 412 412 } 413 413 414 - static int timer_group_get_irq(struct device_node *np, 414 + static int __init timer_group_get_irq(struct device_node *np, 415 415 struct timer_group_priv *priv) 416 416 { 417 417 const u32 all_timer[] = { 0, TIMERS_PER_GROUP }; ··· 459 459 return 0; 460 460 } 461 461 462 - static void timer_group_init(struct device_node *np) 462 + static void __init timer_group_init(struct device_node *np) 463 463 { 464 464 struct timer_group_priv *priv; 465 465 unsigned int i = 0;
+1 -1
arch/powerpc/sysdev/mpic_u3msi.c
··· 174 174 return 0; 175 175 } 176 176 177 - int mpic_u3msi_init(struct mpic *mpic) 177 + int __init mpic_u3msi_init(struct mpic *mpic) 178 178 { 179 179 int rc; 180 180 struct pci_controller *phb;
+1 -1
arch/powerpc/sysdev/tsi108_pci.c
··· 257 257 mb(); 258 258 } 259 259 260 - static void init_pci_source(void) 260 + static void __init init_pci_source(void) 261 261 { 262 262 tsi108_write_reg(TSI108_PCI_OFFSET + TSI108_PCI_IRP_CFG_CTL, 263 263 0x0000ff00);
+1 -1
arch/powerpc/sysdev/udbg_memcons.c
··· 92 92 return c; 93 93 } 94 94 95 - void udbg_init_memcons(void) 95 + void __init udbg_init_memcons(void) 96 96 { 97 97 udbg_putc = memcons_putc; 98 98 udbg_getc = memcons_getc;
+1 -1
arch/powerpc/sysdev/xics/icp-hv.c
··· 162 162 #endif 163 163 }; 164 164 165 - int icp_hv_init(void) 165 + int __init icp_hv_init(void) 166 166 { 167 167 struct device_node *np; 168 168
+1 -1
arch/powerpc/sysdev/xics/icp-opal.c
··· 184 184 #endif 185 185 }; 186 186 187 - int icp_opal_init(void) 187 + int __init icp_opal_init(void) 188 188 { 189 189 struct device_node *np; 190 190
+1 -1
arch/powerpc/sysdev/xics/xics-common.c
··· 121 121 122 122 #ifdef CONFIG_SMP 123 123 124 - static void xics_request_ipi(void) 124 + static void __init xics_request_ipi(void) 125 125 { 126 126 unsigned int ipi; 127 127
+2 -2
arch/powerpc/sysdev/xive/native.c
··· 492 492 .name = "native", 493 493 }; 494 494 495 - static bool xive_parse_provisioning(struct device_node *np) 495 + static bool __init xive_parse_provisioning(struct device_node *np) 496 496 { 497 497 int rc; 498 498 ··· 532 532 return true; 533 533 } 534 534 535 - static void xive_native_setup_pools(void) 535 + static void __init xive_native_setup_pools(void) 536 536 { 537 537 /* Allocate a pool big enough */ 538 538 pr_debug("XIVE: Allocating VP block for pool size %u\n", nr_cpu_ids);
+3 -3
arch/powerpc/sysdev/xive/spapr.c
··· 44 44 45 45 static LIST_HEAD(xive_irq_bitmaps); 46 46 47 - static int xive_irq_bitmap_add(int base, int count) 47 + static int __init xive_irq_bitmap_add(int base, int count) 48 48 { 49 49 struct xive_irq_bitmap *xibm; 50 50 ··· 687 687 /* 688 688 * get max priority from "/ibm,plat-res-int-priorities" 689 689 */ 690 - static bool xive_get_max_prio(u8 *max_prio) 690 + static bool __init xive_get_max_prio(u8 *max_prio) 691 691 { 692 692 struct device_node *rootdn; 693 693 const __be32 *reg; ··· 741 741 return true; 742 742 } 743 743 744 - static const u8 *get_vec5_feature(unsigned int index) 744 + static const u8 *__init get_vec5_feature(unsigned int index) 745 745 { 746 746 unsigned long root, chosen; 747 747 int size;