If we blindly use such values, we
may access invalid data or crash if the values are corrupted.
If validation fails, drop the relevant event.
Signed-off-by: Jeffrey Hugo
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Found
use
MHI. This also helps controllers fail early on during preparation
phase in some failure cases.
Signed-off-by: Bhaumik Bhatt
---
This patch was tested on arm64 architecture.
Change looks good as current MHI controllers ath11k and pci generic are
not using pre_init.
Reviewed-by: Hemant Kumar
occurred so let's
silence it by making sure the device hits the ready state before the host
completes its reset processing.
Signed-off-by: Jeffrey Hugo
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
client drivers to clean
up once device enters mission mode.
Signed-off-by: Bhaumik Bhatt
It make sense to clean up previous execution env related resources.
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative
On 2/17/21 8:26 AM, Jeffrey Hugo wrote:
From: Fan Wu
Currently ENOMEM is returned when MHI ring is full. This error code is
very misleading. Change to EAGAIN instead.
Signed-off-by: Fan Wu
Signed-off-by: Jeffrey Hugo
---
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc
eviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
environments.
[..]
Thanks,
Hemant
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
or monitor debug logs for memory allocations or power management,
the device can be powered up asynchronously.
[..]
Thanks,
Hemant
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
.
Signed-off-by: Bhaumik Bhatt
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
!mhi_chan->offload_ch)
mhi_deinit_chan_ctxt(mhi_cntrl, mhi_chan);
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
/Software/libqmi/ for additional information
on libqmi.
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Jeffrey Hugo
Tested-by: Loic Poulain
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
---
Documentation/mhi/index.rst
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
e.
- Addressed style related review comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (3):
bus: mhi: core: Move MHI_MAX_MTU to external header file
docs: A
e.
- Addressed style related review comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (3):
bus: mhi: core: Move MHI_MAX_MTU to external header file
docs: A
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
---
Documentation/mhi/index.rst
/Software/libqmi/ for additional information
on libqmi.
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Jeffrey Hugo
Tested-by: Loic Poulain
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664
into use after free.
Hemant Kumar (3):
bus: mhi: core: Move MHI_MAX_MTU to external header file
docs: Add documentation for userspace client interface
bus: mhi: Add userspace client interface driver
Documentation/mhi/index.rst | 1 +
Documentation/mhi/uci.rst | 95 ++
dri
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
---
Documentation/mhi/index.rst
/libqmi/
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Jeffrey Hugo
Tested-by: Loic Poulain
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664 +++
3 files changed, 680
ffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add helper API to return number of free TREs
bus: mhi: core: Move MHI_MAX_MTU to external header file
docs: Add documentation for userspace client interface
bus: mhi: Add userspace client interface driver
Documen
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
---
Documentation/mhi/index.rst
it supports QMI channel.
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Jeffrey Hugo
Tested-by: Loic Poulain
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664 +++
3
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
100644
--- a/include/linux/mhi.h
+++ b/include/linux/mhi.h
@@ -442,6 +442,7 @@ struct mhi_controller {
bool fbc_download;
bool pre_init;
bool wake_set;
+ unsigned long irq_flags;
};
/**
Thanks,
Hemant
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
issued.
This would need to be paired with an API that allows resuming the
data transfer activity on channels by use of the START channel
command. Enable this using two new APIs, mhi_start_transfer() and
mhi_stop_transfer().
Signed-off-by: Bhaumik Bhatt
Reviewed-by: Hemant Kumar
--
The Qualcomm
functions which expect a context.
Signed-off-by: Bhaumik Bhatt
---
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
ability to send this command is exposed to clients.
Signed-off-by: Bhaumik Bhatt
---
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
it supports QMI channel.
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Jeffrey Hugo
Tested-by: Loic Poulain
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664 +++
3
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
---
Documentation/mhi/index.rst
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
ed uci ref counting in mhi_uci_open for error case.
- Addressed style related review comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add hel
On 12/3/20 3:45 PM, Jeffrey Hugo wrote:
On 12/3/2020 3:45 PM, Hemant Kumar wrote:
This MHI client driver allows userspace clients to transfer
raw data between MHI device and host using standard file operations.
Driver instantiates UCI device object which is associated to device
file node. UCI
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
---
Documentation/mhi/index.rst
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
it supports QMI channel.
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Jeffrey Hugo
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664 +++
3 files changed, 680
ed uci ref counting in mhi_uci_open for error case.
- Addressed style related review comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add hel
Hi Jeff
On 12/3/20 12:38 PM, jh...@codeaurora.org wrote:
On 2020-12-01 19:59, Hemant Kumar wrote:
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by
: Bhaumik Bhatt
---
Reviewed-by: Hemant Kumar
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
for the channel context and
memory allocated for it on the host.
Signed-off-by: Bhaumik Bhatt
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
specification.
Signed-off-by: Bhaumik Bhatt
---
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
_transfer(struct mhi_device *mhi_dev);
+
+/**
* mhi_poll - Poll for any available data in DL direction
* @mhi_dev: Device associated with the channels
* @budget: # of events to process
Overall change looks good.
Thanks,
Hemant
--
The Qualcomm Innovation Center, Inc. is a member of the C
driver
module is unloaded or a device crash occurs.
Signed-off-by: Bhaumik Bhatt
---
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
cmd_tre->dword[0] = MHI_TRE_CMD_START_DWORD0;
Thanks,
Hemant
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
On 12/2/20 3:40 PM, Bhaumik Bhatt wrote:
The __mhi_unprepare_channel() API does not require the __ prefix.
Get rid of it and make the internal function consistent with the
other function names.
Signed-off-by: Bhaumik Bhatt
Reviewed-by: Manivannan Sadhasivam
Reviewed-by: Hemant Kumar
The
it supports QMI channel.
Signed-off-by: Hemant Kumar
Reviewed-by: Manivannan Sadhasivam
Tested-by: Loic Poulain
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 664 +++
3 files changed, 680 insertions
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/index.rst | 1 +
Documentation/mhi
ted review comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add helper API to return number of free TREs
bus: mhi: core: Move MHI_MAX_MTU t
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
Dec 2020 at 02:16, Hemant Kumar
wrote:
Hi Loic,
On 11/30/20 10:22 AM, Loic Poulain wrote:
On Sat, 28 Nov 2020 at 04:26, Hemant Kumar
wrote:
This MHI client driver allows userspace clients to transfer
raw data between MHI device and host using standard file
operations.
Driver instantiates
Hi Loic,
On 11/30/20 10:22 AM, Loic Poulain wrote:
On Sat, 28 Nov 2020 at 04:26, Hemant Kumar wrote:
This MHI client driver allows userspace clients to transfer
raw data between MHI device and host using standard file operations.
Driver instantiates UCI device object which is associated to
Hi Mani,
On 11/27/20 10:11 PM, Manivannan Sadhasivam wrote:
Hi Hemant,
On Fri, Nov 27, 2020 at 07:26:06PM -0800, Hemant Kumar wrote:
This MHI client driver allows userspace clients to transfer
raw data between MHI device and host using standard file operations.
Driver instantiates UCI device
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add helper API to return number of free TREs
bus: mhi: core: Move MHI_MAX_MTU to
Currently it supports QMI channel.
Signed-off-by: Hemant Kumar
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 665 +++
3 files changed, 681 insertions(+)
create mode 100644 drivers/bus/mhi/uci.c
diff --git
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
QMI MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/index.rst | 1 +
Documentation/mhi
Hi Shuah,
On 11/20/20 7:26 AM, Shuah Khan wrote:
On 11/16/20 3:46 PM, Hemant Kumar wrote:
Loopback test opens the MHI device file node and writes
a data buffer to it. MHI UCI kernel space driver copies
the data and sends it to MHI uplink (Tx) LOOPBACK channel.
MHI device loops back the same
Hi Mani,
On 11/19/20 10:10 PM, Manivannan Sadhasivam wrote:
On Mon, Nov 16, 2020 at 02:46:22PM -0800, Hemant Kumar wrote:
Loopback test opens the MHI device file node and writes
a data buffer to it. MHI UCI kernel space driver copies
the data and sends it to MHI uplink (Tx) LOOPBACK channel
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
against the data sent. Test passes if data
buffer matches between Tx and Rx. Test application performs
open(), poll(), write(), read() and close() file operations.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/uci.rst | 32 +
tools/testing/selftests/Makefile
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
Loopback MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/index.rst | 1 +
Documentation
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
.
Hemant Kumar (5):
bus: mhi: core: Add helper API to return number of free TREs
bus: mhi: core: Move MHI_MAX_MTU to external header file
docs: Add documentation for userspace client interface
bus: mhi: Add userspace client interface driver
selftest: mhi: Add support to test MHI LOOPBACK
Currently it supports LOOPBACK channel.
Signed-off-by: Hemant Kumar
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 3 +
drivers/bus/mhi/uci.c| 667 +++
3 files changed, 683 insertions(+)
create mode 100644 drivers/bus/mhi/uci.c
diff
rt for registering MHI
controllers")
Signed-off-by: carl.yin
Reviewed-by: Bhaumik Bhatt
Reviewed-by: Hemant Kumar
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Hi Mani,
On 10/30/20 3:34 AM, Manivannan Sadhasivam wrote:
Hi Hemant,
On Thu, Oct 29, 2020 at 07:45:46PM -0700, Hemant Kumar wrote:
This MHI client driver allows userspace clients to transfer
raw data between MHI device and host using standard file operations.
Driver instantiates UCI device
Hi Randy,
On 10/29/20 10:48 PM, Randy Dunlap wrote:
On 10/29/20 7:45 PM, Hemant Kumar wrote:
diff --git a/drivers/bus/mhi/Kconfig b/drivers/bus/mhi/Kconfig
index e841c10..476cc55 100644
--- a/drivers/bus/mhi/Kconfig
+++ b/drivers/bus/mhi/Kconfig
@@ -20,3 +20,16 @@ config MHI_BUS_DEBUG
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
Loopback MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/index.rst | 1 +
Documentation
Currently it supports LOOPBACK channel.
Signed-off-by: Hemant Kumar
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 4 +
drivers/bus/mhi/uci.c| 662 +++
3 files changed, 679 insertions(+)
create mode 100644 drivers/bus/mhi/uci.c
diff
.
- Fixed uci ref counting in mhi_uci_open for error case.
- Addressed style related review comments.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
Hi Randy,
On 10/29/20 2:51 PM, Randy Dunlap wrote:
Hi,
On 10/29/20 2:40 PM, Hemant Kumar wrote:
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
Loopback MHI channel is supported
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
Loopback MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/index.rst | 1 +
Documentation
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
Currently it supports LOOPBACK channel.
Signed-off-by: Hemant Kumar
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 4 +
drivers/bus/mhi/uci.c| 662 +++
3 files changed, 679 insertions(+)
create mode 100644 drivers/bus/mhi/uci.c
diff
.
V3: Added documentation for MHI UCI driver.
V2:
- Added mutex lock to prevent multiple readers to access same
- mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add helper API to return number of free TREs
bus: mhi: core: Move MHI_MAX_MTU to external header
gt;> +write_lock_irq(&mhi_cntrl->pm_lock);
>> +cur_state = mhi_tryset_pm_state(mhi_cntrl, MHI_PM_POR);
>> +write_unlock_irq(&mhi_cntrl->pm_lock);
>> +mhi_queue_state_transition(mhi_cntrl,
>> DEV_ST_TRANSITION_PBL);
>> +} else {
>> +mhi_ready_state_transition(mhi_cntrl);
>> +}
Thanks,
Hemant
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
annel name.
I agree with Jeff, why do you need to know the channel id, if you need
to poll for any device node to get created you can try to open the
device node from user space and wait until the device gets opened.
Are you trying to wait for EDL channels to get started using UCI ?
Thanks,
He
Hi Loic,
On 10/26/20 10:34 AM, Loic Poulain wrote:
Hi Hemant,
That looks better IMHO, just small comments on locking.
[..]
+static ssize_t mhi_uci_write(struct file *file,
+ const char __user *buf,
+ size_t count
Hi Jakub,
On 10/26/20 3:56 PM, Jakub Kicinski wrote:
On Mon, 26 Oct 2020 07:38:46 -0600 Jeffrey Hugo wrote:
On 10/25/2020 3:46 PM, Jakub Kicinski wrote:
On Fri, 23 Oct 2020 16:17:54 -0700 Hemant Kumar wrote:
+UCI driver enables userspace clients to communicate to external MHI devices
+like
On 10/26/20 6:56 AM, Jeffrey Hugo wrote:
On 10/26/2020 7:46 AM, Dan Williams wrote:
On Mon, 2020-10-26 at 07:38 -0600, Jeffrey Hugo wrote:
On 10/25/2020 3:46 PM, Jakub Kicinski wrote:
On Fri, 23 Oct 2020 16:17:54 -0700 Hemant Kumar wrote:
+UCI driver enables userspace clients to
Device provides the total number of HW channels it supports using MHI
configuration register. Host supported HW channels shall not exceed
that value. In order to make this check, a counter is needed to store
total number of HW channels required by host.
Signed-off-by: Hemant Kumar
---
drivers
-off-by: Hemant Kumar
---
drivers/bus/mhi/core/init.c | 31 +++
drivers/bus/mhi/core/internal.h | 4
2 files changed, 35 insertions(+)
diff --git a/drivers/bus/mhi/core/init.c b/drivers/bus/mhi/core/init.c
index 70fd6af..35a6b1d 100644
--- a/drivers/bus/mhi/core
This change is introduced to make sure device supported hardware event ring,
hardware channels, total number of event rings and total number of channels
match with MHI host controller. In case of a mismatch, driver bails out and
does not move MHI device to M0 from Ready state.
Hemant Kumar (2
Introduce mhi_get_free_desc_count() API to return number
of TREs available to queue buffer. MHI clients can use this
API to know before hand if ring is full without calling queue
API.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus/mhi
Currently this macro is defined in internal MHI header as
a TRE length mask. Moving it to external header allows MHI
client drivers to set this upper bound for the transmit
buffer size.
Signed-off-by: Hemant Kumar
Reviewed-by: Jeffrey Hugo
Reviewed-by: Manivannan Sadhasivam
---
drivers/bus
Currently it supports LOOPBACK channel.
Signed-off-by: Hemant Kumar
---
drivers/bus/mhi/Kconfig | 13 +
drivers/bus/mhi/Makefile | 4 +
drivers/bus/mhi/uci.c| 658 +++
3 files changed, 675 insertions(+)
create mode 100644 drivers/bus/mhi/uci.c
diff
MHI userspace client driver is creating device file node
for user application to perform file operations. File
operations are handled by MHI core driver. Currently
Loopback MHI channel is supported by this driver.
Signed-off-by: Hemant Kumar
---
Documentation/mhi/index.rst | 1 +
Documentation
access same
mhi buffer which can result into use after free.
Hemant Kumar (4):
bus: mhi: core: Add helper API to return number of free TREs
bus: mhi: core: Move MHI_MAX_MTU to external header file
docs: Add documentation for userspace client interface
bus: mhi: Add userspace client interface
Hi Jakub,
On 10/23/20 9:37 AM, Jakub Kicinski wrote:
On Thu, 22 Oct 2020 01:22:34 -0700 Hemant Kumar wrote:
This patch series adds support for UCI driver. UCI driver enables userspace
clients to communicate to external MHI devices like modem and WLAN. UCI driver
probe creates standard
Hi Loic,
On 10/22/20 3:20 AM, Loic Poulain wrote:
Hi Hemant,
A few comments inline.
On Thu, 22 Oct 2020 at 10:22, Hemant Kumar wrote:
This MHI client driver allows userspace clients to transfer
raw data between MHI device and host using standard file operations.
Driver instantiates UCI
1 - 100 of 426 matches
Mail list logo