 8d5ff32076
			
		
	
	
	8d5ff32076
	
	
	
		
			
			Currently the device nodes created in the device subtree returned by a call to dlpar_configure_connector are all named in the root node. This is because the the node name in the work area returned by ibm,configure-connector rtas call only contains the node name and not the entire node path. Passing the parent node where the new subtree will be created to dlpar_configure_connector allows the correct node path to be prefixed in the full_name field. Signed-off-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com> Acked-by: Nathan Fontenot <nfont@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			2 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
	
		
			2 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Copyright 2006 IBM Corporation.
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or
 | |
|  * modify it under the terms of the GNU General Public License
 | |
|  * as published by the Free Software Foundation; either version
 | |
|  * 2 of the License, or (at your option) any later version.
 | |
|  */
 | |
| 
 | |
| #ifndef _PSERIES_PSERIES_H
 | |
| #define _PSERIES_PSERIES_H
 | |
| 
 | |
| #include <linux/interrupt.h>
 | |
| 
 | |
| struct device_node;
 | |
| 
 | |
| extern void request_event_sources_irqs(struct device_node *np,
 | |
| 				       irq_handler_t handler, const char *name);
 | |
| 
 | |
| #include <linux/of.h>
 | |
| 
 | |
| extern void __init fw_hypertas_feature_init(const char *hypertas,
 | |
| 					    unsigned long len);
 | |
| extern void __init fw_vec5_feature_init(const char *hypertas,
 | |
| 					unsigned long len);
 | |
| 
 | |
| struct pt_regs;
 | |
| 
 | |
| extern int pSeries_system_reset_exception(struct pt_regs *regs);
 | |
| extern int pSeries_machine_check_exception(struct pt_regs *regs);
 | |
| 
 | |
| #ifdef CONFIG_SMP
 | |
| extern void smp_init_pseries_mpic(void);
 | |
| extern void smp_init_pseries_xics(void);
 | |
| #else
 | |
| static inline void smp_init_pseries_mpic(void) { };
 | |
| static inline void smp_init_pseries_xics(void) { };
 | |
| #endif
 | |
| 
 | |
| #ifdef CONFIG_KEXEC
 | |
| extern void setup_kexec_cpu_down_xics(void);
 | |
| extern void setup_kexec_cpu_down_mpic(void);
 | |
| #else
 | |
| static inline void setup_kexec_cpu_down_xics(void) { }
 | |
| static inline void setup_kexec_cpu_down_mpic(void) { }
 | |
| #endif
 | |
| 
 | |
| extern void pSeries_final_fixup(void);
 | |
| 
 | |
| /* Poweron flag used for enabling auto ups restart */
 | |
| extern unsigned long rtas_poweron_auto;
 | |
| 
 | |
| /* Provided by HVC VIO */
 | |
| extern void hvc_vio_init_early(void);
 | |
| 
 | |
| /* Dynamic logical Partitioning/Mobility */
 | |
| extern void dlpar_free_cc_nodes(struct device_node *);
 | |
| extern void dlpar_free_cc_property(struct property *);
 | |
| extern struct device_node *dlpar_configure_connector(u32, struct device_node *);
 | |
| extern int dlpar_attach_node(struct device_node *);
 | |
| extern int dlpar_detach_node(struct device_node *);
 | |
| 
 | |
| /* PCI root bridge prepare function override for pseries */
 | |
| struct pci_host_bridge;
 | |
| int pseries_root_bridge_prepare(struct pci_host_bridge *bridge);
 | |
| 
 | |
| #endif /* _PSERIES_PSERIES_H */
 |