From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 75BE0243376; Wed, 25 Feb 2026 01:31:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771983113; cv=none; b=kHF2pW/nbtqJA10yQuOhzyi32krQQUSqyEoq5hDc0WxQ5+1lacCeOyZmCurX8bQzgxmRsmBr7eQqJFINJJ1CcL6QX2YXKP3zMIskRYQaYqYVqvHM78CK87aYSJrU2KjD3IjDYn6Eyib5/OrPUcEmEJrPaUafYAQ8vZC9vNpCFWc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771983113; c=relaxed/simple; bh=/QJ1ShtkSCjQ9d10CSIWnp1s+FP8NAd0cTDCTFB+erE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Y2ueYsuXNqTGQk8NezRXUGJ4me69KGBRaNhamXgmMUlsjcRp2q3wtTO0p/Hv5w81fYHfkL/R4niiEPxUc1NULZHJCoWP9Q7RiIdxgQ6ZFcja8pZIBwS3+fafXrD95YHCxKK/LWcqZD8GQQTbvMoXt5zcO8J8A3k68DkBoHNzH1Y= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=BycyypXW; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="BycyypXW" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 29CC8C116D0; Wed, 25 Feb 2026 01:31:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1771983113; bh=/QJ1ShtkSCjQ9d10CSIWnp1s+FP8NAd0cTDCTFB+erE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BycyypXWaMfLL1c+Ki3rVnZvwlBM4Jfx7aAs0R4B62Af42Ty871rEPZfxxvrAiUQb PGtlm4qSKAj8jAdojpBlzGhPU3CiWb0qxYzV2niHP4oZTSPZS8MDjiJWZ1fY+/5QCO KZCtXSlgOZ72nKe6dIPKpck/ph7ZXVBG9eLki/M8= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Baihan Li , Yongbang Shi , Dmitry Baryshkov , Tao Tian , Sasha Levin Subject: [PATCH 6.19 273/781] drm/hisilicon/hibmc: fix no showing problem with loading hibmc manually Date: Tue, 24 Feb 2026 17:16:22 -0800 Message-ID: <20260225012406.392841036@linuxfoundation.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260225012359.695468795@linuxfoundation.org> References: <20260225012359.695468795@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.19-stable review patch. If anyone has any objections, please let me know. ------------------ From: Baihan Li [ Upstream commit 0607052a6aee1e3d218a99fae70ba9f14b3b47ed ] When using command rmmod and insmod, there is no showing in second time insmoding. Because DP controller won't send HPD signals, if connection doesn't change or controller isn't reset. So add reset before unreset in hibmc_dp_hw_init(). And also need to move the HDCP cfg after DP controller de-resets, so that HDCP configuration takes effect. Fixes: 3c7623fb5bb6 ("drm/hisilicon/hibmc: Enable this hot plug detect of irq feature") Signed-off-by: Baihan Li Signed-off-by: Yongbang Shi Reviewed-by: Dmitry Baryshkov Reviewed-by: Tao Tian Link: https://patch.msgid.link/20251210023759.3944834-4-shiyongbang@huawei.com Signed-off-by: Dmitry Baryshkov Signed-off-by: Sasha Levin --- drivers/gpu/drm/hisilicon/hibmc/dp/dp_hw.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/hisilicon/hibmc/dp/dp_hw.c b/drivers/gpu/drm/hisilicon/hibmc/dp/dp_hw.c index 37549dafa06ca..8f8ca940b6b26 100644 --- a/drivers/gpu/drm/hisilicon/hibmc/dp/dp_hw.c +++ b/drivers/gpu/drm/hisilicon/hibmc/dp/dp_hw.c @@ -177,13 +177,16 @@ int hibmc_dp_hw_init(struct hibmc_dp *dp) dp_dev->link.cap.lanes = 0x2; dp_dev->link.cap.link_rate = DP_LINK_BW_8_1; - /* hdcp data */ - writel(HIBMC_DP_HDCP, dp_dev->base + HIBMC_DP_HDCP_CFG); /* int init */ writel(0, dp_dev->base + HIBMC_DP_INTR_ENABLE); writel(HIBMC_DP_INT_RST, dp_dev->base + HIBMC_DP_INTR_ORIGINAL_STATUS); /* rst */ + writel(0, dp_dev->base + HIBMC_DP_DPTX_RST_CTRL); + usleep_range(30, 50); + /* de-rst */ writel(HIBMC_DP_DPTX_RST, dp_dev->base + HIBMC_DP_DPTX_RST_CTRL); + /* hdcp data */ + writel(HIBMC_DP_HDCP, dp_dev->base + HIBMC_DP_HDCP_CFG); /* clock enable */ writel(HIBMC_DP_CLK_EN, dp_dev->base + HIBMC_DP_DPTX_CLK_CTRL); -- 2.51.0