• Max Filippov's avatar
    xtensa: call irqchip_init only when CONFIG_USE_OF is selected · 6489f8d0
    Max Filippov authored
    During boot time kernel configured with OF=y but USE_OF=n displays the
    following warnings and hangs shortly after starting userspace:
    
    ------------[ cut here ]------------
    WARNING: CPU: 0 PID: 0 at kernel/irq/irqdomain.c:695 irq_create_mapping_affinity+0x29/0xc0
    irq_create_mapping_affinity(, 6) called with NULL domain
    CPU: 0 PID: 0 Comm: swapper Not tainted 5.15.0-rc3-00001-gd67ed251 #30
    Call Trace:
      __warn+0x69/0xc4
      warn_slowpath_fmt+0x6c/0x94
      irq_create_mapping_affinity+0x29/0xc0
      local_timer_setup+0x40/0x88
      time_init+0xb1/0xe8
      start_kernel+0x31d/0x3f4
      _startup+0x13b/0x13b
    ---[ end trace 1e6630e1c5eda35b ]---
    ------------[ cut here ]------------
    WARNING: CPU: 0 PID: 0 at arch/xtensa/kernel/time.c:141 local_timer_setup+0x58/0x88
    error: can't map timer irq
    CPU: 0 PID: 0 Comm: swapper Tainted: G        W         5.15.0-rc3-00001-gd67ed251 #30
    Call Trace:
      __warn+0x69/0xc4
      warn_slowpath_fmt+0x6c/0x94
      local_timer_setup+0x58/0x88
      time_init+0xb1/0xe8
      start_kernel+0x31d/0x3f4
      _startup+0x13b/0x13b
    ---[ end trace 1e6630e1c5eda35c ]---
    Failed to request irq 0 (timer)
    
    Fix that by calling irqchip_init only when CONFIG_USE_OF is selected and
    calling legacy interrupt controller init otherwise.
    
    Fixes: da844a81 ("xtensa: add device trees support")
    Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
    6489f8d0
irq.c 4.62 KB