linux-omap.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/31] Clean up amba/primecell bus support
@ 2012-01-20  9:22 Russell King - ARM Linux
  2012-01-20  9:22 ` [PATCH 01/31] ARM: amba: add amba_device allocation/add/put functions Russell King - ARM Linux
                   ` (30 more replies)
  0 siblings, 31 replies; 69+ messages in thread
From: Russell King - ARM Linux @ 2012-01-20  9:22 UTC (permalink / raw)
  To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ,
	linux-mmc-u79uwXL29TY76Z2rM5mHXA,
	linux-omap-u79uwXL29TY76Z2rM5mHXA,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA, STEricsson
  Cc: Viresh Kumar, Kukjin Kim, Linus Walleij, Scott Branden,
	Srinidhi Kasagar, Ryan Mallon, Rob Herring, Hartley Sweeten,
	Rajeev Kumar, Jiandong Zheng, Chris Ball, Sascha Hauer,
	Alessandro Rubini

This patch set cleans up the AMBA/Primecell bus support.  Contained
within this set are:

1. Patches 1-5 - Allocation APIs
   It seems several places in the kernel want to allocate and register
   amba_device structures.  Let's make this official, and common code.
   So we introduce amba_device_alloc(), amba_device_add(), and
   amba_device_put() APIs, which provide the necessary support safely
   for this.

   Convert the DT, ux500, Integrator/AP and mxs code to use these APIs
   rather than their private version.

2. Patches 6-17 - NO_IRQ cleanup
   Making IRQ number 0 mean 'no irq' for the AMBA drivers and bus layer.
   We get rid of NO_IRQ initializers in this across various platforms,
   and make the bus layer warn if '-1' is passed in a device as an IRQ.
   This prevents new occurances of NO_IRQ initializers for this bus type
   going by unspotted.

3. Patches 18-31 - static initializers
   Provide a standardized set of initializers for statically declared
   AMBA devices.  We provide two - one for the simpler APB devices,
   and one for AHB devices.  The major difference between these two is
   the setting of the DMA mask - APB peripherals do not have DMA
   capability themselves.

While updating (3), I came across new additions in Spear3xx and the
Samsung directories which added AMBA devices, which are declared
globally.  The Spear3xx devices are used in other files, so that's
fine.

Samsung devices don't seem to be - and that needs fixing (did someone
not run checkpatch or sparse on these changes?)  Please send fixes.

Acks for these patches are welcome.

 arch/arm/mach-bcmring/core.c                   |   23 +-----
 arch/arm/mach-ep93xx/core.c                    |   46 ++---------
 arch/arm/mach-exynos/dma.c                     |   38 ++-------
 arch/arm/mach-integrator/core.c                |   70 +++-------------
 arch/arm/mach-integrator/impd1.c               |    9 +--
 arch/arm/mach-integrator/integrator_cp.c       |   49 ++---------
 arch/arm/mach-lpc32xx/phy3250.c                |   32 +------
 arch/arm/mach-mxs/devices.c                    |    8 +-
 arch/arm/mach-mxs/devices/amba-duart.c         |    2 +-
 arch/arm/mach-netx/fb.c                        |   13 +---
 arch/arm/mach-nomadik/board-nhk8815.c          |   17 +---
 arch/arm/mach-nomadik/cpu-8815.c               |    9 +--
 arch/arm/mach-omap2/emu.c                      |   26 +------
 arch/arm/mach-realview/core.h                  |   20 +----
 arch/arm/mach-realview/realview_eb.c           |   78 +++++++++---------
 arch/arm/mach-realview/realview_pb1176.c       |   78 +++++++++---------
 arch/arm/mach-realview/realview_pb11mp.c       |   78 +++++++++---------
 arch/arm/mach-realview/realview_pba8.c         |   78 +++++++++---------
 arch/arm/mach-realview/realview_pbx.c          |   78 +++++++++---------
 arch/arm/mach-s5p64x0/dma.c                    |   22 +----
 arch/arm/mach-s5pc100/dma.c                    |   38 ++-------
 arch/arm/mach-s5pv210/dma.c                    |   38 ++-------
 arch/arm/mach-spear3xx/spear300.c              |   14 +---
 arch/arm/mach-spear3xx/spear3xx.c              |   27 +-----
 arch/arm/mach-spear6xx/spear6xx.c              |   10 +-
 arch/arm/mach-u300/core.c                      |   85 ++++----------------
 arch/arm/mach-ux500/devices-common.c           |   13 +--
 arch/arm/mach-versatile/core.c                 |   70 ++++++++--------
 arch/arm/mach-versatile/core.h                 |   20 +----
 arch/arm/mach-versatile/versatile_pb.c         |   18 ++--
 arch/arm/mach-vexpress/core.h                  |   17 ----
 arch/arm/mach-vexpress/ct-ca9x4.c              |    8 +-
 arch/arm/mach-vexpress/include/mach/ct-ca9x4.h |    2 +-
 arch/arm/mach-vexpress/v2m.c                   |   20 ++--
 drivers/amba/bus.c                             |  105 ++++++++++++++++++------
 drivers/mmc/host/mmci.c                        |    2 +-
 drivers/of/platform.c                          |    6 +-
 include/linux/amba/bus.h                       |   36 ++++++++
 38 files changed, 488 insertions(+), 815 deletions(-)

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

end of thread, other threads:[~2012-01-26 17:41 UTC | newest]

Thread overview: 69+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-20  9:22 [PATCH 00/31] Clean up amba/primecell bus support Russell King - ARM Linux
2012-01-20  9:22 ` [PATCH 01/31] ARM: amba: add amba_device allocation/add/put functions Russell King - ARM Linux
2012-01-20  9:23 ` [PATCH 02/31] ARM: amba: of: convert to use amba_device_alloc Russell King - ARM Linux
2012-01-20 13:58   ` Rob Herring
2012-01-20  9:23 ` [PATCH 03/31] ARM: amba: ux500: " Russell King - ARM Linux
2012-01-21 16:21   ` Srinidhi KASAGAR
2012-01-23 19:03   ` Linus Walleij
2012-01-20  9:23 ` [PATCH 04/31] ARM: amba: integrator: " Russell King - ARM Linux
2012-01-20  9:24 ` [PATCH 05/31] ARM: amba: mxs: " Russell King - ARM Linux
2012-01-20 12:25   ` Shawn Guo
2012-01-20 12:39     ` Russell King - ARM Linux
2012-01-20  9:24 ` [PATCH 06/31] ARM: amba: make irq 0 invalid Russell King - ARM Linux
2012-01-20  9:24 ` [PATCH 07/31] ARM: amba: ux500: get rid of NO_IRQ Russell King - ARM Linux
2012-01-21 16:19   ` Srinidhi KASAGAR
     [not found]   ` <E1RoAiE-0005Eh-7i-eh5Bv4kxaXIANfyc6IWni62ZND6+EDdj@public.gmane.org>
2012-01-23 19:04     ` Linus Walleij
2012-01-20  9:25 ` [PATCH 08/31] ARM: amba: get rid of NO_IRQ initializers Russell King - ARM Linux
2012-01-20  9:25 ` [PATCH 09/31] ARM: amba: samsung: " Russell King - ARM Linux
2012-01-21  0:28   ` Kukjin Kim
2012-01-20  9:25 ` [PATCH 10/31] ARM: amba: integrator/realview/versatile/vexpress: " Russell King - ARM Linux
2012-01-20  9:26 ` [PATCH 11/31] ARM: amba: lpc32xx: " Russell King - ARM Linux
2012-01-20  9:26 ` [PATCH 12/31] ARM: amba: mxs: " Russell King - ARM Linux
2012-01-20 12:27   ` Shawn Guo
2012-01-20  9:26 ` [PATCH 13/31] ARM: amba: nomadik: " Russell King - ARM Linux
2012-01-23 19:02   ` Linus Walleij
2012-01-20  9:27 ` [PATCH 14/31] ARM: amba: netx: " Russell King - ARM Linux
2012-01-20  9:27 ` [PATCH 15/31] ARM: amba: spear: " Russell King - ARM Linux
2012-01-20  9:30   ` Viresh Kumar
     [not found] ` <20120120092207.GD1068-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2012-01-20  9:27   ` [PATCH 16/31] ARM: amba: u300: " Russell King - ARM Linux
2012-01-23 19:04     ` Linus Walleij
2012-01-20  9:28   ` [PATCH 17/31] ARM: amba: make use of -1 IRQs warn Russell King - ARM Linux
2012-01-20  9:30   ` [PATCH 24/31] ARM: amba: ep93xx: use common amba device initializers Russell King - ARM Linux
2012-01-20 16:56     ` H Hartley Sweeten
2012-01-21  0:59   ` [PATCH 00/31] Clean up amba/primecell bus support Kukjin Kim
2012-01-20  9:28 ` [PATCH 18/31] ARM: amba: provide common initializers for static amba devices Russell King - ARM Linux
2012-01-20 17:58   ` H Hartley Sweeten
2012-01-20  9:28 ` [PATCH 19/31] ARM: amba: vexpress: get rid of private platform amba_device initializer Russell King - ARM Linux
2012-01-24 14:27   ` Will Deacon
2012-01-20  9:29 ` [PATCH 20/31] ARM: amba: versatile: " Russell King - ARM Linux
2012-01-24 15:06   ` Will Deacon
2012-01-20  9:29 ` [PATCH 21/31] ARM: amba: realview: " Russell King - ARM Linux
2012-01-24 16:00   ` Will Deacon
     [not found]     ` <20120124160044.GM19798-MRww78TxoiP5vMa5CHWGZ34zcgK1vI+I0E9HWUfgJXw@public.gmane.org>
2012-01-24 16:23       ` Russell King - ARM Linux
2012-01-24 17:26         ` Will Deacon
2012-01-24 21:23           ` Linus Walleij
2012-01-24 21:45           ` Russell King - ARM Linux
2012-01-25  9:58             ` Will Deacon
2012-01-25 10:22               ` Russell King - ARM Linux
2012-01-25 10:39                 ` Will Deacon
2012-01-25 11:06                   ` Russell King - ARM Linux
2012-01-26 17:25                     ` Russell King - ARM Linux
     [not found]                       ` <20120126172527.GA12731-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2012-01-26 17:37                         ` Will Deacon
2012-01-26 17:41                           ` Russell King - ARM Linux
2012-01-20  9:29 ` [PATCH 22/31] ARM: amba: integrator: use common amba device initializers Russell King - ARM Linux
2012-01-24 16:13   ` Will Deacon
2012-01-20  9:30 ` [PATCH 23/31] ARM: amba: omap2: " Russell King - ARM Linux
2012-01-20 14:37   ` Tony Lindgren
2012-01-20  9:30 ` [PATCH 25/31] ARM: amba: bcmring: " Russell King - ARM Linux
2012-01-20  9:31 ` [PATCH 26/31] ARM: amba: netx: " Russell King - ARM Linux
2012-01-20  9:31 ` [PATCH 27/31] ARM: amba: lpc32xx: " Russell King - ARM Linux
2012-01-20  9:31 ` [PATCH 28/31] ARM: amba: u300: " Russell King - ARM Linux
2012-01-23 19:05   ` Linus Walleij
2012-01-20  9:32 ` [PATCH 29/31] ARM: amba: nomadik: " Russell King - ARM Linux
2012-01-23 19:02   ` Linus Walleij
2012-01-20  9:32 ` [PATCH 30/31] ARM: amba: spear: " Russell King - ARM Linux
2012-01-20  9:38   ` Viresh Kumar
2012-01-20  9:32 ` [PATCH 31/31] ARM: amba: samsung: " Russell King - ARM Linux
     [not found]   ` <E1RoAq3-0005GM-LI-eh5Bv4kxaXIANfyc6IWni62ZND6+EDdj@public.gmane.org>
2012-01-21  0:45     ` Kukjin Kim
2012-01-20 22:33 ` [PATCH 13/31] ARM: amba: nomadik: get rid of NO_IRQ initializers Alessandro Rubini
2012-01-20 22:33 ` [PATCH 29/31] ARM: amba: nomadik: use common amba device initializers Alessandro Rubini

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).