summaryrefslogtreecommitdiffstats
path: root/target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch
diff options
context:
space:
mode:
authorRam Chandra Jangir <rjangi@codeaurora.org>2016-05-21 14:48:31 +0530
committerJohn Crispin <john@phrozen.org>2016-05-27 15:50:17 +0200
commit5e49c5795697868f6317f17fda5a2b04f299e116 (patch)
treebf6ebcc54ae88fa08f268f02a8f118939fe6bf6a /target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch
parent955c341d3bec0eb4971a03924e99156367255d7b (diff)
downloadmaster-31e0f0ae-5e49c5795697868f6317f17fda5a2b04f299e116.tar.gz
master-31e0f0ae-5e49c5795697868f6317f17fda5a2b04f299e116.tar.bz2
master-31e0f0ae-5e49c5795697868f6317f17fda5a2b04f299e116.zip
ipq806x: Add support for linux-4.4
1)Changes - Rebased the patches for linux-4.4.7 - Added patch to fix spi nor fifo and dma support - Added patch to configure watchdog barktime 2)Testing Tested on IPQ AP148 Board: a. NOR boot and NAND boot b. ethernet network and ath10k wifi c. ubi sysupgrade UnTested dwc3 usb has not been validated on IPQ board(AP148) 3)Known Issues: Once we flash ubi image on AP148, and if we reset the board, uboot on first boot creates PEB and LEB for dynamic sized partitions, which is incorrect and not what linux expects which causes errors when trying to mount rootfs. In order to test this, we can use the below steps: a. Flash the ubi image on board and don't reset the board b. load the kernel fit image in RAM and boot from there. Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
Diffstat (limited to 'target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch')
-rw-r--r--target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch51
1 files changed, 0 insertions, 51 deletions
diff --git a/target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch b/target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch
deleted file mode 100644
index ced452f8a0..0000000000
--- a/target/linux/ipq806x/patches-3.18/153-dmaengine-Introduce-a-device_config-callback.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 94a73e30dfe6722e9f4ef19f7892901d7d00eab1 Mon Sep 17 00:00:00 2001
-From: Maxime Ripard <maxime.ripard@free-electrons.com>
-Date: Mon, 17 Nov 2014 14:42:00 +0100
-Subject: [PATCH] dmaengine: Introduce a device_config callback
-
-The fact that the channel configuration is done in device_control is rather
-misleading, since it's not really advertised as such, plus, the fact that the
-framework exposes a function of its own makes it not really intuitive, while
-we're losing the type checking whenever we pass that unsigned long argument.
-
-Add a device_config callback to dma_device, with a fallback on the old
-behaviour for now for existing drivers to opt in.
-
-Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
-Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-Signed-off-by: Vinod Koul <vinod.koul@intel.com>
----
- include/linux/dmaengine.h | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
---- a/include/linux/dmaengine.h
-+++ b/include/linux/dmaengine.h
-@@ -607,6 +607,8 @@ struct dma_tx_state {
- * The function takes a buffer of size buf_len. The callback function will
- * be called after period_len bytes have been transferred.
- * @device_prep_interleaved_dma: Transfer expression in a generic way.
-+ * @device_config: Pushes a new configuration to a channel, return 0 or an error
-+ * code
- * @device_control: manipulate all pending operations on a channel, returns
- * zero or error code
- * @device_tx_status: poll for transaction completion, the optional
-@@ -673,6 +675,9 @@ struct dma_device {
- struct dma_async_tx_descriptor *(*device_prep_interleaved_dma)(
- struct dma_chan *chan, struct dma_interleaved_template *xt,
- unsigned long flags);
-+
-+ int (*device_config)(struct dma_chan *chan,
-+ struct dma_slave_config *config);
- int (*device_control)(struct dma_chan *chan, enum dma_ctrl_cmd cmd,
- unsigned long arg);
-
-@@ -696,6 +701,9 @@ static inline int dmaengine_device_contr
- static inline int dmaengine_slave_config(struct dma_chan *chan,
- struct dma_slave_config *config)
- {
-+ if (chan->device->device_config)
-+ return chan->device->device_config(chan, config);
-+
- return dmaengine_device_control(chan, DMA_SLAVE_CONFIG,
- (unsigned long)config);
- }