From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 943C4C433FE for ; Mon, 17 Oct 2022 13:49:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230044AbiJQNtJ (ORCPT ); Mon, 17 Oct 2022 09:49:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43272 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229996AbiJQNtF (ORCPT ); Mon, 17 Oct 2022 09:49:05 -0400 Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0252F58DF7 for ; Mon, 17 Oct 2022 06:49:03 -0700 (PDT) Received: by mail-pl1-x633.google.com with SMTP id c24so10806518pls.9 for ; Mon, 17 Oct 2022 06:49:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Kdalp8f0L1WyfE8iwsIyZD97N2UyllSuIR0TDYyi5RA=; b=ChdqEXysbzPGMXUXcHx9FTSj1SkoY6FSgdidMWv6J8K420r/0/Ni2Sbxa6WADZVUy6 nkPPuphFbcGfZGUTH+LbU3QWC250aIHpxrorZ9sh5ReSulPSiu2xPotiKC+Mr60Xoyx9 lTKK3253b96YecknuBE2ABk+NfPN592u0sEnA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Kdalp8f0L1WyfE8iwsIyZD97N2UyllSuIR0TDYyi5RA=; b=W8AfmpFbRE9odyMe1IPV65lpptqRbooWOV1xIvj3lVfXBikDJMZ+ev8FXHdMFy1tli Tkf6Z68tq9rEAQgZ9MKIVnlbS8T3OanqJjDXL3tBnGTcioUxkWRFN9VqxYGgIItIhpW9 YYreNDK1Ck8mjJeUZey+Z7mUri3nwnoCYRc97Jk/QSwCg8XGTcsZqgXUplvapJs7s2RL DsxHdTUfZXXwKl53T1/SB8hSRgG2lhDVGd3zsr5Je7YWJ2GDIDRJpmTCW+fPHBGrOYKs CBX5kk5MXr5qv0LfQtYgH5kNgUbaY6eoR0xxWEBvSH33whTLGL+qyRcrkjn9qqkCeiCO nZZg== X-Gm-Message-State: ACrzQf1ScmWOxR+N6Wme1R54Dwbtofk8hhY/CcZr01N+vKp4jhY0fgdz Pj2EszBU7Qsy2ZRa7tzcQgr9zgoYj4YCpynB+SWCaA== X-Google-Smtp-Source: AMsMyM5RaU/7tX9JSnbejiUQl8YV/sBu8DEjw4uUYFmmiXkTsmCvZEp/MVFS6CsYgM2Ms8PYDXMSjVdC9eLLpoFPmgk= X-Received: by 2002:a17:903:22c7:b0:185:b0c:e150 with SMTP id y7-20020a17090322c700b001850b0ce150mr12431757plg.138.1666014543010; Mon, 17 Oct 2022 06:49:03 -0700 (PDT) MIME-Version: 1.0 References: <20221012042030.573466-1-hsinyi@chromium.org> In-Reply-To: <20221012042030.573466-1-hsinyi@chromium.org> From: Hsin-Yi Wang Date: Mon, 17 Oct 2022 21:48:37 +0800 Message-ID: Subject: Re: [PATCH v2] drm_bridge: register content protect property To: Douglas Anderson , Sean Paul Cc: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Daniel Vetter , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Oct 12, 2022 at 12:20 PM Hsin-Yi Wang wrote: > > Some bridges are able to update HDCP status from userspace request if > they support HDCP. > > HDCP property is the same as other connector properties that need to be > created after the connecter is initialized and before the connector is > registered. > anx7625 is a user for this. > Signed-off-by: Hsin-Yi Wang > Reported-by: kernel test robot > --- > v2: Fix compile error when config is not set. > --- > drivers/gpu/drm/drm_bridge_connector.c | 3 +++ > include/drm/display/drm_hdcp_helper.h | 8 ++++++++ > 2 files changed, 11 insertions(+) > > diff --git a/drivers/gpu/drm/drm_bridge_connector.c b/drivers/gpu/drm/drm_bridge_connector.c > index 1c7d936523df5..a3b9ef8dc3f0b 100644 > --- a/drivers/gpu/drm/drm_bridge_connector.c > +++ b/drivers/gpu/drm/drm_bridge_connector.c > @@ -7,6 +7,7 @@ > #include > #include > > +#include > #include > #include > #include > @@ -398,6 +399,8 @@ struct drm_connector *drm_bridge_connector_init(struct drm_device *drm, > if (panel_bridge) > drm_panel_bridge_set_orientation(connector, panel_bridge); > > + drm_connector_attach_content_protection_property(connector, true); > + > return connector; > } > EXPORT_SYMBOL_GPL(drm_bridge_connector_init); > diff --git a/include/drm/display/drm_hdcp_helper.h b/include/drm/display/drm_hdcp_helper.h > index 8aaf87bf27351..c65d9f06a2532 100644 > --- a/include/drm/display/drm_hdcp_helper.h > +++ b/include/drm/display/drm_hdcp_helper.h > @@ -15,8 +15,16 @@ struct drm_device; > struct drm_connector; > > int drm_hdcp_check_ksvs_revoked(struct drm_device *dev, u8 *ksvs, u32 ksv_count); > +#if defined(CONFIG_DRM_DISPLAY_HDCP_HELPER) > int drm_connector_attach_content_protection_property(struct drm_connector *connector, > bool hdcp_content_type); > +#else > +static inline int drm_connector_attach_content_protection_property(struct drm_connector *connector, > + bool hdcp_content_type) > +{ > + return 0; > +} > +#endif > void drm_hdcp_update_content_protection(struct drm_connector *connector, u64 val); > > #endif > -- > 2.38.0.rc1.362.ged0d419d3c-goog >