| From 802340a7b731846d4335fdcc961a88a820c3c001 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 9 Aug 2021 09:24:25 +0100 |
| Subject: slimbus: messaging: start transaction ids from 1 instead of zero |
| |
| From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
| |
| [ Upstream commit 9659281ce78de0f15a4aa124da8f7450b1399c09 ] |
| |
| As tid is unsigned its hard to figure out if the tid is valid or |
| invalid. So Start the transaction ids from 1 instead of zero |
| so that we could differentiate between a valid tid and invalid tids |
| |
| This is useful in cases where controller would add a tid for controller |
| specific transfers. |
| |
| Fixes: d3062a210930 ("slimbus: messaging: add slim_alloc/free_txn_tid()") |
| Cc: <stable@vger.kernel.org> |
| Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> |
| Link: https://lore.kernel.org/r/20210809082428.11236-2-srinivas.kandagatla@linaro.org |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/slimbus/messaging.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/slimbus/messaging.c b/drivers/slimbus/messaging.c |
| index d5879142dbef..3b77713f1e3f 100644 |
| --- a/drivers/slimbus/messaging.c |
| +++ b/drivers/slimbus/messaging.c |
| @@ -66,7 +66,7 @@ int slim_alloc_txn_tid(struct slim_controller *ctrl, struct slim_msg_txn *txn) |
| int ret = 0; |
| |
| spin_lock_irqsave(&ctrl->txn_lock, flags); |
| - ret = idr_alloc_cyclic(&ctrl->tid_idr, txn, 0, |
| + ret = idr_alloc_cyclic(&ctrl->tid_idr, txn, 1, |
| SLIM_MAX_TIDS, GFP_ATOMIC); |
| if (ret < 0) { |
| spin_unlock_irqrestore(&ctrl->txn_lock, flags); |
| -- |
| 2.30.2 |
| |