linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/13] uio_pruss: add support for devicetree and am33xx
@ 2014-06-29 16:21 Andre Heider
  2014-06-29 16:21 ` [PATCH 01/13] uio: uio_pruss: use struct device Andre Heider
                   ` (13 more replies)
  0 siblings, 14 replies; 27+ messages in thread
From: Andre Heider @ 2014-06-29 16:21 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

this series adds PRUv2 support to uio_pruss through devicetree, makes the
device usable on am33xx and enables it on beaglebone black.
Inspired by old patches from Matt Porter found in a downstream tree.

To archieve that this series:
* adds a flag to omap_hwmod.c to get PRUSS out of hardreset (patch 5 and 6)
* adds devicetree support to uio_pruss (patch 7 and 9)
* adds the device to the am33xx dtsi and boneblack dts (patch 12 and 13)

Bits and pieces:
* some cleanup (patch 1-4)
* take care of a fact that SRAM on am33xx is not exposed through UIO (patch 8)
* add runtime pm support to enable clocks (patch 10)
* allow the driver to be compiled on SOC_AM33XX (patch 11)

This is only tested on beaglebone black (as that's the only hardware of the
PRUSS enabled families I have) with some basic GPIO and IRQ tests.

Notes:
* I just got this hardware and I don't know if this UIO PRUSS business is
  desired. Looking at the userspace driver I'd guess not so much ;), but this
  interface is there for older generations anyway, and this small series lets
  me use the device.
* is the hardreset thing I did there the right thing to do? I think the
  proper way would be a reset controller (which apparently doesn't yet exist
  for this SoC?) and let the driver deassert/assert on probe/remove?
* the platform device path has a clk_enable() / clk_put() calls. Are those
  now redundant with the introduced pm_runtime_enable() pm_runtime_disable()
  calls?

Thanks,
Andre

Andre Heider (13):
  uio: uio_pruss: use struct device
  uio: uio_pruss: use devm_kzalloc()
  uio: uio_pruss: use devm_ioremap_resource()
  uio: uio_pruss: use dmam_alloc_coherent()
  ARM: OMAP2+: hwmod: Introduce a flag to deassert the HW reset line
  ARM: AM33XX: hwmod: deassert PRUSS' hardreset lines
  Documentation: devicetree: add bindings for TI PRUSS
  uio: uio_pruss: make the UIO SRAM memory region optional
  uio: uio_pruss: add devicetree support
  uio: uio_pruss: add runtime pm support
  uio: uio_pruss: enable the driver for am33xx SoCs
  ARM: dts: am33xx: add the PRUSSv2 device
  ARM: dts: am335x-boneblack: enable the PRUSSv2 device

 .../devicetree/bindings/misc/ti,pruss.txt          |  19 +++
 arch/arm/boot/dts/am335x-boneblack.dts             |   4 +
 arch/arm/boot/dts/am33xx.dtsi                      |   9 ++
 arch/arm/mach-omap2/omap_hwmod.c                   |   2 +
 arch/arm/mach-omap2/omap_hwmod.h                   |   2 +
 .../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c |   1 +
 drivers/uio/Kconfig                                |   4 +-
 drivers/uio/uio_pruss.c                            | 144 ++++++++++++---------
 8 files changed, 123 insertions(+), 62 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/misc/ti,pruss.txt

-- 
2.0.0

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

end of thread, other threads:[~2014-08-01 20:44 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-29 16:21 [PATCH 00/13] uio_pruss: add support for devicetree and am33xx Andre Heider
2014-06-29 16:21 ` [PATCH 01/13] uio: uio_pruss: use struct device Andre Heider
2014-06-29 16:21 ` [PATCH 02/13] uio: uio_pruss: use devm_kzalloc() Andre Heider
2014-06-30  9:38   ` Mark Rutland
2014-06-30 19:42     ` Andre Heider
2014-06-29 16:21 ` [PATCH 03/13] uio: uio_pruss: use devm_ioremap_resource() Andre Heider
2014-06-29 16:21 ` [PATCH 04/13] uio: uio_pruss: use dmam_alloc_coherent() Andre Heider
2014-06-29 16:21 ` [PATCH 05/13] ARM: OMAP2+: hwmod: Introduce a flag to deassert the HW reset line Andre Heider
2014-06-29 16:21 ` [PATCH 06/13] ARM: AM33XX: hwmod: deassert PRUSS' hardreset lines Andre Heider
2014-06-29 16:21 ` [PATCH 07/13] Documentation: devicetree: add bindings for TI PRUSS Andre Heider
2014-06-30  9:33   ` Mark Rutland
2014-06-30 19:36     ` Andre Heider
2014-06-29 16:21 ` [PATCH 08/13] uio: uio_pruss: make the UIO SRAM memory region optional Andre Heider
2014-06-29 16:21 ` [PATCH 09/13] uio: uio_pruss: add devicetree support Andre Heider
2014-06-30  9:36   ` Mark Rutland
2014-06-30 19:39     ` Andre Heider
2014-06-29 16:21 ` [PATCH 10/13] uio: uio_pruss: add runtime pm support Andre Heider
2014-06-29 16:21 ` [PATCH 11/13] uio: uio_pruss: enable the driver for am33xx SoCs Andre Heider
2014-06-29 16:21 ` [PATCH 12/13] ARM: dts: am33xx: add the PRUSSv2 device Andre Heider
2014-06-30  9:36   ` Mark Rutland
2014-06-30 19:40     ` Andre Heider
2014-06-29 16:21 ` [PATCH 13/13] ARM: dts: am335x-boneblack: enable " Andre Heider
2014-07-07  8:48 ` [PATCH 00/13] uio_pruss: add support for devicetree and am33xx Andre Heider
2014-07-07 17:50   ` Paul Walmsley
2014-07-09 10:16     ` Hans J. Koch
2014-07-09 13:19     ` Andre Heider
2014-08-01 20:44     ` Bob Bailey

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