All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/21] xen/arm: Add GICv3 support
@ 2014-06-12 13:36 vijay.kilari
  2014-06-12 13:36 ` [PATCH v5 01/21] xen/arm: move io.h as mmio.h to include folder vijay.kilari
                   ` (22 more replies)
  0 siblings, 23 replies; 87+ messages in thread
From: vijay.kilari @ 2014-06-12 13:36 UTC (permalink / raw)
  To: Ian.Campbell, julien.grall, stefano.stabellini,
	stefano.stabellini, tim, xen-devel
  Cc: Prasun.Kapoor, Vijaya Kumar K, vijay.kilari

From: Vijaya Kumar K <Vijaya.Kumar@caviumnetworks.com>

Made changes to existing gic and vgic drivers
to make it generic and added support for GIC v3
hw version

Tested with ARM64 simulator with multicore core
and booted Dom0 kernel.

Major changes in v5:
 - Introduced new patch for checking platform capability for gicv3
 - Introduced more patches for vgic clean up and code movement
 - Added synchronization barriers and clean up in GICv3 driver
 - Rebase on top of master branch +
   remotes/origin/no_maintenance_interrupts-v8 patch set
 - Code base available in github
   git clone https://github.com/vijaykilari/Xen-GICv3.git
 - Fixed comments and coding style

Major changes in v4:
 - Changed io handlers to take mmio address and size as
   parameters
 - ioremap is used instead of fixmap to map GICv2 address
   space. Removed /4 in GICv2 register definitions
 - vGIC driver now uses register size to calculate IRQ rank
 - GICv2 LR register definitions are declared locally in GICv2 driver
 - GICR & GICD common register handling in vgic-v3 driver are segregated
   in one common function
 - irq_hw_controller definition is managed in GICv2 and GICv3 drivers
 - Made irq_ops const
 - GIC DT node is updated in respective drivers
 - Comments and coding style fixes
 - Rebased on remotes/origin/no_maintenance_interrupts-v8 + Julien's
   patch set

Major changes in v3:
 - Moved io.h from xen/arch/arm to xen/include/asm-arm
   and renamed as mmio.h
 - Made all the io handlers as domain specific and removed
   check handlers. Instead address and size are passed
 - Cleaned up sgi handling functions in V2 gic driver and
   made generic
 - Removed unused parameters in do_sgi call
 - VGIC driver is chosen based on GIC driver initialized
 - Implemented SGI handling for GICv3 to boot multicore
 - Missing coding style fixes
 - Rebased to remotes/origin/no_maintenance_interrupts-v6
   branch of Stephano's unstable tree

Major Changes in v2:
 - Added per domain io handler
 - Use device api to initialize gic driver
 - Avoid use of void pointer to access common data
 - Moved vgic address information data from domain.h
 - Coding style 

Vijaya Kumar K (21):
  xen/arm: move io.h as mmio.h to include folder
  xen/arm: make mmio handlers domain specific
  xen/arm: make sgi handling generic
  xen/arm: remove unused parameter in do_sgi call
  xen/arm: use ioremap to map gic-v2 registers
  xen/arm: segregate and split GIC low level functionality
  arm/xen: move GIC context data structure to gic driver
  xen/arm: use device api to detect GIC version
  xen/arm: move vgic rank data to gic header file
  xen/arm: move vgic defines to vgic header file
  xen/arm: prefix byte_read and byte_write functions with vgic
  xen/arm: move is_vcpu_running function to sched.h
  xen/arm: move pending_irq structure to vgic header file
  xen/arm: calculate vgic irq rank based on register size
  xen/arm: Remove REG macro in vgic driver
  xen/arm: split vgic driver into generic and vgic-v2 driver
  xen/arm: Add support for GIC v3
  xen/arm: Add virtual GICv3 support
  xen/arm: Update Dom0 GIC dt node with GICv3 information
  xen/arm: add SGI handling for GICv3
  xen/arm: check for GICv3 platform support

 xen/arch/arm/Makefile                         |    6 +-
 xen/arch/arm/domain.c                         |    5 +
 xen/arch/arm/domain_build.c                   |   49 +-
 xen/arch/arm/gic-v2.c                         |  725 +++++++++++++++
 xen/arch/arm/gic-v3.c                         | 1234 +++++++++++++++++++++++++
 xen/arch/arm/gic.c                            |  537 ++---------
 xen/arch/arm/io.c                             |   59 +-
 xen/arch/arm/irq.c                            |    1 +
 xen/arch/arm/setup.c                          |    5 +-
 xen/arch/arm/time.c                           |    1 +
 xen/arch/arm/traps.c                          |   32 +-
 xen/arch/arm/vgic-v2.c                        |  510 ++++++++++
 xen/arch/arm/vgic-v3.c                        |  959 +++++++++++++++++++
 xen/arch/arm/vgic.c                           |  574 ++----------
 xen/arch/arm/vpsci.c                          |    1 +
 xen/arch/arm/vtimer.c                         |    1 +
 xen/arch/arm/vuart.c                          |   28 +-
 xen/include/asm-arm/cpufeature.h              |    1 +
 xen/include/asm-arm/device.h                  |    1 +
 xen/include/asm-arm/domain.h                  |   85 +-
 xen/include/asm-arm/gic.h                     |  274 ++++--
 xen/include/asm-arm/gic_v3_defs.h             |  164 ++++
 xen/{arch/arm/io.h => include/asm-arm/mmio.h} |   30 +-
 xen/include/asm-arm/processor.h               |   27 +-
 xen/include/asm-arm/sysregs.h                 |    3 +
 xen/include/asm-arm/vgic.h                    |  183 ++++
 xen/include/xen/lib.h                         |    2 +
 xen/include/xen/sched.h                       |   16 +
 28 files changed, 4322 insertions(+), 1191 deletions(-)
 create mode 100644 xen/arch/arm/gic-v2.c
 create mode 100644 xen/arch/arm/gic-v3.c
 create mode 100644 xen/arch/arm/vgic-v2.c
 create mode 100644 xen/arch/arm/vgic-v3.c
 create mode 100644 xen/include/asm-arm/gic_v3_defs.h
 rename xen/{arch/arm/io.h => include/asm-arm/mmio.h} (66%)
 create mode 100644 xen/include/asm-arm/vgic.h

-- 
1.7.9.5

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

end of thread, other threads:[~2014-06-20  6:31 UTC | newest]

Thread overview: 87+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-12 13:36 [PATCH v5 00/21] xen/arm: Add GICv3 support vijay.kilari
2014-06-12 13:36 ` [PATCH v5 01/21] xen/arm: move io.h as mmio.h to include folder vijay.kilari
2014-06-17 11:52   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 02/21] xen/arm: make mmio handlers domain specific vijay.kilari
2014-06-12 16:07   ` Stefano Stabellini
2014-06-12 22:19   ` Julien Grall
2014-06-17 11:53   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 03/21] xen/arm: make sgi handling generic vijay.kilari
2014-06-17 11:52   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 04/21] xen/arm: remove unused parameter in do_sgi call vijay.kilari
2014-06-12 13:36 ` [PATCH v5 05/21] xen/arm: use ioremap to map gic-v2 registers vijay.kilari
2014-06-12 16:11   ` Stefano Stabellini
2014-06-15 16:02   ` Julien Grall
2014-06-17 11:59   ` Ian Campbell
2014-06-18 21:19   ` Julien Grall
2014-06-12 13:36 ` [PATCH v5 06/21] xen/arm: segregate and split GIC low level functionality vijay.kilari
2014-06-12 16:26   ` Stefano Stabellini
2014-06-12 22:46     ` Julien Grall
2014-06-12 22:44   ` Julien Grall
2014-06-13  8:30     ` Ian Campbell
2014-06-19  9:56     ` Vijay Kilari
2014-06-19 10:49       ` Julien Grall
2014-06-15 17:47   ` Julien Grall
2014-06-17 12:15   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 07/21] arm/xen: move GIC context data structure to gic driver vijay.kilari
2014-06-12 16:28   ` Stefano Stabellini
2014-06-15 16:05   ` Julien Grall
2014-06-17 12:19   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 08/21] xen/arm: use device api to detect GIC version vijay.kilari
2014-06-15 16:09   ` Julien Grall
2014-06-17 12:23   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 09/21] xen/arm: move vgic rank data to gic header file vijay.kilari
2014-06-17 12:25   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 10/21] xen/arm: move vgic defines to vgic " vijay.kilari
2014-06-17 12:27   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 11/21] xen/arm: prefix byte_read and byte_write functions with vgic vijay.kilari
2014-06-15 16:23   ` Julien Grall
2014-06-15 16:34   ` Julien Grall
2014-06-17 12:28     ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 12/21] xen/arm: move is_vcpu_running function to sched.h vijay.kilari
2014-06-15 16:26   ` Julien Grall
2014-06-16  8:34     ` Jan Beulich
2014-06-19 10:58       ` Vijay Kilari
2014-06-19 11:03         ` Julien Grall
2014-06-19 11:11     ` Vijay Kilari
2014-06-12 13:36 ` [PATCH v5 13/21] xen/arm: move pending_irq structure to vgic header file vijay.kilari
2014-06-17 12:33   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 14/21] xen/arm: calculate vgic irq rank based on register size vijay.kilari
2014-06-17 12:36   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 15/21] xen/arm: Remove REG macro in vgic driver vijay.kilari
2014-06-12 16:42   ` Stefano Stabellini
2014-06-15 16:37   ` Julien Grall
2014-06-17 12:37   ` Ian Campbell
2014-06-12 13:36 ` [PATCH v5 16/21] xen/arm: split vgic driver into generic and vgic-v2 driver vijay.kilari
2014-06-15 17:04   ` Julien Grall
2014-06-17 13:19     ` Ian Campbell
2014-06-17 13:40       ` Julien Grall
2014-06-19 12:35     ` Vijay Kilari
2014-06-17 13:21   ` Ian Campbell
2014-06-18  3:33     ` Vijay Kilari
2014-06-18  9:17       ` Julien Grall
2014-06-12 13:36 ` [PATCH v5 17/21] xen/arm: Add support for GIC v3 vijay.kilari
2014-06-12 17:03   ` Stefano Stabellini
2014-06-12 22:58     ` Julien Grall
2014-06-15 18:10   ` Julien Grall
2014-06-12 13:36 ` [PATCH v5 18/21] xen/arm: Add virtual GICv3 support vijay.kilari
2014-06-12 17:09   ` Stefano Stabellini
2014-06-15 17:07     ` Julien Grall
2014-06-16 10:59       ` Stefano Stabellini
2014-06-16 11:08         ` Stefano Stabellini
2014-06-15 18:32   ` Julien Grall
2014-06-20  6:31     ` Vijay Kilari
2014-06-12 13:36 ` [PATCH v5 19/21] xen/arm: Update Dom0 GIC dt node with GICv3 information vijay.kilari
2014-06-15 18:36   ` Julien Grall
2014-06-12 13:36 ` [PATCH v5 20/21] xen/arm: add SGI handling for GICv3 vijay.kilari
2014-06-12 17:15   ` Stefano Stabellini
2014-06-12 17:23     ` Stefano Stabellini
2014-06-12 13:36 ` [PATCH v5 21/21] xen/arm: check for GICv3 platform support vijay.kilari
2014-06-12 22:51   ` Julien Grall
2014-06-16 15:28     ` Vijay Kilari
2014-06-16 15:37       ` Julien Grall
2014-06-16 15:43         ` Ian Campbell
2014-06-13 15:59 ` [PATCH v5 00/21] xen/arm: Add GICv3 support Stefano Stabellini
2014-06-13 16:15   ` Julien Grall
2014-06-17 15:39 ` Ian Campbell
2014-06-18  3:43   ` Vijay Kilari
2014-06-18 10:37     ` Ian Campbell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.