On 25/10/16 15:44, Sören Brinkmann wrote: > On Tue, 2016-10-25 at 12:49:33 +0200, Thomas Gleixner wrote: >> On Tue, 25 Oct 2016, Zubair Lutfullah Kakakhel wrote: >>> On 10/21/2016 10:48 AM, Marc Zyngier wrote: >>>> Shouldn't you return an error if irq is zero? >>>> >>> >>> I'll add the following for the error case >>> >>> pr_err("%s: Parent exists but interrupts property not defined\n" , >>> __func__); >> >> Please do not use this silly __func__ stuff. It's not giving any value to >> the printout. >> >> Set a proper prefix for your pr_* stuff, so the string is prefixed with >> 'irq-xilinx:' or whatever you think is appropriate. Then the string itself >> is good enough to find from which place this printk comes. > > Haven't looked at the real code, but is there probably a way to get a > struct device pointer and use dev_err? You wish. Interrupt controllers (and timers) are brought up way before the device model is available, hence no struct device. I've started untangling that mess a couple of times, and always ran out of available time (you start pulling the VFS, then the scheduler, the creation of the first thread, and then things lock up because you need to context switch and no timer is ready yet). I may try to spend some time on it again while travelling to LPC... M. -- Jazz is not dead. It just smells funny...