[RFC/PATCH 0/5] sparc32 genirq support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Convert sparc32 to use genirq.

Changes since v2:
- avoid moving function in sun4d_irq to make diff more readable (Josip Rodin)
- added patch that fixes build with floppy or LEON enabled
  I broke that during my cleanup.
  This is 1/5 - and should be applied to -next soon.
- converted leon to genirq
  It was straight forward. I identified some dead code in leon_kernel
  but I did not clean it up (stuff that reference eirq).
- converted pcic to genirq
  I had missed this during the last rounds. I had also missed
  that we either used sun4m_irq OR pcic irq support.
  Note: I assume the handle_level_irq is the right handler for pcic too.

The TODO list contains only two items now:
- What to do with the smp4m_irq_rotate(cpu) functionality?
  Can we just ignore it as we have a maximum of 4 CPUs
- Are the sun4d mask/unmask implementation buggy with respect
  to cpu interrupts?
  I do not know the sun4d platform - and has no HW to test on (yet at least)


I feel quite confident with most of the code-changes.
The sun4d stuff is where I am most unsafe.
If anyone can test it on real HW it would be great!

I will try to setup QEMU during the next week or two
to see if this can help me in more testing.

	Sam

Sam Ravnborg (5):
      sparc32: fix build with leon or floppy enabled
      sparc32: introduce sparc_irq_config
      sparc32: introduce build_device_irq
      sparc32,sun4m: percpu and global register definitions moved to irq.h
      sparc32: genirq support

 arch/sparc/Kconfig                 |    5 +-
 arch/sparc/include/asm/floppy_32.h |   41 ++-
 arch/sparc/include/asm/irq_32.h    |    8 +-
 arch/sparc/include/asm/leon.h      |    3 -
 arch/sparc/include/asm/system_32.h |    5 -
 arch/sparc/kernel/Makefile         |    4 -
 arch/sparc/kernel/irq.h            |   86 ++++--
 arch/sparc/kernel/irq_32.c         |  504 ++++++++--------------------------
 arch/sparc/kernel/kernel.h         |    9 +-
 arch/sparc/kernel/leon_kernel.c    |   62 ++++-
 arch/sparc/kernel/leon_smp.c       |   20 +-
 arch/sparc/kernel/of_device_32.c   |   59 +----
 arch/sparc/kernel/pcic.c           |   82 ++++--
 arch/sparc/kernel/sun4c_irq.c      |  146 ++++++----
 arch/sparc/kernel/sun4d_irq.c      |  522 +++++++++++++++---------------------
 arch/sparc/kernel/sun4m_irq.c      |  204 +++++++-------
 arch/sparc/kernel/sun4m_smp.c      |   16 +-
 arch/sparc/kernel/time_32.c        |    2 +-
 18 files changed, 748 insertions(+), 1030 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux