Thread (1 message) read the whole thread 1 message, 1 author, 2011-10-11

Re: [PATCH v6 00/10] Add device tree support for PL330 dma controller driver

From: Thomas Abraham <hidden>
Date: 2011-10-11 15:05:36
Also in: linux-arm-kernel, linux-samsung-soc

Hi Vinod,

On 11 October 2011 17:36, Kukjin Kim [off-list ref] wrote:
Thomas Abraham wrote:
quoted
Changes since v5:
- Added alias clocks for pdma clocks on Exynos4.
- Modified platform data for s5p64x0, s5pc100 and s5pv210.
- Rebased on the tip of for-next branch of linux-samsung kernel and
tested.
quoted
Changes since v4:
- Rebased with Samsung maintainer's for-next branch which is at
linux-3.1-rc7
quoted
  - Modified Patch 6/6 to apply cleanly.

Changes since v3:
- In Patch 4/6, a recommendation is added in the pl330 binding
documentation
quoted
  for the name of the property which specifies the dma channel in the
client
quoted
  device node.
- In Patch 6/6, dropped #ifdef around of_have_populated_dt.

Changes since v2:
- Only the sixth patch is changed, to make dma platform data conditionally
  selectable.
- Tested with v8 version of pl330 dma driver update patches from Boojin
Kim.
quoted
Changes since v1:
- Removed "arm,pl330-pdma" and "arm,pl330-mdma" compatible values.
- Removed "arm,primecell-periphid" and "arm,pl330-peri-reqs"
  property requirements.

This patchset adds device tree support for PL330 driver and uses it to add
device tree support for Samsung platforms, specifically Exynos4.

Patch 1 moves the pl330_filter function from Samsung specific wrappers to
pl330
quoted
dma driver and also adds a check to ensure that the filter function
proceeds
quoted
only if it the dma channel being investigated belongs to pl330 dma
controller
quoted
instance.

Patch 2 adds support to infer the direction of the dma transfer using the
direction specified with the transfer request instead of including this
information in the platform data. This simlifies the addition of device
tree
quoted
support. Patch 3 simplifies the platform data for Exynos4 pl330 dma
controllers.
quoted
Patch 4 adds device tree support for pl330 dma controller driver. A dma
channel
quoted
is represented using a phandle of the dma controller node and the channel
id
quoted
within that controller. Client driver request a dma channel using the
phandle
quoted
and channel id pair. Correspondingly, the pl330 filter function has been
modified to lookup a channel based on this value.

Patch 5 adds device tree support for Samsung's DMA engine wrappers. Client
drivers retrive the channel property from their device node and pass it to
the
quoted
wrappers. The wrapper functions use the property value as the filter
function
quoted
parameter. Patch 6 restricts the usage of pl330 device and platform data
instances to non-dt platforms.

Patch 7 adds clock alias for both the pdma clocks. When pdma controllers
are
quoted
instantiated from device tree, the amba device registration process
enables
quoted
clock to the controllers to read the peripheral id of the PDMA amba
device. In
quoted
case of Exynos4, the clocks to the PDMA controllers are named as 'dma' but
amba_device_register() looks up the clock using the name 'apb_pclk'.
Hence,
quoted
alias clocks with name 'apb_pclk' clock are created for clocks with name
'dma'.
quoted
Patch 8 to 10 simplifies the pdma platform data for s5p64x0, s5pc100 and
s5pv210.

This patchset is based on the following tree:
https://github.com/kgene/linux-samsung.git   branch: for-next

and tested tested for both device-tree and non-device-tree kernel on
smdkv310.
quoted
This patchset has dependency on the following patchset.
[PATCH V2 0/2] Add a common macro for creating struct clk_lookup entries.


Thomas Abraham (10):
  DMA: PL330: move filter function into driver
  DMA: PL330: Infer transfer direction from transfer request instead of
platform
quoted
data
  ARM: EXYNOS4: Modify platform data for pl330 driver
  DMA: PL330: Add device tree support
  ARM: SAMSUNG: Add device tree support for pl330 dma engine wrappers
  ARM: EXYNOS4: Limit usage of pl330 device instance to non-dt build
  ARM: Exynos4: Add a alias for pdma clocks
  ARM: S5P64x0: Modify platform data for pl330 driver
  ARM: S5PC100: Modify platform data for pl330 driver
  ARM: S5PV210: Modify platform data for pl330 driver

 .../devicetree/bindings/dma/arm-pl330.txt          |   30 +++
 arch/arm/mach-exynos4/Kconfig                      |   10 +
 arch/arm/mach-exynos4/Makefile                     |    3 +-
 arch/arm/mach-exynos4/clock.c                      |   35 ++-
 arch/arm/mach-exynos4/dma.c                        |  227
++++++-----------
quoted
--
 arch/arm/mach-s5p64x0/dma.c                        |  227
+++++-------------
quoted
 arch/arm/mach-s5pc100/dma.c                        |  247
++++++-----------
quoted
---
 arch/arm/mach-s5pv210/dma.c                        |  241
++++++-----------
quoted
---
 arch/arm/plat-samsung/dma-ops.c                    |   15 +-
 arch/arm/plat-samsung/include/plat/dma-ops.h       |    1 +
 arch/arm/plat-samsung/include/plat/dma-pl330.h     |    3 +-
 drivers/dma/pl330.c                                |   99 +++++----
 include/linux/amba/pl330.h                         |   15 +-
 13 files changed, 405 insertions(+), 748 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/dma/arm-pl330.txt
Hi,

Looks ok to me and if required,
Acked-by: Kukjin Kim <redacted>

And I hope since this includes many changes of arch/arm/Samsung stuff, this
would be sent to upstream via Samsung tree after ack from Vinod for dma
stuff.
All the comments for this patchset that adds device tree support for
pl330 dma controller driver have been addressed. This patchset is
based on the linux-samsung kernel since there are many changes in the
samsung platform code included in this patchset.

If there are no other changes required, can this patchset be
considered for merge in 3.2 ?

Thanks,
Thomas.

Thanks.

Best regards,
Kgene.
--
Kukjin Kim [off-list ref], Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help