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

Commit 283b0802 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: pcie: make PCIe DRV L1ss timeout configurable in devicetree"

parents c511abcf 2955ad34
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -5936,12 +5936,22 @@ static int msm_pcie_setup_drv(struct msm_pcie_dev_t *pcie_dev,
	struct msm_pcie_drv_msg *msg;
	struct msm_pcie_drv_tre *pkt;
	struct msm_pcie_drv_header *hdr;
	u32 drv_l1ss_timeout_us = 0;
	int ret;

	drv_info = devm_kzalloc(&pcie_dev->pdev->dev, sizeof(*drv_info),
				GFP_KERNEL);
	if (!drv_info)
		return -ENOMEM;

	ret = of_property_read_u32(of_node, "qcom,drv-l1ss-timeout-us",
					&drv_l1ss_timeout_us);
	if (ret)
		drv_l1ss_timeout_us = L1SS_TIMEOUT_US;

	PCIE_DBG(pcie_dev, "PCIe: RC%d: DRV L1ss timeout: %dus\n",
		pcie_dev->rc_idx, drv_l1ss_timeout_us);

	drv_info->dev_id = pcie_dev->rc_idx;

	/* cache frequent command for communication */
@@ -5956,7 +5966,7 @@ static int msm_pcie_setup_drv(struct msm_pcie_dev_t *pcie_dev,

	pkt->dword[0] = MSM_PCIE_DRV_CMD_ENABLE;
	pkt->dword[1] = hdr->dev_id;
	pkt->dword[2] = L1SS_TIMEOUT_US / 1000;
	pkt->dword[2] = drv_l1ss_timeout_us / 1000;

	msg = &drv_info->drv_disable;
	pkt = &msg->pkt;