[PATCH v2 16/20] rpmsg: glink: Add announce_create ops and preallocate intents

2017-08-24 Thread Sricharan R
the rpmsg device gets probed. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c index 1458bdb..76ee86e 100644

[PATCH v2 17/20] rpmsg: glink: Receive and store the remote intent buffers

2017-08-24 Thread Sricharan R
Just like we allocating and sending intent ids to remote, remote side allocates and sends us the intents as well. So save the intent ids and use it later while sending data targeting the appropriate intents based on the size. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Sign

[PATCH v2 15/20] rpmsg: glink: Add rx done command

2017-08-24 Thread Sricharan R
Send RX data receive ack to remote and also inform that local intent buffer is used and freed. This informs the remote to request for next set of intent buffers before doing a send operation. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjo

[PATCH v2 17/20] rpmsg: glink: Receive and store the remote intent buffers

2017-08-24 Thread Sricharan R
Just like we allocating and sending intent ids to remote, remote side allocates and sends us the intents as well. So save the intent ids and use it later while sending data targeting the appropriate intents based on the size. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson

[PATCH v2 15/20] rpmsg: glink: Add rx done command

2017-08-24 Thread Sricharan R
Send RX data receive ack to remote and also inform that local intent buffer is used and freed. This informs the remote to request for next set of intent buffers before doing a send operation. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 83

[PATCH v2 19/20] rpmsg: glink: Request for intents when unavailable

2017-08-24 Thread Sricharan R
While sending data, we search for suitable sized intent to map and simply fail if a intent is not found. Instead request for a intent of required size and wait till one is alloted. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@l

[PATCH v2 19/20] rpmsg: glink: Request for intents when unavailable

2017-08-24 Thread Sricharan R
While sending data, we search for suitable sized intent to map and simply fail if a intent is not found. Instead request for a intent of required size and wait till one is alloted. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 76

[PATCH v2 11/20] rpmsg: glink: Fix idr_lock from mutex to spinlock

2017-08-24 Thread Sricharan R
The channel members lcids, rcids synchronised using the idr_lock is accessed in both atomic/non-atomic contexts. The readers are not currently synchronised. That no correct, so add the readers as well under the lock and use a spinlock. Signed-off-by: Sricharan R <sricha...@codeaurora.org>

[PATCH v2 20/20] rpmsg: glink: Handle remote rx done command

2017-08-24 Thread Sricharan R
Once the remote side sends a rx done ack, check for the intent reuse information from it and suitably discard or reuse the remote passed intent buffers. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> --- d

[PATCH v2 05/20] rpmsg: glink: Allow unaligned data access

2017-08-24 Thread Sricharan R
dingly, effectively removing the alignment restriction. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 6 -- drivers/rpmsg/qcom_glink_rpm.c| 22 +- 2

[PATCH v2 20/20] rpmsg: glink: Handle remote rx done command

2017-08-24 Thread Sricharan R
Once the remote side sends a rx done ack, check for the intent reuse information from it and suitably discard or reuse the remote passed intent buffers. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 42

[PATCH v2 05/20] rpmsg: glink: Allow unaligned data access

2017-08-24 Thread Sricharan R
the alignment restriction. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_native.c | 6 -- drivers/rpmsg/qcom_glink_rpm.c| 22 +- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_native.c b

[PATCH v2 11/20] rpmsg: glink: Fix idr_lock from mutex to spinlock

2017-08-24 Thread Sricharan R
The channel members lcids, rcids synchronised using the idr_lock is accessed in both atomic/non-atomic contexts. The readers are not currently synchronised. That no correct, so add the readers as well under the lock and use a spinlock. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson

[PATCH v2 09/20] rpmsg: glink: Fix default case while handling received commands

2017-08-24 Thread Sricharan R
Currently if we receive a command that we still do not support, then its simply discarded. While doing so, the RX FIFO pointer also needs to be incremented. Fixing this. Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 1 + 1 file changed, 1 ins

[PATCH v2 14/20] rpmsg: glink: Make RX FIFO peak accessor to take an offset

2017-08-24 Thread Sricharan R
gether, simplifying things. So introduce this. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 15 +++ drivers/rpmsg/qcom_glink_native.h | 2 +- drivers/rpmsg/qcom_g

[PATCH v2 09/20] rpmsg: glink: Fix default case while handling received commands

2017-08-24 Thread Sricharan R
Currently if we receive a command that we still do not support, then its simply discarded. While doing so, the RX FIFO pointer also needs to be incremented. Fixing this. Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_native.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers

[PATCH v2 14/20] rpmsg: glink: Make RX FIFO peak accessor to take an offset

2017-08-24 Thread Sricharan R
introduce this. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_native.c | 15 +++ drivers/rpmsg/qcom_glink_native.h | 2 +- drivers/rpmsg/qcom_glink_rpm.c| 5 - drivers/rpmsg/qcom_glink_smem.c | 5 - 4 files changed, 16 insertions

[PATCH v2 01/20] rpmsg: glink: Rename glink_rpm_xx functions to qcom_glink_xx

2017-08-24 Thread Sricharan R
rn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_rpm.c | 248 + 1 file changed, 128 insertions(+), 120 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_rpm.c b/drivers/rpmsg/qcom_glink_rpm.c inde

[PATCH v2 00/20] rpmsg: glink: Add glink smem based transport

2017-08-24 Thread Sricharan R
FIFO peak accessor to take an offset Sricharan R (13): rpmsg: glink: Return -EAGAIN when there is no FIFO space rpmsg: glink: Do a mbox_free_channel in remove rpmsg: glink: Fix default case while handling received commands rpmsg: glink: Add support for transport version negotiation rpmsg

[PATCH v2 01/20] rpmsg: glink: Rename glink_rpm_xx functions to qcom_glink_xx

2017-08-24 Thread Sricharan R
From: Bjorn Andersson Renaming the glink_rpm_xx functions and structs to qcom_glink_xx equivalents helps to reuse the core glink protocol while adding support for smem based glink transport in the later patches. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg

[PATCH v2 00/20] rpmsg: glink: Add glink smem based transport

2017-08-24 Thread Sricharan R
FIFO peak accessor to take an offset Sricharan R (13): rpmsg: glink: Return -EAGAIN when there is no FIFO space rpmsg: glink: Do a mbox_free_channel in remove rpmsg: glink: Fix default case while handling received commands rpmsg: glink: Add support for transport version negotiation rpmsg

Re: [PATCH V3] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-23 Thread Sricharan R
MTD_SPEEDTEST READ PAGE: 3860 KiB/s >> MTD_SPEEDTEST WRITE PAGE: 2837 KiB/s >> IOZONE READ: 2677 KB/s >> IOZONE WRITE: 1308 KB/s >> >> bam dma interrupts (after tests): 58806 >> >> Signed-off-by:

Re: [PATCH V3] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-23 Thread Sricharan R
MTD_SPEEDTEST READ PAGE: 3860 KiB/s >> MTD_SPEEDTEST WRITE PAGE: 2837 KiB/s >> IOZONE READ: 2677 KB/s >> IOZONE WRITE: 1308 KB/s >> >> bam dma interrupts (after tests): 58806 >> >> Signed-off-by

Re: [PATCH 13/18] rpmsg: glink: Add rx done command

2017-08-22 Thread Sricharan R
local glink edge owned queue (or) a threaded isr ?, downstream does the rx_done in a client specific worker. Regards, Sricharan -- "QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus

Re: [PATCH 13/18] rpmsg: glink: Add rx done command

2017-08-22 Thread Sricharan R
local glink edge owned queue (or) a threaded isr ?, downstream does the rx_done in a client specific worker. Regards, Sricharan -- "QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus

Re: [PATCH 11/18] rpmsg: glink: Use the local intents when receiving data

2017-08-22 Thread Sricharan R
eturn -ENOMEM; >> + >> +    intent->data = kmalloc(chunk_size + left_size, >> +   GFP_ATOMIC); > > Who is supposed to free the intent and intent->data memory ? Well, that's done as a part of the rx_done_work. Regards, Sricharan -- "QUALCOMM IN

Re: [PATCH 11/18] rpmsg: glink: Use the local intents when receiving data

2017-08-22 Thread Sricharan R
eturn -ENOMEM; >> + >> +    intent->data = kmalloc(chunk_size + left_size, >> +   GFP_ATOMIC); > > Who is supposed to free the intent and intent->data memory ? Well, that's done as a part of the rx_done_work. Regards, Sricharan -- "QUALCOMM IN

Re: [PATCH 10/18] rpmsg: glink: Add support for TX intents

2017-08-22 Thread Sricharan R
   return NULL; >> + >> +    spin_lock_irqsave(>intent_lock, flags); >> +    ret = idr_alloc_cyclic(>liids, intent, 1, -1, GFP_ATOMIC); >> +    if (ret < 0) { >> +    spin_unlock_irqrestore(>intent_lock, flags); >> +    return NULL; >> +    } >> +    spin_unlock_irqrestore(>intent_lock, flags); >> + >> +    intent->id = ret; >> +    intent->size = size; >> +    intent->reuse = reuseable; >> + >> +    return intent; >> +} >> + >> +/** >> + * glink_core_rx_cmd_remote_rx_intent_req() - Receive a request for >> rx_intent >> + *    from remote side > > copy-paste mistake ok. Regards, Sricharan -- "QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus

Re: [PATCH 10/18] rpmsg: glink: Add support for TX intents

2017-08-22 Thread Sricharan R
   return NULL; >> + >> +    spin_lock_irqsave(>intent_lock, flags); >> +    ret = idr_alloc_cyclic(>liids, intent, 1, -1, GFP_ATOMIC); >> +    if (ret < 0) { >> +    spin_unlock_irqrestore(>intent_lock, flags); >> +    return NULL; >> +    } >> +    spin_unlock_irqrestore(>intent_lock, flags); >> + >> +    intent->id = ret; >> +    intent->size = size; >> +    intent->reuse = reuseable; >> + >> +    return intent; >> +} >> + >> +/** >> + * glink_core_rx_cmd_remote_rx_intent_req() - Receive a request for >> rx_intent >> + *    from remote side > > copy-paste mistake ok. Regards, Sricharan -- "QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus

Re: [PATCH 04/18] rpmsg: glink: Move the common glink protocol implementation to glink_native.c

2017-08-22 Thread Sricharan R
Hi Arun, Thanks for the review. On 8/22/2017 11:28 AM, Arun Kumar Neelakantam wrote: > > > On 8/16/2017 10:48 PM, Sricharan R wrote: >> + >> +struct glink_msg { >> +    __le16 cmd; >> +    __le16 param1; >> +    __le32 param2; >> +    u8 data[]; &

Re: [PATCH 04/18] rpmsg: glink: Move the common glink protocol implementation to glink_native.c

2017-08-22 Thread Sricharan R
Hi Arun, Thanks for the review. On 8/22/2017 11:28 AM, Arun Kumar Neelakantam wrote: > > > On 8/16/2017 10:48 PM, Sricharan R wrote: >> + >> +struct glink_msg { >> +    __le16 cmd; >> +    __le16 param1; >> +    __le32 param2; >> +    u8 data[]; &

Re: [PATCH] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-21 Thread Sricharan R
minated should not add to issued list >> >> hmm, since it was already done like that, i added the same for list of >> descriptors now. > > Sounds like you should fix existing behaviour too :) > Just to clarify, the code below this, does a vchan_dma_desc_free_li

Re: [PATCH] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-21 Thread Sricharan R
minated should not add to issued list >> >> hmm, since it was already done like that, i added the same for list of >> descriptors now. > > Sounds like you should fix existing behaviour too :) > Just to clarify, the code below this, does a vchan_dma_desc_free_li

[PATCH V3] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-21 Thread Sricharan R
dma interrupts (after tests): 58806 Signed-off-by: Sricharan R <sricha...@codeaurora.org> Tested-by: Abhishek Sahu <abs...@codeaurora.org> --- [V3] Removed the use of is_busy variable and corrected terminate_all, added tags Please note that this will cause a me

[PATCH V3] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-21 Thread Sricharan R
dma interrupts (after tests): 58806 Signed-off-by: Sricharan R Tested-by: Abhishek Sahu --- [V3] Removed the use of is_busy variable and corrected terminate_all, added tags Please note that this will cause a merge conflict with https://patchwork.kernel.org/patch/9874691

[PATCH 03/18] rpmsg: glink: Split rpm_probe to reuse the common code

2017-08-16 Thread Sricharan R
nsport. Also reuse driver's remove as well. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_rpm.c | 85 -- 1 file changed, 49 insertions(+), 36 deleti

[PATCH 03/18] rpmsg: glink: Split rpm_probe to reuse the common code

2017-08-16 Thread Sricharan R
as well. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_rpm.c | 85 -- 1 file changed, 49 insertions(+), 36 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_rpm.c b/drivers/rpmsg/qcom_glink_rpm.c index 870ce32

[PATCH 02/18] rpmsg: glink: Associate indirections for pipe fifo accessor's

2017-08-16 Thread Sricharan R
ersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_rpm.c | 144 ++--- 1 file changed, 106 insertions(+), 38 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_rpm.c b/drivers/rpmsg/qcom_glink_r

[PATCH 02/18] rpmsg: glink: Associate indirections for pipe fifo accessor's

2017-08-16 Thread Sricharan R
indirections, so that the rest of the code can be shared. For this, have a qcom_glink_pipe that can be used in the common code containing the indirections and wrap it with glink_rpm_pipe that contains the transport specific members. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R

[PATCH 08/18] rpmsg: glink: Add support for transport version negotiation

2017-08-16 Thread Sricharan R
the transport is opened and they cannot be changed after negotiation has been completed. Each full implementation of G-Link must support a minimum of the current version, the previous version, and the base negotiation version called v0. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Sign

[PATCH 08/18] rpmsg: glink: Add support for transport version negotiation

2017-08-16 Thread Sricharan R
the transport is opened and they cannot be changed after negotiation has been completed. Each full implementation of G-Link must support a minimum of the current version, the previous version, and the base negotiation version called v0. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson

[PATCH 06/18] rpmsg: glink: Introduce glink smem based transport

2017-08-16 Thread Sricharan R
Adding a new smem transport register function and the fifo accessors for the same. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/Kconfig| 10 ++ drivers/rpmsg/Makefile |

[PATCH 06/18] rpmsg: glink: Introduce glink smem based transport

2017-08-16 Thread Sricharan R
function and the fifo accessors for the same. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/Kconfig| 10 ++ drivers/rpmsg/Makefile | 1 + drivers/rpmsg/qcom_glink_smem.c | 304 +++ include/linux/rpmsg

[PATCH 05/18] rpmsg: glink: Allow unaligned data access

2017-08-16 Thread Sricharan R
dingly, effectively removing the alignment restriction. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 6 -- drivers/rpmsg/qcom_glink_rpm.c| 22 +- 2

[PATCH 05/18] rpmsg: glink: Allow unaligned data access

2017-08-16 Thread Sricharan R
the alignment restriction. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_native.c | 6 -- drivers/rpmsg/qcom_glink_rpm.c| 22 +- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_native.c b

[PATCH 14/18] rpmsg: glink: Add announce_create ops and preallocate intents

2017-08-16 Thread Sricharan R
the rpmsg device gets probed. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> --- drivers/rpmsg/qcom_glink_native.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/rpmsg/qcom_glink_native.c b/d

[PATCH 14/18] rpmsg: glink: Add announce_create ops and preallocate intents

2017-08-16 Thread Sricharan R
the rpmsg device gets probed. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c index b8db74a..c111046 100644

[PATCH 09/18] rpmsg: glink: Fix idr_lock from mutex to spinlock

2017-08-16 Thread Sricharan R
The channel members lcids, rcids synchronised using the idr_lock is accessed in both atomic/non-atomic contexts. The readers are not currently synchronised. That no correct, so add the readers as well under the lock and use a spinlock. Signed-off-by: Sricharan R <sricha...@codeaurora.org>

[PATCH 09/18] rpmsg: glink: Fix idr_lock from mutex to spinlock

2017-08-16 Thread Sricharan R
The channel members lcids, rcids synchronised using the idr_lock is accessed in both atomic/non-atomic contexts. The readers are not currently synchronised. That no correct, so add the readers as well under the lock and use a spinlock. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson

[PATCH 16/18] rpmsg: glink: Use the intents passed by remote

2017-08-16 Thread Sricharan R
While sending data, use the remote intent id buffer of suitable size that was passed by remote previously. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> --- drivers/rpmsg/qcom_glink_n

[PATCH 12/18] rpmsg: glink: Make RX FIFO peak accessor to take an offset

2017-08-16 Thread Sricharan R
gether, simplifying things. So introduce this. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 15 +++ drivers/rpmsg/qcom_glink_native.h | 2 +- drivers/rpmsg/qcom_g

[PATCH 16/18] rpmsg: glink: Use the intents passed by remote

2017-08-16 Thread Sricharan R
While sending data, use the remote intent id buffer of suitable size that was passed by remote previously. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 35 +-- 1 file changed, 33 insertions(+), 2 deletions

[PATCH 12/18] rpmsg: glink: Make RX FIFO peak accessor to take an offset

2017-08-16 Thread Sricharan R
introduce this. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_native.c | 15 +++ drivers/rpmsg/qcom_glink_native.h | 2 +- drivers/rpmsg/qcom_glink_rpm.c| 5 - drivers/rpmsg/qcom_glink_smem.c | 5 - 4 files changed, 16 insertions

[PATCH 17/18] rpmsg: glink: Request for intents when unavailable

2017-08-16 Thread Sricharan R
While sending data, we search for suitable sized intent to map and simply fail if a intent is not found. Instead request for a intent of required size and wait till one is alloted. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@l

[PATCH 17/18] rpmsg: glink: Request for intents when unavailable

2017-08-16 Thread Sricharan R
While sending data, we search for suitable sized intent to map and simply fail if a intent is not found. Instead request for a intent of required size and wait till one is alloted. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 73

[PATCH 11/18] rpmsg: glink: Use the local intents when receiving data

2017-08-16 Thread Sricharan R
So previously on request from remote side, we allocated local intent buffers and passed the ids to the remote. Now when we receive data buffers from remote directed to that intent id, copy the data to the corresponding preallocated intent buffer. Signed-off-by: Sricharan R <sri

[PATCH 11/18] rpmsg: glink: Use the local intents when receiving data

2017-08-16 Thread Sricharan R
So previously on request from remote side, we allocated local intent buffers and passed the ids to the remote. Now when we receive data buffers from remote directed to that intent id, copy the data to the corresponding preallocated intent buffer. Signed-off-by: Sricharan R Signed-off-by: Bjorn

[PATCH 10/18] rpmsg: glink: Add support for TX intents

2017-08-16 Thread Sricharan R
allocate buffers of requested size, store the buffer id locally and also communicate the intent id to the remote. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> --- drivers/rpmsg/qcom_glink_na

[PATCH 10/18] rpmsg: glink: Add support for TX intents

2017-08-16 Thread Sricharan R
allocate buffers of requested size, store the buffer id locally and also communicate the intent id to the remote. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 161 +- drivers/rpmsg/qcom_glink_native.h | 3

[PATCH 18/18] rpmsg: glink: Handle remote rx done command

2017-08-16 Thread Sricharan R
Once the remote side sends a rx done ack, check for the intent reuse information from it and suitably discard or reuse the remote passed intent buffers. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> --- d

[PATCH 18/18] rpmsg: glink: Handle remote rx done command

2017-08-16 Thread Sricharan R
Once the remote side sends a rx done ack, check for the intent reuse information from it and suitably discard or reuse the remote passed intent buffers. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 42

[PATCH 15/18] rpmsg: glink: Receive and store the remote intent buffers

2017-08-16 Thread Sricharan R
Just like we allocating and sending intent ids to remote, remote side allocates and sends us the intents as well. So save the intent ids and use it later while sending data targeting the appropriate intents based on the size. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Sign

[PATCH 15/18] rpmsg: glink: Receive and store the remote intent buffers

2017-08-16 Thread Sricharan R
Just like we allocating and sending intent ids to remote, remote side allocates and sends us the intents as well. So save the intent ids and use it later while sending data targeting the appropriate intents based on the size. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson

[PATCH 13/18] rpmsg: glink: Add rx done command

2017-08-16 Thread Sricharan R
Send RX data receive ack to remote and also inform that local intent buffer is used and freed. This informs the remote to request for next set of intent buffers before doing a send operation. Signed-off-by: Sricharan R <sricha...@codeaurora.org> Signed-off-by: Bjorn Andersson <bjo

[PATCH 13/18] rpmsg: glink: Add rx done command

2017-08-16 Thread Sricharan R
Send RX data receive ack to remote and also inform that local intent buffer is used and freed. This informs the remote to request for next set of intent buffers before doing a send operation. Signed-off-by: Sricharan R Signed-off-by: Bjorn Andersson --- drivers/rpmsg/qcom_glink_native.c | 83

[PATCH 07/18] rpmsg: glink: Fix default case while handling received commands

2017-08-16 Thread Sricharan R
Currently if we receive a command that we still do not support, then its simply discarded. While doing so, the RX FIFO pointer also needs to be incremented. Fixing this. Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 1 + 1 file changed, 1 ins

[PATCH 07/18] rpmsg: glink: Fix default case while handling received commands

2017-08-16 Thread Sricharan R
Currently if we receive a command that we still do not support, then its simply discarded. While doing so, the RX FIFO pointer also needs to be incremented. Fixing this. Signed-off-by: Sricharan R --- drivers/rpmsg/qcom_glink_native.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers

[PATCH 04/18] rpmsg: glink: Move the common glink protocol implementation to glink_native.c

2017-08-16 Thread Sricharan R
From: Bjorn Andersson <bjorn.anders...@linaro.org> Move the common part of glink core protocol implementation to glink_native.c that can be shared with the smem based glink transport in the later patches. Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> Signed-off-by:

[PATCH 04/18] rpmsg: glink: Move the common glink protocol implementation to glink_native.c

2017-08-16 Thread Sricharan R
From: Bjorn Andersson Move the common part of glink core protocol implementation to glink_native.c that can be shared with the smem based glink transport in the later patches. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg/Kconfig |6 +- drivers

[PATCH 01/18] rpmsg: glink: Rename glink_rpm_xx functions to qcom_glink_xx

2017-08-16 Thread Sricharan R
rn.anders...@linaro.org> Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/rpmsg/qcom_glink_rpm.c | 248 + 1 file changed, 128 insertions(+), 120 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_rpm.c b/drivers/rpmsg/qcom_glink_rpm.c inde

[PATCH 00/18] rpmsg: glink: Add glink smem based transport

2017-08-16 Thread Sricharan R
: Introduce glink smem based transport rpmsg: glink: Make RX FIFO peak accessor to take an offset Sricharan R (11): rpmsg: glink: Fix default case while handling received commands rpmsg: glink: Add support for transport version negotiation rpmsg: glink: Fix idr_lock from mutex to spinlock

[PATCH 01/18] rpmsg: glink: Rename glink_rpm_xx functions to qcom_glink_xx

2017-08-16 Thread Sricharan R
From: Bjorn Andersson Renaming the glink_rpm_xx functions and structs to qcom_glink_xx equivalents helps to reuse the core glink protocol while adding support for smem based glink transport in the later patches. Signed-off-by: Bjorn Andersson Signed-off-by: Sricharan R --- drivers/rpmsg

[PATCH 00/18] rpmsg: glink: Add glink smem based transport

2017-08-16 Thread Sricharan R
: Introduce glink smem based transport rpmsg: glink: Make RX FIFO peak accessor to take an offset Sricharan R (11): rpmsg: glink: Fix default case while handling received commands rpmsg: glink: Add support for transport version negotiation rpmsg: glink: Fix idr_lock from mutex to spinlock

[PATCH 00/18] rpmsg: glink: Add glink smem based transport

2017-08-16 Thread Sricharan R
: Introduce glink smem based transport rpmsg: glink: Make RX FIFO peak accessor to take an offset Sricharan R (11): rpmsg: glink: Fix default case while handling received commands rpmsg: glink: Add support for transport version negotiation rpmsg: glink: Fix idr_lock from mutex to spinlock

[PATCH 00/18] rpmsg: glink: Add glink smem based transport

2017-08-16 Thread Sricharan R
: Introduce glink smem based transport rpmsg: glink: Make RX FIFO peak accessor to take an offset Sricharan R (11): rpmsg: glink: Fix default case while handling received commands rpmsg: glink: Add support for transport version negotiation rpmsg: glink: Fix idr_lock from mutex to spinlock

Re: [PATCH v2] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-09 Thread Sricharan R
Hi Abhishek, On 8/9/2017 7:48 PM, Abhishek Sahu wrote: > On 2017-08-03 18:51, Sricharan R wrote: >> The bam dmaengine has a circular FIFO to which we >> add hw descriptors that describes the transaction. >> The FIFO has space for about 4096 hw descriptors. >> >>

Re: [PATCH v2] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-09 Thread Sricharan R
Hi Abhishek, On 8/9/2017 7:48 PM, Abhishek Sahu wrote: > On 2017-08-03 18:51, Sricharan R wrote: >> The bam dmaengine has a circular FIFO to which we >> add hw descriptors that describes the transaction. >> The FIFO has space for about 4096 hw descriptors. >> >>

[PATCH v2] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-03 Thread Sricharan R
dma interrupts (after tests): 58806 Signed-off-by: Sricharan R <sricha...@codeaurora.org> --- drivers/dma/qcom/bam_dma.c | 202 + 1 file changed, 129 insertions(+), 73 deletions(-) diff --git a/drivers/dma/qcom/bam_dma.c b/drivers/dma/qcom/bam

[PATCH v2] dmaengine: qcom-bam: Process multiple pending descriptors

2017-08-03 Thread Sricharan R
dma interrupts (after tests): 58806 Signed-off-by: Sricharan R --- drivers/dma/qcom/bam_dma.c | 202 + 1 file changed, 129 insertions(+), 73 deletions(-) diff --git a/drivers/dma/qcom/bam_dma.c b/drivers/dma/qcom/bam_dma.c index 6d89fb6..9e92d7c 100644

Re: [PATCH 2/3] drivers: remoteproc: Add Hexagon Q6 - WCSS integrated core driver

2017-07-31 Thread Sricharan R
Hi Bjorn, On 7/27/2017 12:38 AM, Bjorn Andersson wrote: > On Thu 29 Jun 07:17 PDT 2017, Sricharan R wrote: > >> IPQ8074 has an integrated Hexagon dsp core Q6v5 and a wireless lan >> (Lithium) IP. This patch adds the remoteproc driver to reset, load >&

Re: [PATCH 2/3] drivers: remoteproc: Add Hexagon Q6 - WCSS integrated core driver

2017-07-31 Thread Sricharan R
Hi Bjorn, On 7/27/2017 12:38 AM, Bjorn Andersson wrote: > On Thu 29 Jun 07:17 PDT 2017, Sricharan R wrote: > >> IPQ8074 has an integrated Hexagon dsp core Q6v5 and a wireless lan >> (Lithium) IP. This patch adds the remoteproc driver to reset, load >&

Re: [PATCH 1/3] drivers: remoteproc: Make mdt_loader firmware authentication optional

2017-07-28 Thread Sricharan R
Hi Bjorn, Thanks for the review ! On 7/26/2017 11:41 PM, Bjorn Andersson wrote: > On Thu 29 Jun 07:17 PDT 2017, Sricharan R wrote: > >> qcom_mdt_load function loads the mdt type firmware and >> authenticates it as well. Make the authentication only >> when req

Re: [PATCH 1/3] drivers: remoteproc: Make mdt_loader firmware authentication optional

2017-07-28 Thread Sricharan R
Hi Bjorn, Thanks for the review ! On 7/26/2017 11:41 PM, Bjorn Andersson wrote: > On Thu 29 Jun 07:17 PDT 2017, Sricharan R wrote: > >> qcom_mdt_load function loads the mdt type firmware and >> authenticates it as well. Make the authentication only >> when req

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-17 Thread Sricharan R
Hi, On 7/17/2017 5:16 PM, Sricharan R wrote: > Hi, > > On 7/15/2017 1:09 AM, Rob Clark wrote: >> On Fri, Jul 14, 2017 at 3:36 PM, Will Deacon <will.dea...@arm.com> wrote: >>> On Fri, Jul 14, 2017 at 03:34:42PM -0400, Rob Clark wrote: >>>> On Fri, Jul

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-17 Thread Sricharan R
Hi, On 7/17/2017 5:16 PM, Sricharan R wrote: > Hi, > > On 7/15/2017 1:09 AM, Rob Clark wrote: >> On Fri, Jul 14, 2017 at 3:36 PM, Will Deacon wrote: >>> On Fri, Jul 14, 2017 at 03:34:42PM -0400, Rob Clark wrote: >>>> On Fri, Jul 14, 2017 at 3:01 PM, Will

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-17 Thread Sricharan R
2017 at 1:07 PM, Will Deacon <will.dea...@arm.com> >>>>>>> wrote: >>>>>>>> On Thu, Jul 13, 2017 at 10:55:10AM -0400, Rob Clark wrote: >>>>>>>>> On Thu, Jul 13, 2017 at 9:53 AM, Sricharan R >>>>&

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-17 Thread Sricharan R
Rob Clark wrote: >>>>> On Fri, Jul 14, 2017 at 2:06 PM, Will Deacon wrote: >>>>>> On Fri, Jul 14, 2017 at 01:42:13PM -0400, Rob Clark wrote: >>>>>>> On Fri, Jul 14, 2017 at 1:07 PM, Will Deacon >>>>>>> wrote: >>>>

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-13 Thread Sricharan R
Hi, On 7/13/2017 5:20 PM, Rob Clark wrote: > On Thu, Jul 13, 2017 at 1:35 AM, Sricharan R <sricha...@codeaurora.org> wrote: >> Hi Vivek, >> >> On 7/13/2017 10:43 AM, Vivek Gautam wrote: >>> Hi Stephen, >>> >>> >>> On 07/13/2017

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-13 Thread Sricharan R
Hi, On 7/13/2017 5:20 PM, Rob Clark wrote: > On Thu, Jul 13, 2017 at 1:35 AM, Sricharan R wrote: >> Hi Vivek, >> >> On 7/13/2017 10:43 AM, Vivek Gautam wrote: >>> Hi Stephen, >>> >>> >>> On 07/13/2017 04:24 AM, Stephen Boyd wrote: >

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-12 Thread Sricharan R
gt; > Looks like we don't need locks here anymore? Apart from the locking, wonder why a explicit pm_runtime is needed from unmap. Somehow looks like some path in the master using that should have enabled the pm ? Regards, Sricharan -- "QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus

Re: [PATCH V4 3/6] iommu/arm-smmu: Invoke pm_runtime during probe, add/remove device

2017-07-12 Thread Sricharan R
gt; > Looks like we don't need locks here anymore? Apart from the locking, wonder why a explicit pm_runtime is needed from unmap. Somehow looks like some path in the master using that should have enabled the pm ? Regards, Sricharan -- "QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus

Re: [PATCH 10/14] qcom: mtd: nand: support for QPIC Page read/write

2017-07-10 Thread Sricharan R
this patch be patch #8 and then add other support ? Regards, Sricharan > Signed-off-by: Abhishek Sahu <abs...@codeaurora.org> > --- > drivers/mtd/nand/qcom_nandc.c | 190 > +++--- > 1 file changed, 180 insertions(+), 10 deletions(-) >

Re: [PATCH 10/14] qcom: mtd: nand: support for QPIC Page read/write

2017-07-10 Thread Sricharan R
this patch be patch #8 and then add other support ? Regards, Sricharan > Signed-off-by: Abhishek Sahu > --- > drivers/mtd/nand/qcom_nandc.c | 190 > +++--- > 1 file changed, 180 insertions(+), 10 deletions(-) > > diff --git a/driver

Re: [PATCH 09/14] qcom: mtd: nand: BAM support for read page

2017-07-10 Thread Sricharan R
I'm wrong somewhere. > Even here as well, if we have different function pointers for config_bam_cw_read and config_cw_read for bam, adm, we can still share code with helpers and have only the difference populated in to those functions, reducing the if (bam_dma_enabled) ch

Re: [PATCH 09/14] qcom: mtd: nand: BAM support for read page

2017-07-10 Thread Sricharan R
nk these should be called config_qpic_page_read() and > config_qpic_cw_read() since it seems more of a property of the NAND controller > rather than the underlying DMA engine. If so, config_cw_read() can be called > config_cw_ebi2_read(). Please correct me if I'm wrong somewhere. > Eve

Re: [PATCH 07/14] qcom: mtd: nand: support for passing flags in transfer functions

2017-07-10 Thread Sricharan R
> config_cw_read() > { > union nand_dma_props dma_props; > ... > ... > > if (is_bam) > dma_props.bam_flags = NAND_BAM_NWD; > else > dma_props.adm_flow_control = false; > > write_reg_dma(nandc, NAND_EXEC_CMD, 1, _props); &

Re: [PATCH 07/14] qcom: mtd: nand: support for passing flags in transfer functions

2017-07-10 Thread Sricharan R
() > { > union nand_dma_props dma_props; > ... > ... > > if (is_bam) > dma_props.bam_flags = NAND_BAM_NWD; > else > dma_props.adm_flow_control = false; > > write_reg_dma(nandc, NAND_EXEC_CMD, 1, _props); > ... > ... &

Re: [PATCH 3/3] dt-binding: remoteproc: Add the bindings required for Q6 - WCSS core

2017-07-07 Thread Sricharan R
Hi Rob, Thanks for the review. On 7/7/2017 7:17 PM, Rob Herring wrote: > On Thu, Jun 29, 2017 at 07:47:41PM +0530, Sricharan R wrote: >> IPQ8074 has an integrated Q6V5 Hexagon dsp - Lithium Wlan (WCSS) core. >> This patch adds the required bindings to load, boot, shutdown tha

Re: [PATCH 3/3] dt-binding: remoteproc: Add the bindings required for Q6 - WCSS core

2017-07-07 Thread Sricharan R
Hi Rob, Thanks for the review. On 7/7/2017 7:17 PM, Rob Herring wrote: > On Thu, Jun 29, 2017 at 07:47:41PM +0530, Sricharan R wrote: >> IPQ8074 has an integrated Q6V5 Hexagon dsp - Lithium Wlan (WCSS) core. >> This patch adds the required bindings to load, boot, shutdown tha

Re: [PATCH 05/14] qcom: mtd: nand: allocate bam transaction

2017-07-03 Thread Sricharan R
> qcom_nand_controller *nandc) > if (list_empty(>host_list)) > return -ENODEV; > > + if (nandc->dma_bam_enabled) { > + free_bam_transaction(nandc); > + nandc->bam_txn = alloc_bam_transaction(nandc, > +

<    5   6   7   8   9   10   11   12   13   14   >