Currently, when assign_irq_vector is called and the irq connected in the simulator, the irq is not ready. request_irq will return ENOSYS immediately. It is because the irq chip is unset. Hence set the chip properly to irq_type_hp_sim. And make sure this is done from both users of simulated interrupts. Also we have to set handler here, otherwise we end up in handle_bad_int resulting in spam in logs and no irqs handled. We use handle_simple_irq as these are SW interrupts that need no ACK or anything. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
		
			
				
	
	
		
			16 lines
		
	
	
	
		
			325 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			16 lines
		
	
	
	
		
			325 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef _ASMIA64_HPSIM_H
 | 
						|
#define _ASMIA64_HPSIM_H
 | 
						|
 | 
						|
#ifndef CONFIG_HP_SIMSERIAL_CONSOLE
 | 
						|
static inline int simcons_register(void) { return 1; }
 | 
						|
#else
 | 
						|
int simcons_register(void);
 | 
						|
#endif
 | 
						|
 | 
						|
struct tty_driver;
 | 
						|
extern struct tty_driver *hp_simserial_driver;
 | 
						|
 | 
						|
extern int hpsim_get_irq(int intr);
 | 
						|
void ia64_ctl_trace(long on);
 | 
						|
 | 
						|
#endif
 |