Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2796402 authored by Manu Gautam's avatar Manu Gautam Committed by Hemant Kumar
Browse files

mhi: core: Add checks for bhi and bhie offsets



Bail out if device returns invalid bhi/bhie offsets.

Change-Id: Ifc92c53a4c1f7c951721cbec0b1d7285cf19cd72
Signed-off-by: default avatarManu Gautam <mgautam@codeaurora.org>
parent 775e234a
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -968,6 +968,13 @@ int mhi_async_power_up(struct mhi_controller *mhi_cntrl)
		goto error_bhi_offset;
	}

	if (val >= mhi_cntrl->len) {
		ret = -ENODEV;
		write_unlock_irq(&mhi_cntrl->pm_lock);
		MHI_ERR("Invalid bhi offset:%x\n", val);
		goto error_bhi_offset;
	}

	mhi_cntrl->bhi = mhi_cntrl->regs + val;

	/* setup bhie offset if not set */
@@ -979,6 +986,13 @@ int mhi_async_power_up(struct mhi_controller *mhi_cntrl)
			goto error_bhi_offset;
		}

		if (val >= mhi_cntrl->len) {
			ret = -ENODEV;
			write_unlock_irq(&mhi_cntrl->pm_lock);
			MHI_ERR("Invalid bhie offset:%x\n", val);
			goto error_bhi_offset;
		}

		mhi_cntrl->bhie = mhi_cntrl->regs + val;
	}