Re: [PATCH v4 3/9] bus: mhi: Match devices exposing the protocol on the SAHARA channel

From: Kishore Batta

Date: Mon Apr 13 2026 - 05:05:11 EST



On 4/10/2026 1:53 AM, Jeff Hugo wrote:
On 3/19/2026 12:31 AM, Kishore Batta wrote:
Some Qualcomm devices expose the Sahara protocol on a generic SAHARA MHI
channel rather than a QAIC specific channel name. As a result, the sahara

"Sahara"

ACK. I will correct in next version.

driver does not currently bind to such devices and never probes.

Extend the MHI device ID match table to also match the SAHARA channel
name. This allows the Sahara protocol driver to bind to devices that
expose the protocol directly on a standard sahara MHI channel.

"Sahara"

ACK. I will correct in next version.


Signed-off-by: Kishore Batta <kishore.batta@xxxxxxxxxxxxxxxx>
---
  drivers/bus/mhi/sahara/sahara.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/drivers/bus/mhi/sahara/sahara.c b/drivers/bus/mhi/sahara/sahara.c
index 8ff7b6425ac5423ef8f32117151dca10397686a8..e3499977e7c6b53bc624a8eb00d0636f2ea63307 100644
--- a/drivers/bus/mhi/sahara/sahara.c
+++ b/drivers/bus/mhi/sahara/sahara.c
@@ -911,8 +911,10 @@ static void sahara_mhi_dl_xfer_cb(struct mhi_device *mhi_dev, struct mhi_result
    static const struct mhi_device_id sahara_mhi_match_table[] = {
      { .chan = "QAIC_SAHARA", },
+    { .chan = "SAHARA"},

This doesn't work and breaks bisect. At this point Sahara will bind to QDU100, ath12k, or something else but not know how to drive one of those devices.

Just add this when you add QDU100 support, which looks to be patch 5.

ACK. I will add this in patch 5.

      {},
  };
+MODULE_DEVICE_TABLE(mhi, sahara_mhi_match_table);
    static struct mhi_driver sahara_mhi_driver = {
      .id_table = sahara_mhi_match_table,