qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/4] mips: add Global Interrupt Controller
@ 2015-10-15 23:52 Yongbok Kim
  2015-10-15 23:52 ` [Qemu-devel] [PATCH 1/4] target-mips: add CMGCRBase register Yongbok Kim
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Yongbok Kim @ 2015-10-15 23:52 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, leon.alrae, afaerber, aurelien

Add support of MIPS GIC.
The patchset implements the Global Interrupt Controller.

With the patchset Linux Kernel detects GIC and utilises it. 
# cat /proc/interrupts
           CPU0
  0:          2    XT-PIC   0  timer
  2:          0    XT-PIC   2  cascade
  4:        462    XT-PIC   4  serial
  8:          0    XT-PIC   8  rtc0
 11:          0    XT-PIC  11  uhci_hcd:usb1
 14:       1026    XT-PIC  14  ide0
 15:          0    XT-PIC  15  ide1
 21:          0      MIPS   5  CoreHi
 23:         44      MIPS   7  timer
 25:      12290  MIPS GIC Local   1  timer
 34:       1490  MIPS GIC  10  XT-PIC cascade
 98:       1490  MIPS GIC  74
ERR:          0

Limitation:
Level triggering only
No User-Mode Visible Section
GIC CounterHi not implemented (Countbits = 32bits)
DINT not implemented
Local WatchDog, Fast Debug Channel, Perf Counter not implemented

It is based on the earlier un-merged GIC implementation.
https://lists.gnu.org/archive/html/qemu-devel/2013-03/msg00194.html

For more information, 
http://imgtec.com/mips/warrior/p-class-p5600-multiprocessor-core/
http://imgtec.com/mips/warrior/i-class-i6400-multiprocessor-core/


Yongbok Kim (4):
  target-mips: add CMGCRBase register
  mips: add Global Config Register block (part)
  mips: add Global Interrupt Controller
  mips: add gic support to malta

 hw/mips/Makefile.objs        |    2 +-
 hw/mips/mips_gcr.c           |  120 ++++++++
 hw/mips/mips_gcr.h           |   57 ++++
 hw/mips/mips_gic.c           |  653 ++++++++++++++++++++++++++++++++++++++++++
 hw/mips/mips_gic.h           |  298 +++++++++++++++++++
 hw/mips/mips_malta.c         |   71 +++++-
 target-mips/cpu.h            |    4 +-
 target-mips/translate.c      |   17 ++
 target-mips/translate_init.c |    3 +-
 9 files changed, 1220 insertions(+), 5 deletions(-)
 create mode 100644 hw/mips/mips_gcr.c
 create mode 100644 hw/mips/mips_gcr.h
 create mode 100644 hw/mips/mips_gic.c
 create mode 100644 hw/mips/mips_gic.h

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2015-10-21 20:13 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-15 23:52 [Qemu-devel] [PATCH 0/4] mips: add Global Interrupt Controller Yongbok Kim
2015-10-15 23:52 ` [Qemu-devel] [PATCH 1/4] target-mips: add CMGCRBase register Yongbok Kim
2015-10-19 15:07   ` Leon Alrae
2015-10-15 23:52 ` [Qemu-devel] [PATCH 2/4] mips: add Global Config Register block (part) Yongbok Kim
2015-10-15 23:52 ` [Qemu-devel] [PATCH 3/4] mips: add Global Interrupt Controller Yongbok Kim
2015-10-21 15:49   ` Leon Alrae
2015-10-15 23:52 ` [Qemu-devel] [PATCH 4/4] mips: add gic support to malta Yongbok Kim
2015-10-21 15:53   ` Leon Alrae
2015-10-19 14:36 ` [Qemu-devel] [PATCH 0/4] mips: add Global Interrupt Controller James Hogan
2015-10-19 14:58   ` Yongbok Kim
2015-10-21 16:01 ` Peter Maydell
2015-10-21 16:28   ` Yongbok Kim
2015-10-21 20:13     ` Peter Maydell
2015-10-21 16:36 ` Peter Crosthwaite

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).